5
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

CentOS6.5でDRBD8.4を使ってみる - vol.4 CRM設定編

Last updated at Posted at 2014-08-31

しおり

CentOS6.5でDRBD8.4を使ってみる - vol.0 準備編
CentOS6.5でDRBD8.4を使ってみる - vol.1 インストール編
CentOS6.5でDRBD8.4を使ってみる - vol.2 Corosync設定編
CentOS6.5でDRBD8.4を使ってみる - vol.3 DRBD初期設定編
CentOS6.5でDRBD8.4を使ってみる - vol.4 CRM設定編

CRMの設定

最低限の設定

DRBDをPacemakerで制御する最低限の設定をします。

CRM Shellで次のように入力していきます。
途中でWARNINGが表示されますが、 WARNING: drbd: default timeout 20s for start is smaller than the advised 240 というようなものであれば問題ありません。

primitive drbd ocf:linbit:drbd params drbdconf=/etc/drbd.conf drbd_resource=r0 \
op monitor interval=10 role=Slave \
op monitor interval=11 role=Master \
op stop on-fail=block
ms ms-drbd drbd meta notify=true
commit
exit

primitive drbd 行は長いのでバックスラッシュ(表示によっては円マーク)で行を分割しています。

ここではDRBDのリソース r0 を制御するPacemakerのリソースdrbdを作成し、 ms でMaster/Slaveモードで動作するように設定しています。
Master/Slaveモードは「両方のノードでリソースを同時に起動しつつ、MasterやSlaveの状態を導入し管理する」モードです。

Slave で動作している場合には監視間隔を10秒、 Master で動作している場合には監視間隔を11秒に設定しています。
Master で動作していても Slave で動作していても状態を監視する設定なのですが、秒数を変えているのは単純に「同じ秒数だと設定が通らない」ためです。
内部的に opリソース名-アクション-インターバル という書式のIDで管理しているのが原因です。

ms ms-drbdnotify=true としていますが、これはノードの参加や脱退、リソースの起動といったイベントごとに、 ms-drbd リソースに判断をさせるための設定です。

crm_mon -Ar を実行して次のようになっていれば成功です。

============
Last updated: Sun Aug 31 19:50:01 2014
Stack: openais
Current DC: drbd1 - partition with quorum
Version: 1.0.13-a83fae5
2 Nodes configured, 2 expected votes
1 Resources configured.
============

Online: [ drbd1 drbd2 ]

Full list of resources:

 Master/Slave Set: ms-drbd
     Masters: [ drbd1 ]
     Slaves: [ drbd2 ]

Node Attributes:
* Node drbd1:
    + master-drbd:0                     : 10000
* Node drbd2:
    + master-drbd:1                     : 10000

ファイルシステムマウント

Pacemakerにファイルシステムをマウントさせる設定をします。
/dev/drbd0マウントされていない ことを確かめておいてください。

Pacemakerに /dev/drbd0 上のファイルシステムをマウントさせるためには、DRBDリソースが Primary でなくてはなりません(同居制約;colocation)。

CRM Shellで次の設定を行います。

primitive filesystem ocf:heartbeat:Filesystem params run_fsck=no device=/dev/drbd0 directory=/mnt/drbd fstype=ext4 \
op monitor interval=15 \
op stop on-fail=ignore
colocation drbd-fs-colocation inf: filesystem ms-drbd:Master
order drbd-fs-order inf: ms-drbd:promote filesystem:start
commit

primitive filesystem については見たとおりですが、リソースの停止に失敗しても無視して処理を継続させます( op stop on-fail=ignore )。

colocation は上で述べた条件(同居制約)を実現するものです。
drbd-fs-colocation と名前をつけて、制約をかけています。
filesystem リソースが動作するのは、必ず( inf: ) ms-drbd リソースが Master ロールを持っている( ms-drbd:Master )ノード」というものです。

order はリソースの起動順序を制御するものです。
drbd-fs-order と名前をつけており、この順序を強制( inf: )しています。
ms-drbd リソースを昇格させ( ms-drbd:promote )、つづいて filesystem リソースを起動( filesystem:start )させます。

5
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?