Saya memiliki pusat data penyimpanan cloud yang menjalankan Ubuntu 16.04 lts dan NextCloud / OwnCloud yang tidak perlu tersedia 24/7, dan membutuhkan solusi manajemen daya. Servernya adalah Dell PowerEdge 1950 Gen II dan Dell PowerEdge 2950 Gen II
Tujuan keseluruhan
Server penyimpanan cloud Hibernasi melewati waktu idle misalnya 20 menit dan telah dinonaktifkan dengan WOL untuk mengurangi 6272,09 kilo karbon dioksida per tahun menjadi 6680kw dari pusat data kami saja, metrik dicapai melalui audit energi terperinci.
Solusi tidak efektif dicoba
Pemandangan
Lansekap di lokasi / tugas cron hanya menawarkan startup dan shutdown terjadwal, sehingga tidak efektif untuk dicapai.
Powernap
powernap sepertinya cara untuk pergi tetapi layanan ini tidak dimulai pada Ubuntu 16.04
XXXXXXX ~ $ sudo status powernap layanan ● powernap.service - PowerNap Dimuat: dimuat (/lib/systemd/system/powernap.service; dinonaktifkan; preset vendor Aktif: tidak aktif (mati)
ponwernap tampaknya menggunakan layanan terdepresiasi seperti layanan network.ser yang tidak lagi tersedia di Ubuntu 16.04
Tujuan yang dapat dicapai
Wake on LAN (WOL)
Mengaktifkan WOL sangat mudah dengan mengikuti pengaturan manual pada tautan ini . atau dengan penggunaan powewake
Hibernasi Server
Sampai sekarang, saya hanya berhasil hibernasi server menggunakan sudo systemctl hibernate
dansudo systemctl hibernate-sleep
- powernap - Saya mengajukan laporan bug untuk menghapus dependensi yang sudah kosong
- systemctl - bisa mengarah ke suatu tempat
- pm-utils - bisa mengarah ke suatu tempat juga
Peningkatan Perangkat Keras
Saya telah memutakhirkan CPU Dell 1950 Gen II dual Xeon E5335 dengan Xeon X5365 CPU. X5365 memungkinkan manajemen daya dan mengatur manajemen daya dari BIOS. Jujur saja, saya tidak mendukung upgrade seperti X5365 mengkonsumsi 70 watt per cpu lebih dari E5335, tetapi melakukan itu mendukung pengujian hibernasi.
Perbarui 1
Pada saat ini pm-utils
adalah satu-satunya cara untuk terlepas dari pengaturan wol
pada nic. Saat ini saya sedang mengeksplorasi konfigurasi optimal untuk membuat power hook untuk pengaturan ac untuk waktu idle.
Tolong ada rekomendasi.
Jawaban:
Saya mengumpulkan skrip kecil yang bisa Anda jalankan dalam cronjob setiap 15 menit atau menggunakan timer sistemd:
Pertama kali mendapatkan jumlah pengguna yang masuk ke sistem dan beban rata-rata selama 15 menit terakhir. Anda harus dapat mengetahui menggunakan sistem rata-rata idle Anda menggunakan
cat /proc/loadavg
. Angka floating point ketiga memberikan rata-rata selama 15 menit terakhir. Nilai ini bermanfaat untuk mendefinisikan ambang yang ditetapkan dalam variabelAvgLoadThresh
. Ini tentu perlu penyetelan. Hal lain yang dapat Anda definisikan adalah seberapa banyak pengguna diizinkan masuk dan sistem melakukan hibernasi. Ini diatur dalamActiveUsersThresh
. Hanya untuk memastikan sistem tidak selalu berhibernasi saat Anda melakukan pemeliharaan atau sesuatu.Saya kira orang bisa datang dengan pemeriksaan yang lebih cerdas, jadi lihat itu sebagai pendekatan sederhana pertama. Sebagai contoh, saya tidak tahu database atau server web mana yang digunakan dalam instalasi cloud Anda sendiri tetapi Anda bisa mencoba menghentikannya dengan anggun sebelum perintah hibernate, sehingga tidak ada yang tiba-tiba kehilangan koneksi.
sumber