Pacemaker - 斷開介面後集群不會傳遞到另一個節點
我在 Corosync + Pacemaker 中有下一個場景
節點1:
eth0:10.143.0.21/24
eth1:10.10.10.1/30(Corosync 通信)
eth2:192.168.5.2/24
節點2:
eth0:10.143.0.22/24
eth1:10.10.10.2/30(Corosync 通信)
eth2:192.168.5.3/24
浮動IP
eth0:10.143.0.23/24
eth2:192.168.5.1/24
介面 eth1 僅用於 corosync 通信。
例如,我從介面 eth0 斷開了網線但沒有任何反應,其他範例我從介面 eth2 斷開了網線,我得到了相同的結果,但我從介面 eth1 斷開了網線(corosync 通信)並且浮動 IP 傳遞到其他節點。
斷開任何介面時如何將資源傳遞給另一個節點?
問候
更新
我使用以下設置進行了測試
crm configure primitive PING-WAN ocf:pacemaker:ping params host_list="10.143.0.1" multiplier="1000" dampen="1s" op monitor interval="1s" crm configure primitive Failover-WAN ocf:heartbeat:IPaddr2 params ip=10.143.0.23 nic=eth0 op monitor interval=10s meta is-managed=true crm configure primitive Failover-LAN ocf:heartbeat:IPaddr2 params ip=192.168.5.1 nic=eth2 op monitor interval=10s meta is-managed=true crm configure group Cluster Failover-WAN Failover-LAN crm configure location Best_Connectivity Cluster rule pingd: defined pingd
它對我有用,當從 eth0 斷開網路電纜並失去對目標 10.143.0.1(網關)的 ping 時,資源被移動到另一個節點,但我的場景是 3 個介面,所以我決定添加一個 ping 測試更多
crm configure primitive PING-LAN ocf:pacemaker:ping params host_list="192.168.5.4" multiplier="1000" dampen="1s" op monitor interval="1s"
但是現在必須斷開與兩台主機(10.143.0.1 和 192.168.5.4)的連接,以便將資源移動到另一個節點。
我正在尋找資訊,但我無法使以下場景起作用:
如果節點失去與任何添加到 ping 測試的主機的連接,則其他資源將傳遞到另一個節點,而無需同時失去所有 ping 測試的連接。
您需要告訴 Pacemaker 您關心介面故障。看
ocf:pacemaker:ping
資源。您可以使用該資源代理 ping 不同介面網路上的其他主機列表,如果這些 ping 失敗,Pacemaker 將做出反應。如果您將
ocf:pacemaker:ping
資源分組或使用約束將它們關聯到您在 Pacemaker 中管理的任何其他內容,它們都會一起移動。另外,我敢打賭,當您拔掉
eth1
之前的測試時,IP 並沒有“移動”,而是同時在兩個集群節點上啟動;到集群節點時,他們都認為他們的對等節點失踪了。您實際上是在測試如果集群分區會發生什麼。關於這一點,您絕對應該按照另一個答案中的建議在 Corosync 配置中配置第二個冗餘環,但這不會產生您想要的效果。
**更新 0:**您應該將兩個 IP 添加到同一個
ping
原語host_list
而不是添加額外的ping
原語,並將failure_score
該原語上的 a 設置為可接受的值。從
ocf:pacemaker:ping
資源代理 (# crm ra info ocf:pacemaker:ping
):... failure_score (integer): Resource is failed if the score is less than failure_score. Default never fails. host_list* (string): Host list A space separated list of ping nodes to count. ...
就像是:
# crm configure primitive PING-O-DOOM ocf:pacemaker:ping params host_list="10.143.0.1 192.168.5.4" failure_score="2" op monitor interval="10s"