PVE 配置Watchdog

PVE 子機總是突然關機? 搜尋資料時看到“Watchdog” 這個關鍵字才知道PVE還可以配置Watchdog自動重新開機。

配置Watchdog

PVE主機操作(母機)

修改Proxmox節點上的虛擬機配置文件」nano /etc/pve/qemu-server/[server_id].conf」並添加虛擬Watchdog設備

watchdog: model=i6300esb,action=reset

當然你也可以使用下面的命令(將[server_id]改成你需要配置的)偷點懶w(選擇一種方式添加了就可以)

echo "watchdog: model=i6300esb,action=reset" >> nano /etc/pve/qemu-server/[server_id].conf
 

虛擬機操作(子機)

以Debian系統示範,其他系統自行替換下包管理器及路徑

1:用apt install watchdog在虛擬機上安裝watchdog

2:配置Watchdog服務,編輯配置文件」nano /etc/watchdog.conf」。

watchdog-device = /dev/watchdog
log-dir =  /var/log/watchdog
realtime = yes
priority = 1
#默认情况下i6300esb在黑名单里,在的话请加上下面这句
watchdog_module = i6300esb

3:設置開機啓動服務 「systemctl enable watchdog」

4:在PVE上 「 Reset」 重啓虛擬機

 

測試

1:檢測watchdog服務是否正常啓動且工作。

進入虛擬機,在虛擬機下執行 」 dmesg | grep i6300 「

會得到類似下面的輸出則說明沒問題

[    4.572286] i6300ESB timer 0000:00:04.0: initialized. heartbeat=30 sec (nowayout=0)

2:模擬一次系統爆炸。

進入虛擬機,在虛擬機下執行」 echo c > /proc/sysrq-trigger 」 (執行完後你的內核便開始害怕了w)

接下來請坐和放寬的去衝杯咖啡(等待大約1分鐘),機器便會自動重啓完成了。

 

其他注意

1:虛擬機內安裝和配置看門狗守護程序。要小心,一些GNU/Linux發行版(例如Ubuntu)將看門狗內核模塊列入黑名單,所以要看一下/etc/modprobe.d/blacklist-watchdog.conf(如果存在)。請把i6300esb從黑名單中刪除,並把它放在/etc/modules中。

2:如果您使用的是 ubuntu 雲映像,這些映像不包括 i6300esb 看門狗內核模塊(這意味著看門狗不會在您的 VM 中啓動)

可以通過下面的方式安裝

apt-get install linux-image-generic
 

参考

https://it-notes.dragas.net/2018/09/16/proxmox-enable-and-use-watchdog-to-reboot-stuck-servers/