Cara merancang pelayan VPN yang senyap, cekap tenaga dan sentiasa hidup
Kotak VPN yang senyap dinilai pada watt melahu, bunyi beban kerja dan sama ada ia kekal boleh dicapai. Ukur seluruh sistem dalam tiga keadaan sebelum membeli komponen.
Melahu ialah keadaan tempat kotak VPN rumah menghabiskan hampir seluruh hayatnya, jadi itulah keadaan yang wajar diukur. Mesin yang sama masih perlu menjawab sambungan, menyajikan fail dan menamatkan sandaran semasa terowong naik, dan ketiga-tiga tugas itu menarik ke arah berbeza. Senyap, cekap tenaga dan sentiasa boleh dicapai ialah sifat berasingan, dan helaian spesifikasi tidak menerangkan satu pun daripadanya. Menjalani pemeriksaan di bawah mengikut urutan menghalang keputusan perkakasan daripada menjadi pembinaan semula enam bulan kemudian.
Mulakan dengan peranan, bukan komponen
Tulis setiap tugas yang perlu dilakukan kotak itu semasa tiada siapa memerhati. Gerbang WireGuard atau OpenVPN, perkongsian fail, sasaran sandaran dan tugas pengindeksan mempunyai kos mantap yang berbeza, dan satu mesin yang melakukan keempat-empatnya mempunyai lantai jauh lebih tinggi daripada yang hanya melakukan yang pertama. Penggunaan melahu ialah jumlah lantai itu, bukan puratanya. Itulah sebabnya dua kotak yang kedua-duanya digambarkan cekap tenaga boleh berbeza tiga kali ganda dalam bilik yang sama.
Memutuskan awal sama ada data tinggal pada hos yang sama dengan terowong mengekang segala-galanya. Hos berasingan bermakna dua penggunaan melahu, tetapi gerbang yang kekal jaga semasa storan tidur; satu hos bermakna satu penggunaan dan satu domain kegagalan. Kedua-duanya tidak salah, tetapi jawapannya mesti ditulis sebelum senarai komponen wujud.
Ukur seluruh kotak dalam tiga keadaan
Meter dinding antara soket dan bekalan kuasa ialah satu-satunya alat jujur di sini, kerana ia merangkumi kerugian penukaran, putaran cakera dan setiap peranti USB yang anda lupakan. Catat tiga nombor: melahu dengan terowong naik dan tiada apa-apa lagi berjalan, kotak yang sama di bawah pemindahan jauh sebenar, dan kotak semasa sandaran berjadual.
Kaunter perisian membantu menjelaskan bacaan meter dinding tetapi tidak menggantikannya. Antara muka RAPL melaporkan tenaga pakej dan domain memori, yang mengecualikan kerugian bekalan kuasa dan semua yang disambung melalui USB.
read -r a < /sys/class/powercap/intel-rapl:0/energy_uj; sleep 60; read -r b < /sys/class/powercap/intel-rapl:0/energy_uj
awk -v a="$a" -v b="$b" 'BEGIN{printf "package average: %.1f W\n", (b-a)/60/1000000}'
Bunyi memerlukan layanan yang sama. Sarung tanpa kipas menghilangkan satu sumber dan meninggalkan cakera keras, bekalan kuasa dan dengung gegelung, jadi dengar semasa sandaran dan bukan di gesaan log masuk. Suhu tergolong dalam pusingan yang sama: baca penderia di bawah beban berterusan, dan jangan sekali-kali mematikan perlindungan terma untuk menjadikan kotak lebih senyap.
Tukar watt kepada tahun yang boleh dibandingkan
Penggunaan berterusan bertukar kepada tenaga dengan satu pendaraban, dan melakukannya sekali menghalang kos tahunan daripada menjadi kejutan. Purata ilustratif 11 W sepanjang tahun penuh dikira seperti berikut.
awk 'BEGIN{printf "%.1f kWh/year at 11 W\n", 11*24*365/1000}'
Angka itu ialah aritmetik, bukan ukuran kotak anda, dan tarif yang anda darabkannya menggerakkan jawapan lebih daripada beberapa watt. Kegunaan pengiraan ini ialah membandingkan dua reka bentuk: gerbang melahu pada 6 W berbanding yang pada 15 W ialah keputusan yang boleh anda letakkan harga. Watt kadaran pemproses bukan angka itu, kerana ia menggambarkan pakej di bawah beban dan bukan sistem dalam keadaan rehat. Gunakan purata meter dinding dengan tarif tempatan, dan labelkan hasilnya sebagai anggaran.
Tentukan sama ada tidur dibenarkan
Tidur menjimatkan paling banyak tenaga dan memecahkan paling banyak andaian. Hos yang tidur tidak boleh menerima sambungan masuk yang akan mengejutkannya, dan keepalive klien tidak mengubahnya; hanya peranti yang sentiasa hidup pada LAN yang sama boleh menghantar paket wake-on-LAN.
Jika terowong mesti boleh dicapai pada mana-mana jam, anggap tidur sebagai dilumpuhkan oleh dasar dan tuliskan itu dalam nota pembinaan. Menutup sasaran memang kasar, tetapi ia eksplisit dan bertahan melalui kemas kini pakej lebih baik daripada tabiat.
systemctl status sleep.target suspend.target
sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target
systemd-inhibit --list
Wake-on-LAN wajar mendapat barisnya sendiri dalam nota itu kerana ia gagal secara senyap. Ciri ini mesti didayakan dalam firmware, hanya berfungsi pada sesetengah antara muka, dan memerlukan peranti yang sudah jaga untuk menghantar paket. Ujinya sebelum anda bergantung padanya, bukan selepas perjalanan.
Buktikan di bawah beban yang benar-benar akan dilihatnya
Pemeriksaan terakhir ialah yang orang langkau: jalankan beban yang dimaksudkan dan perhatikan kotak selama satu jam. Pemindahan jauh, sandaran dan pembinaan semula indeks serentak akan menunjukkan sama ada penyejukan, pautan dan storan mampu menanggung gabungan peranan yang anda pilih.
uptime
sensors | grep -E 'Core|Package|fan'
ss -s
Perhatikan juga pautan akses dalam tetingkap yang sama, kerana lebar jalur muat naik biasanya mengehadkan daya pemprosesan jauh lebih awal daripada pemproses. Jika terowong tepu pada pecahan daripada apa yang CPU boleh menyulitkan, cip yang lebih pantas tidak membeli apa-apa pun.