RHCS 的cman心跳包能否跑在多塊網卡上?
最近測試RHCS,發現即使有多塊網卡,但是心跳包還是只會跑在一塊網卡上,默認一般是eth0
這樣如果eth0 斷了 cman 就死了 集群也掛了
即使網卡做了bonding,但是如果心跳包網路的交換機掛了,集群同樣會掛。
翻閱了很多文檔,都沒有找到怎樣設置cman 心跳包 通過多塊網卡傳遞。
求高人解答,尤其是 jerrywjl
謝謝!
《解決方案》
心跳包走的原則是你的/etc/hosts的IP地址所在網口,成熟的做法應該是在網卡里做個綁定,然後在/etc/modprobe.conf里指定一個primary網口,剩下的那個就是用來走心跳的了
《解決方案》
我覺得沒必要在modprobe.conf中指。但關於/etc/hosts設置內容是對的。在/etc/hosts中設置的地址/IP對應關係,就是/etc/cluster/cluster.conf中的cluster node name,即所謂的心跳了。
《解決方案》
謝謝兩位回復。但還是都沒有回答我的問題
我所知道的是 心跳包 會根據 uname -n 得到 hostname 然後根據去找/etc/hosts里 hostname 對應的ip 最後心跳包從這個ip的介面上發送
但是我即使在/etc/hosts里設置 兩ip對應一個hostname ,cluster 還是只在一個介面上發送心跳包
例如: /etc/hosts
192.168.100.2 Server2
192.168.200.2 Server2
貌似只有前面的生效
我停掉 192.168.100.2 抓包發現心跳包還在 192.168.100.2 發送
甚至我註釋掉192.168.100.2 Server2 心跳包依舊在 192.168.100.2 發送
我想應該是集群在啟動時讀取/etc/hosts 啟動以後就不會再讀了。
這樣的話 即使 192.168.100.2 是bonding 介面 如果接192.168.100.0網段的交換機掉電 集群也就死亡了
接192.168.200.0網段的交換機斷電 的話 沒有問題 僅僅連接存儲的路徑少了一半而已
這樣,接192.168.100.0網段的交換機就是單點故障
現在我想到的解決辦法是 將做bonding的網卡 連接到兩個交換機 ,也就是
|----------eth0------------swicth1
bond0 -------|
|-----------eth1-----------switch2
這樣,我想應該能解決問題。
《解決方案》
我認為你需要注意的是/etc/cluster/cluster.conf中cluster node name定義的名稱,你如果把他換到另外一塊網卡上試試?!
《解決方案》
是的 ,cluster node name 是要和hostname對應的 否則會報錯的
《解決方案》
你的做法看來像是ipmp, 應該改用trunking(802.3ad)指定aggregation device為default network port.
《解決方案》
f:wink::lol::lol:
《解決方案》
還要確認兩個switch有支援LACP mode