3ノードセットアップの作成

DRBDバージョン8.3.0以上で使用可能。

3ノードセットアップでは、1つのDRBDデバイスのが別のデバイスの上にスタックされています。

デバイススタックの検討事項

このタイプのセットアップでは次のような事項に注意する必要があります。

  • スタックデバイスがアクティブなデバイスです。 1つのDRBDデバイス/dev/drbd0が構成され、 その上位にスタックデバイス/dev/drbd10 があるとします。 この場合は、/dev/drbd10がマウントされて使用されるデバイスになります。

  • 配下のDRBDデバイスおよびスタックDRBDデバイスに、 デバイスのメタデータが2回格納されます。 スタックデバイスの場合は、 必ず内部メタデータを使用してください。 これにより、スタックデバイスの使用可能な記憶領域が、 非スタックデバイスに比べてわずかに小さくなります。

  • スタックされた上位のデバイスを実行するには、 配下のデバイスがプライマリロールになっている必要があります。

  • バックアップノードを同期するには、 アクティブなノードのスタックデバイスが プライマリモードで動作している必要があります。

スタックリソースの設定

次の例では、alicebobcharlie という名前のノードがあり、 alicebobが2ノードクラスタを構成し、 charlieがバックアップノードになっています。

resource r0 {
  protocol C;

  on alice {
    device     /dev/drbd0;
    disk       /dev/sda6;
    address    10.0.0.1:7788
    meta-disk internal;
  }

  on bob {
    device    /dev/drbd0;
    disk      /dev/sda6;
    address   10.0.0.2:7788
    meta-disk internal;
  }
}

resource r0-U {
  protocol A;

  stacked-on-top-of r0 {
    device     /dev/drbd10;
    address    192.168.42.1:7788;
  }

  on charlie {
    device     /dev/drbd10;
    disk       /dev/hda6;
    address    192.168.42.2:7788; # Public IP of the backup node
    meta-disk  internal;
  }
}

他のdrbd.conf設定ファイルと同様に、 この設定ファイルもクラスタのすべてのノード(この場合は3つ)に配布する必要があります。 非スタックリソース構成にはない次のキーワードにご注意ください。

  • stacked-on-top-ofこの情報により、DRBDに含まれるリソースが スタックリソースであることをDRBDに知らせます。 これは、通常のリソース構成に含まれるonセクションのいずれかと置き換えられます。 下位レベルリソースにはstacked-on-top-ofを使用しないでください。

[注意]注意

スタックリソースに プロトコルAを使用することは必須ではありません。 アプリケーションに応じて 任意のDRBDのレプリケーションプロトコルを選択できます。

スタックリソースを有効にする

スタックリソースを有効にするには、 まず、下位レベルリソースを有効にしてプライマリに昇格します。


drbdadm up r0
drbdadm primary r0

非スタックリソースと同様に、 スタックリソースの場合もDRBDメタデータを作成する必要があります。 次のコマンドで実行します。


drbdadm --stacked create-md r0-U

次に、スタックリソースを有効にします。


drbdadm --stacked up r0-U
drbdadm --stacked primary r0-U

この後でバックアップノードのリソースを起動し、3ノードレプリケーションを有効にします。


drbdadm create-md r0-U 
drbdadm up r0-U

スタックリソースの管理を自動化するには、 スタックリソースをクラスタマネージャ構成と統合します。 Pacemakerクラスタ管理フレームワークで管理されるクラスタでこれを実行する方法については、 「Pacemakerクラスタでスタック DRBD リソースを使用する」を参照してください。