5.7. クラスターメンバー用のフェンシングの設定

クラスターの作成とフェンスデバイスの作成の初期ステップを完了したら、クラスターノード用にフェンシングを設定する必要があります。新規のクラスターを作成してそのクラスター用にフェンスデバイスを設定した後に、ノード群にフェンシングを設定するには、このセクションの以下のステップに従ってください。フェンシングはクラスター内のそれぞれのノードに設定する必要があることに注意してください。

注記

各ノードに複数のフェンシングメカニズムを設定することが推奨されます。フェンシングデバイスが失敗する要因には、ネットワークの分割、電源異常、フェンシングデバイスそのものに問題がある場合、などがあります。複数のフェンシングメカニズムを設定することで、1 つのフェンシングデバイスの障害が致命的な結果になる可能性を低減することができます。
このセクションでは、以下の手順について説明します。

5.7.1. 単一パワーベースのフェンスデバイスによるノードの設定

以下の手順にしたがって、単一のパワーベースのフェンスデバイスでノードを設定します。これは fence_apc フェンシングエージェントを使用する my_apc と呼ばれるフェンスデバイスを使います。この例では、「フェンスデバイスの設定」 にあるように、これまで my_apc という名前のデバイスが --addfencedev オプションで設定されていました。
  1. ノード用のフェンスメソッドを追加して、そのフェンスメソッドの名前を入力します。
    ccs -h host --addmethod method node
    例えば、クラスターノード node-01.example.com にある設定ファイル内でノード node-01.example.com 用に APC と呼ばれるフェンスメソッドを設定するには、以下のコマンドを実行します:
    ccs -h node01.example.com --addmethod APC node01.example.com
    
  2. メソッド用のフェンスインスタンスを追加します。ノードに使用するフェンスデバイス、このインスタンスの適用先であるノード、メソッドの名前、及びこのノードに特有であるこのメソッド用のオプションを指定する必要があります:
    ccs -h host --addfenceinst fencedevicename node method [options]
    
    たとえば、クラスターノード node-01.example.com 上の設定ファイル内にフェンスインスタンスを設定するには、以下のコマンドを実行します。ここでは、APC と呼ばれるメソッドを使用してクラスターノード node-01.example.com をフェンスするために、my_apc と呼ばれるフェンスデバイス上の APC スイッチパワーポート 1 を使用するとします。
    ccs -h node01.example.com --addfenceinst my_apc node01.example.com APC port=1
    
クラスター内の各ノード用にフェンスを追加する必要があります。以下のコマンドを使用すると、APC と呼ばれるメソッドで各ノードにフェンスメソッドが設定されます。フェンスメソッド用のデバイスは my_apc をデバイス名として指定しますが、これは 「フェンスデバイスの設定」 で説明してあるように、以前に --addfencedev オプションで設定したデバイスです。各ノードは、一意の APC スイッチパワーポート番号で設定されます。node-01.example.com のポート番号は 1 で、node-02.example.com のポート番号は 2node-03.example.com のポート番号は 3 となります。
ccs -h node01.example.com --addmethod APC node01.example.com
ccs -h node01.example.com --addmethod APC node02.example.com
ccs -h node01.example.com --addmethod APC node03.example.com
ccs -h node01.example.com --addfenceinst my_apc node01.example.com APC port=1
ccs -h node01.example.com --addfenceinst my_apc node02.example.com APC port=2
ccs -h node01.example.com --addfenceinst my_apc node03.example.com APC port=3
例5.2「パワーベースのフェンスメソッドを追加した後の cluster.conf は、クラスター内の各ノードにこれらのフェンシングメソッドとインスタンスを追加した後の cluster.conf 設定ファイルを示しています。

例5.2 パワーベースのフェンスメソッドを追加した後の cluster.conf


<cluster name="mycluster" config_version="3">
   <clusternodes>
     <clusternode name="node-01.example.com" nodeid="1">
         <fence>
            <method name="APC">
              <device name="my_apc" port="1"/>
             </method>
         </fence>
     </clusternode>
     <clusternode name="node-02.example.com" nodeid="2">
         <fence>
            <method name="APC">
              <device name="my_apc" port="2"/>
            </method>
         </fence>
     </clusternode>
     <clusternode name="node-03.example.com" nodeid="3">
         <fence>
            <method name="APC">
              <device name="my_apc" port="3"/>
            </method>
         </fence>
     </clusternode>
   </clusternodes>
   <fencedevices>
         <fencedevice agent="fence_apc" ipaddr="apc_ip_example" login="login_example" name="my_apc" passwd="password_example"/>
   </fencedevices>
   <rm>
   </rm>
</cluster>

「クラスタノード群への設定ファイルの伝播」 に説明してあるように、クラスターの全コンポーネントの設定を終了した時点で、クラスター設定ファイルを全てのノードに対して同期する必要がある点に注意してください。