章 2. 透過 ccs 指令配置隔離

由 Red Hat Enterprise Linux 6.1 發行版起,Red Hat High Availability 外掛程式提供了 ccs 叢集配置指令上的支援。ccs 指令能容許管理員建立、修改以及檢視 cluster.conf 叢集配置檔案。您可使用 ccs 指令,來在本機檔案系統上,或是遠端節點上配置叢集配置檔案。透過使用 ccs 指令,管理員亦可啟用或停用已配置叢集上的一個,或全部節點上的叢集服務。
本章節詳述了如何透過 ccs 指令配置 Red Hat High Availability 外掛程式叢集配置檔案。
本章節包含了下列部份:

注意

請確認您的 High Availability 外掛的建置能滿足您的需求,並且受到支援。請與經認可的 Red Hat 代表進行聯繫,以在進行建置前,驗證您的配置。此外,請允許配置 burn-in 時間,以測試失效模式。

注意

本章節的參照經常使用了 cluster.conf 要素與屬性。欲取得 cluster.conf 要素與屬性的完整清單與詳述,請參閱位於 /usr/share/cluster/cluster.rng 的叢集結構描述,以及位於 /usr/share/doc/cman-X.Y.ZZ/cluster_conf.html 的已標記結構描述(例如 /usr/share/doc/cman-3.0.12/cluster_conf.html)。

2.1. 配置隔離裝置

為叢集配置隔離裝置的程序,包含了建立、更新以及刪除隔離裝置。您必須先在叢集中建立和命名隔離裝置,才能為該叢集中的節點配置隔離。欲取得為叢集中個別節點配置隔離的相關資訊,請參閱〈節 2.3, “為叢集成員配置隔離”〉。
在配置您的隔離裝置前,您可能會希望為您的系統,修改某些隔離 daemon 的預設值。您為隔離 daemon 所配置的值,會成為叢集的一般正常值。您可能會希望為叢集修改的一般隔離內容概述如下:
  • post_fail_delay 屬性代表隔離 daemon(fenced)在節點失效後、隔離該節點(隔離區域的成員之一)之前,所等待的秒數。post_fail_delay 的預設值為 0。其變數可視叢集與網路效能需求,進行更改。
  • post-join_delay 屬性為隔離 daemon(fenced)在某節點加入隔離區域時,隔離此節點之前所會等待的秒數。post_join_delay 的預設值為 6。一般 post_join_delay 的設定介於 20 至 30 秒,不過這能根據叢集和網路效能而異。
您可使用 ccs 指令搭配 --setfencedaemon 選項來重設 post_fail_delaypost_join_delay 的屬性。然而請注意,執行 ccs --setfencedaemon 指令將會覆寫所有既有的隔離 daemon 內容。
比方說,若要配置 post_fail_delay 屬性的值,請執行下列指令。這項指令會覆寫所有其它可透過這項指令設置的既有隔離 daemon 的內容。
ccs -h 主機 --setfencedaemon post_fail_delay=
若要配置 post_join_delay 屬性的值,請執行下列指令。這項指令會覆寫所有其它可透過這項指令設置的既有隔離 daemon 的內容。
ccs -h 主機 --setfencedaemon post_join_delay=
若要配置 post_join_delaypost_fail_delay 這兩個屬性的值,請執行下列指令:
ccs -h 主機 --setfencedaemon post_fail_delay= post_join_delay=

注意

欲取得更多有關於 post_join_delaypost_fail_delay 屬性,以及您可修改的額外隔離 daemon 內容上的相關資訊,請參閱 fenced(8) man page,並參閱位於 /usr/share/cluster/cluster.rng 的叢集結構描述,以及位於 /usr/share/doc/cman-X.Y.ZZ/cluster_conf.html 的附註結構描述。
若要為叢集配置隔離裝置,請執行下列指令:
ccs -h 主機 --addfencedev
裝置名稱
[隔離裝置選項]
比方說,若要在叢集節點 node1 上的配置檔案中,配置名為 myfence、IP 位址為 apc_ip_example、登錄名稱為 login_example,以及密碼為 password_example 的 APC 隔離裝置,請執行下列指令:
ccs -h node1 --addfencedev myfence agent=fence_apc ipaddr=apc_ip_example login=login_example passwd=password_example
下列範例顯示了當您新增了此 APC 隔離裝置後,cluster.conf 配置檔案的 fencedevices 部份:

<fencedevices>
      <fencedevice agent="fence_apc" ipaddr="apc_ip_example" login="login_example" name="myfence" passwd="password_example"/>
</fencedevices>
當為叢集配置隔離裝置時,建議您查看您叢集可用的裝置清單,以及各個裝置可使用的選項。同時也建議您查看目前已為您叢集配置的隔離裝置。欲取得使用 ccs 指令來印出一列可用隔離裝置和選項之清單,或印出一列目前已為您叢集配置的隔離裝置之清單,請參閱〈節 2.2, “列出隔離裝置與隔離裝置選項”〉。
若要由您的叢集配置移除隔離裝置,請執行下列指令:
ccs -h 主機 --rmfencedev 隔離裝置名稱
比方說,若要由叢集節點 node1 上的叢集配置檔案中,移除您命名為 myfence 的隔離裝置,請執行下列指令:
ccs -h node1 --rmfencedev myfence
若您需要修改您已配置的隔離裝置屬性,您首先必須移除該隔離裝置,並再次將它以修改過的屬性重新加入。
請注意,當您完成了配置您叢集的所有元件後,您需要將叢集配置檔案同步至所有節點上。