2.3.2. 為節點配置一個基於儲存裝置的單獨隔離裝置

當使用無電源的隔離措施(也就是 SAN/storage 隔離)來隔離節點時,您必須為隔離裝置配置 unfencing。這可確保被隔離的節點在重新啟動之前,不會被重新啟用。當您為節點配置 unfencing 時,您需指定一個裝置,映射您為節點配置的相應隔離裝置,並使用加上明確的 onenable 動作。
欲取得更多有關於取消節點隔離上的相關資訊,請參閱 fence_node(8) man page。
請使用下列程序來配置一個含有基於儲存裝置的單隔離裝置的節點,它使用了一個名為 sanswitch1 的隔離裝置,並且使用了 fence_sanbox2 隔離代理程式。
  1. 為節點新增隔離措施,並為隔離措施提供一組名稱。
    ccs -h 主機 --addmethod 方式 節點
    比方說,若要在叢集節點 node-01.example.com 上的配置檔案中,為節點 node-01.example.com 配置名為 SAN 的隔離措施,請執行下列指令:
    ccs -h node01.example.com --addmethod SAN  node01.example.com
  2. 為措施新增隔離事例。您必須指定節點要使用哪個隔離裝置、此事例適用於哪個節點、措施的名稱,以及此節點特屬措施的任何選項:
    ccs -h 主機 --addfenceinst 隔離裝置名稱 節點 方式 [選項]
    比方說,若要在叢集節點 node-01.example.com 上的配置檔案中,配置一個隔離事例(並且該叢集節點在名為 sanswitch1 的隔離裝置上,使用了 SAN switch power 連接埠 11 以透過名為 SAN 的措施,來隔離叢集節點 node-01.example.com),請執行下列指令:
    ccs -h node01.example.com --addfenceinst sanswitch1 node01.example.com SAN port=11
  3. 若要為此節點上基於儲存裝置的隔離裝置取消隔離,請執行下列指令:
    ccs -h 主機 --addunfence 隔離裝置名稱 節點 action=on|off
您需要為叢集中的各個節點新增隔離措施。下列指令將會為各個節點配置隔離措施,措施名稱為 SAN。隔離措施的裝置指定了 sanswitch 為裝置名稱,這是個先前以 --addfencedev 選項配置過的裝置,如〈節 2.1, “配置隔離裝置”〉中所述。各個節點皆會被配置一組獨特的 SAN 實體連接埠號:node-01.example.com 的連接埠號為 11node-02.example.com 的連接埠號為 12,而 node-03.example.com 的連接埠號為 13
ccs -h node01.example.com --addmethod SAN node01.example.com
ccs -h node01.example.com --addmethod SAN node02.example.com
ccs -h node01.example.com --addmethod SAN node03.example.com
ccs -h node01.example.com --addfenceinst sanswitch1 node01.example.com SAN port=11
ccs -h node01.example.com --addfenceinst sanswitch1 node02.example.com SAN port=12
ccs -h node01.example.com --addfenceinst sanswitch1 node03.example.com SAN port=13
ccs -h node01.example.com --addunfence sanswitch1 node01.example.com port=11 action=on
ccs -h node01.example.com --addunfence sanswitch1 node02.example.com port=12 action=on
ccs -h node01.example.com --addunfence sanswitch1 node03.example.com port=13 action=on
在您將隔離措施、隔離事例,以及取消隔離加入至叢集中的各個節點上之後,〈範例 2.2, “加入了基於儲存裝置的隔離措施之後的 cluster.conf〉將會顯示一個 cluster.conf 配置檔案。

範例 2.2. 加入了基於儲存裝置的隔離措施之後的 cluster.conf


<cluster name="mycluster" config_version="3">
   <clusternodes>
     <clusternode name="node-01.example.com" nodeid="1">
         <fence>
            <method name="SAN">
	      <device name="sanswitch1" port="11"/>
             </method>
         </fence>
         <unfence>
             <device name="sanswitch1" port="11" action="on"/> 
         </unfence>
     </clusternode>
     <clusternode name="node-02.example.com" nodeid="2">
         <fence>
            <method name="SAN">
	      <device name="sanswitch1" port="12"/>
             </method>
         </fence>
         <unfence>
             <device name="sanswitch1" port="12" action="on"/> 
         </unfence>
     </clusternode>
     <clusternode name="node-03.example.com" nodeid="3">
         <fence>
            <method name="SAN">
	      <device name="sanswitch1" port="13"/>
             </method>
         </fence>
         <unfence>
             <device name="sanswitch1" port="13" action="on"/> 
         </unfence>
     </clusternode>
   </clusternodes>
   <fencedevices>
        <fencedevice agent="fence_sanbox2" ipaddr="san_ip_example"
login="login_example" name="sanswitch1" passwd="password_example"/>
   </fencedevices>
   <rm>
   </rm>
</cluster>
請注意,當您完成了配置您叢集的所有元件後,您需要將叢集配置檔案同步至所有節點上。