Cara merencanakan server VPN yang senyap, hemat daya, dan selalu menyala
Kotak VPN yang senyap dinilai dari watt saat menganggur, kebisingan beban kerja, dan apakah tetap bisa dijangkau. Ukur seluruh sistem dalam tiga keadaan sebelum membeli komponen.
Keadaan menganggur adalah tempat kotak VPN rumahan menghabiskan hampir seluruh hidupnya, jadi itulah keadaan yang layak diukur. Mesin yang sama tetap harus menjawab koneksi, melayani berkas, dan menuntaskan cadangan saat terowongan menyala, dan ketiga tugas itu menarik ke arah berbeda. Senyap, hemat daya, dan selalu terjangkau adalah sifat yang terpisah, dan lembar spesifikasi tidak menjelaskan satu pun. Mengerjakan pemeriksaan di bawah ini secara berurutan mencegah keputusan perangkat keras berubah menjadi pembangunan ulang enam bulan kemudian.
Mulai dari peran, bukan komponen
Tuliskan setiap tugas yang harus dilakukan kotak itu saat tidak ada yang mengawasi. Gateway WireGuard atau OpenVPN, berbagi berkas, target cadangan, dan tugas pengindeksan punya biaya tunak yang berbeda, dan satu mesin yang mengerjakan keempatnya punya lantai jauh lebih tinggi daripada yang hanya mengerjakan yang pertama. Konsumsi menganggur adalah jumlah dari lantai-lantai itu, bukan rata-ratanya. Itu sebabnya dua kotak yang sama-sama disebut hemat daya bisa berbeda tiga kali lipat di ruangan yang sama.
Memutuskan lebih awal apakah data tinggal di host yang sama dengan terowongan membatasi semua hal lain. Host terpisah berarti dua konsumsi menganggur, tetapi gateway yang tetap bangun saat penyimpanan tidur; satu host berarti satu konsumsi dan satu domain kegagalan. Keduanya tidak salah, tetapi jawabannya harus ditulis sebelum daftar komponen ada.
Ukur seluruh kotak dalam tiga keadaan
Pengukur dinding antara stopkontak dan catu daya adalah satu-satunya alat jujur di sini, karena mencakup kerugian konversi, putaran cakram, dan setiap perangkat USB yang Anda lupakan. Catat tiga angka: menganggur dengan terowongan menyala dan tidak ada hal lain, kotak yang sama di bawah transfer jarak jauh sungguhan, dan kotak selama cadangan terjadwal.
Penghitung perangkat lunak membantu menjelaskan bacaan dinding tetapi tidak menggantikannya. Antarmuka RAPL melaporkan energi paket dan domain memori, yang mengecualikan kerugian catu daya dan semua yang tersambung lewat 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}'
Kebisingan butuh perlakuan yang sama. Casing tanpa kipas menghilangkan satu sumber dan menyisakan cakram keras, catu daya, dan dengung kumparan, jadi dengarkan saat cadangan berjalan, bukan di layar masuk. Suhu termasuk dalam putaran yang sama: baca sensor di bawah beban terus-menerus, dan jangan pernah menonaktifkan perlindungan termal demi kotak yang lebih senyap.
Ubah watt menjadi tahun yang bisa dibandingkan
Konsumsi terus-menerus berubah menjadi energi dengan satu perkalian, dan melakukannya sekali mencegah biaya tahunan menjadi kejutan. Rata-rata ilustratif 11 W sepanjang setahun penuh dihitung seperti ini.
awk 'BEGIN{printf "%.1f kWh/year at 11 W\n", 11*24*365/1000}'
Angka itu aritmetika, bukan pengukuran kotak Anda, dan tarif yang Anda kalikan dengannya menggeser jawaban lebih dari beberapa watt. Kegunaan perhitungan ini adalah membandingkan dua rancangan: gateway yang menganggur pada 6 W melawan yang pada 15 W adalah keputusan yang bisa Anda beri harga. Daya terukur prosesor bukan angka itu, karena menggambarkan paket di bawah beban, bukan sistem yang diam. Gunakan rata-rata pengukur dinding dengan tarif setempat, dan beri label hasilnya sebagai perkiraan.
Putuskan apakah tidur diizinkan
Tidur paling banyak menghemat energi dan paling banyak merusak asumsi. Host yang tidur tidak bisa menerima koneksi masuk yang akan membangunkannya, dan keepalive klien tidak mengubahnya; hanya perangkat yang selalu menyala di LAN yang sama bisa mengirim paket wake-on-LAN.
Jika terowongan harus terjangkau pada jam berapa pun, perlakukan tidur sebagai dinonaktifkan oleh kebijakan dan tuliskan itu di catatan pembangunan. Menutupi target memang kasar, tetapi eksplisit dan bertahan melewati pembaruan paket lebih baik daripada kebiasaan.
systemctl status sleep.target suspend.target
sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target
systemd-inhibit --list
Wake-on-LAN layak mendapat barisnya sendiri dalam catatan itu karena gagal secara senyap. Fitur ini harus diaktifkan di firmware, hanya bekerja pada sebagian antarmuka, dan membutuhkan perangkat yang sudah bangun untuk mengirim paket. Ujilah sebelum Anda bergantung padanya, bukan setelah perjalanan.
Buktikan di bawah beban yang benar-benar akan dilihatnya
Pemeriksaan terakhir adalah yang orang lewati: jalankan beban yang dimaksud dan amati kotak selama satu jam. Transfer jarak jauh, cadangan, dan pembangunan ulang indeks sekaligus akan menunjukkan apakah pendinginan, tautan, dan penyimpanan mampu memikul kombinasi peran yang Anda pilih.
uptime
sensors | grep -E 'Core|Package|fan'
ss -s
Amati juga tautan akses di jendela yang sama, karena lebar pita unggah biasanya membatasi laju jarak jauh jauh sebelum prosesor. Jika terowongan jenuh pada sebagian kecil dari yang bisa dienkripsi CPU, cip yang lebih cepat tidak membeli apa pun.