定足数デバイスに関するクラスタの構成

定足数デバイス・サービスを実行するノードは、そのクラスタの残りのノードに対して認証されてからそのクラスタに追加される必要があります。定足数デバイス・サービス・ノードを追加するときに、定足数の決定に使用するアルゴリズムなどの構成オプションを設定できます。定足数デバイスをクラスタに追加した後に、その定足数デバイスのステータスを調べて、デバイスが正しく機能していることを確認できます。

  1. 定足数デバイス・サービス・ノードをクラスタに対して認証します。既存のクラスタ内のノードで、qdevという名前のノードを認証するには、次を実行します。
    sudo pcs host auth qdev

    クラスタのユーザー名とパスワードの入力を求められます。

  2. そのクラスタに対して構成されている定足数デバイスがまだないことを確認します。1つのクラスタに複数の定足数デバイスを構成しないでください。既存のクラスタ内のノードで、次を実行します。
    sudo pcs quorum status
    出力にメンバーシップ情報が含まれていることに注目してください。
    ...
    Membership information
    ----------------------
        Nodeid      Votes    Qdevice Name
             1          1         NR node1 (local)
             2          1         NR node2
    「Qdevice」列の下にNRという値が表示されています。NRという値は、そのクラスタ内のどのノードにも定足数デバイスが登録されていないことを示しています。その他の値が表示されている場合は、まず既存のデバイスを削除してから、そのクラスタへの別の定足数デバイスの追加に進んでください。
  3. 定足数デバイスをそのクラスタに追加します。既存のクラスタ内のいずれかのノードで、次を実行します。
    sudo pcs quorum device add model net host=qdev algorithm=ffsplit
    定足数デバイス・サービスを実行しているホストと一致するホスト(この場合はqdevという名前)、および定足数の決定に使用するアルゴリズム(この場合はffsplit)を指定するということを覚えておいてください。

    アルゴリズム・オプションは次のとおりです:

    • ffsplit: クラスタ内のアクティブ・ノード数が最も多いパーティションを優先する、fifty-fifty splitアルゴリズムです。
    • lms: 定足数デバイス・サービス・ノードにまだ接続できるノードへの投票を返す、last-man-standingアルゴリズムです。単一のノードがまだアクティブで、それが定足数デバイス・サービスに接続できる場合、そのクラスタは定足数に達したままとなります。どのノードも定足数デバイス・サービスに接続できず、いずれかのノードがそのクラスタの残りのノードとの接続を失うと、そのクラスタは定足数に満たなくなります。

    詳細は、corosync-qdevice(8)マニュアル・ページを参照してください。

  4. その定足数デバイスがそのクラスタ内で構成されていることを確認します。既存のクラスタ内の任意のノードで、次を実行します。
    sudo pcs quorum config
    出力で、定足数デバイスが構成されていることと、使用中のアルゴリズムが示されます。
    Options:
    Device:
      Model: net
        algorithm: ffsplit
        host: qdev
    また、次を実行することで、そのクラスタの定足数ステータスを問合せできます:
    sudo pcs quorum status
    出力で定足数のステータスが示されます。
    Quorum information
    ------------------
    Date:             Fri Jul 15 14:19:07 2022
    Quorum provider:  corosync_votequorum
    Nodes:            2
    Node ID:          1
    Ring ID:          1/8272
    Quorate:          Yes
    
    Votequorum information
    ----------------------
    Expected votes:   3
    Highest expected: 3
    Total votes:      3
    Quorum:           2
    Flags:            Quorate Qdevice
    
    Membership information
    ----------------------
        Nodeid      Votes    Qdevice Name
             1          1    A,V,NMW node1 (local)
             2          1    A,V,NMW node2
             0          1            Qdevice
    メンバーシップ情報の「Qdevice」フィールドにA,V,NMWという値が表示されるようになったことに注目してください。このフィールドの値は、次のどれかに等しくなります。
    • A/NA: 定足数デバイスがそのクラスタ内の各ノードに対して有効であるか有効でないことを示します。
    • V/NV: 定足数デバイスがノードに投票したかどうかを示します。クラスタが分割された場合は、一方のノードがVに設定され、他方がNVに設定されます。
    • MW/NMW: 定足数デバイスのmaster_winsフラグが設定されているかどうかを示します。master_winsフラグも設定されているアクティブな定足数デバイスがあるノードは、そのクラスタのノード投票に関係なく、定足数に達します。デフォルトでは、このオプションは設定されていません。