Pacemakerクラスタでスタック DRBD リソースを使用する

スタックリソースでは、マルチノードクラスタの多重冗長性のために、 あるいはオフサイトのディザスタリカバリ機能を確立するためにDRBDを使用できます。 このセクションでは、そのような構成におけるDRBDおよびPacemakerの設定方法について説明します。

オフサイトディザスタリカバリ機能をPacemakerクラスタに追加する

この構成シナリオでは、1つのサイトの2ノードの高可用性クラスタと、 オフサイトに収容される可能性が高い独立した1つのノードについて説明します。 第3のノードは、障害回復ノードとして機能するスタンドアロンサーバです。 次の図で概念を説明します。

図8.1 Pacemakerクラスタのスタック DRBD リソース

Pacemakerクラスタのスタック DRBD リソース

この例では、alicebobが2ノードのPacemakerクラスタを形成し、 charlieはPacemakerで管理されないオフサイトのノードです。

このような構成を作成する場合は、 「3ノードセットアップの作成」で説明されているように、 まずDRBDリソースの設定および初期化を行います。 そして、次のCRM構成でPacemakerを設定します。

primitive drbd_r0 ocf:linbit:drbd \
	params drbd_resource="r0"

primitive drbd_r0-U ocf:linbit:drbd \
	params drbd_resource="r0-U" \

primitive ip_stacked ocf:heartbeat:IPaddr2 \
	params ip="192.168.42.1" nic="eth0"

ms ms_drbd_r0 res_drbd_r0 \
	meta master-max="1" master-node-max="1" \
        clone-max="2" clone-node-max="1" \
        notify="true" globally-unique="false"

ms ms_drbd_r0-U res_drbd_r0-U \
	meta master-max="1" clone-max="1" \
        clone-node-max="1" master-node-max="1" \
        notify="true" globally-unique="false"

colocation c_drbd_r0-U_on_drbd_r0 \ 
        inf: ms_drbd_r0-U ms_drbd_r0:Master

colocation c_drbd_r0-U_on_ip \
        inf: ms_drbd_r0-U res_ip_stacked

colocation c_ip_on_r0_master \
        inf: res_ip_stacked ms_drbd_r0:Master

order o_ip_before_r0-U \
        inf: res_ip_stacked ms_drbd_r0-U:start

order o_drbd_r0_before_r0-U \
        inf: ms_drbd_r0:promote ms_drbd_r0-U:start

この構成を/tmp/crm.txtという一時ファイルに保存しておけば、 次のコマンドでライブクラスタ構成へインポートできます。


crm configure < /tmp/crm.txt

この構成では、以下のアクションがalice/bobクラスタで 正しい順番で実行されます。

  1. PacemakerはDRBDリソースr0を両方のクラスタノードで開始し、 1つのノードをマスター(DRBD プライマリ)ロールに昇格させます。

  2. 次に、Pacemakerは、スタックリソースが 第3のノードのレプリケーションに使用するIPアドレス192.168.42.1を開始します。 r0 DRBDリソース用のマスターロールにすでに昇格しているノードでも同様です。

  3. 現在はr0用のプライマリロールと r0-U用のレプリケーションIPアドレスも持つノード上では、 オフサイトノードに接続およびレプリケートするr0-U DRBDリソースをPacemakerが開始します。

  4. 次に、Pacemakerがr0-Uリソースもプライマリロールに昇格させるため、 アプリケーションでも使用可能になります。

このように、以上のPacemaker構成では、 クラスタノード間だけではなく第3のオフサイトノードでも完全なデータ冗長性が確保されます。

[注意]注意

このタイプのセットアップは通常、 DRBD Proxyとともに配備されます。