在前天的文章中提到,如果 Proxmox VE 叢集網路使用 Switch 不支援 Multicast 廣播的情況下,加上 Switch 可能因管理者不予更動或其它考量等,將會造成叢集連線問題。
今天將說明如何修改 Proxmox VE 的叢集設定
修改設定
請以文字編輯器開啟 /etc/pve/corosync.conf 檔案。
開啟 corosync.conf 設定檔
請在檔案中找到 totem 相關區塊,並在 totem 區塊裡新增一行設定,並將版本號加一(若原本為 1,請改為 2,依此類推),叢集才會把這次修改視為新的設定,從而複寫到其它節點。
增加 unicast 設定
transport: udpu
增加版本號 (請依您原本的版本號數+1)
config_version: 3
修改完成的設定檔如下:
修改 corosync.conf 設定檔
確認修改完成後,存檔退出,接著將 corosync 與 pve-cluster 服務重啟進行生效。
重啟叢集服務
systemctl restart corosync systemctl restart pve-cluster
結論
使用 UDP-unicast (UDPU,單點傳播) 以後可以解決通訊的問題,但是 unicast 將比 multicast 使用更多的網路流量,導致可以支援的節點數下降,建議不要使用在超過四個節點的叢集。
參考資料
- Multicast notes - Proxmox VE
https://pve.proxmox.com/wiki/Multicast_notes#Use_unicast_.28UDPU.29_instead_of_multicast.2C_if_all_else_fails
- [經驗分享]檢測 Proxmox VE 叢集連線健康狀態
https://blog.jason.tools/2019/01/pve-cluster-omping.html