7.3. 失去連線時移動資源

設定叢集使其在失去外部連線時移動資源的這項程序包含了兩個步驟。
  1. 新增 ping 資源至叢集。ping 資源會使用相同名稱的系統工具程式來測試是否能連上一列(由 DNS 主機名稱或是 IPv4/IPv6 位址所指定)機器,並使用此結果來維護一個名為 pingd 的節點屬性。
  2. 為會在失去連線時將資源移至一個不同節點的資源配置位置限制式。
表格 5.1, “資源內容” 詳述了您能為 ping 資源設置的內容。

表格 7.1. ping 資源的內容

欄位詳述
dampen
等待進一步變更發生的所需時間(dampen)。這會避免一項資源在叢集節點於不同時間點發現失去連線時,在叢集之間跳來跳去。
multiplier
連接的 ping 節點會乘以這個值以取得一項分數。當配置了多重的 ping 節點時會相當有幫助。
host_list
要判斷目前連線狀態為何所需聯絡的機器。允許的值包括可解析的 DNS 主機名稱、IPv4 與 IPv6 位址。
下列範例指令會建立一項 ping 資源,用來驗證至 www.example.com 的連線。一般來講您會驗證您網路閘道器/路由器的連線。您將配置 ping 資源作為副本,如此一來資源便會在所有叢集節點上執行。
# pcs resource create ping ocf:pacemaker:ping dampen=5s multiplier=1000 host_list=www.example.com --clone
下列範例會為既有的資源 Webserver 配置位置限制式規則。這會使 Webserver 資源移至一部能夠 ping www.example.com 的主機(若該資源目前執行於的主機無法 ping www.example.com 的話)。
# pcs constraint location Webserver rule score=-INFINITY pingd lt 1 or not_defined pingd