Pacemaker 1.1 Configuration Explained – (4) クラスタノード
(4)クラスターノード
クラスタノードの定義
XMLファイルの内部のノードセクションには、クラスタ内の各ノードのUUID, uname, type情報を含むエントリが作成されます。
- Heartbeatクラスタでのノードエントリの例
<node id="1186dc9a-324d-425a-966e-d757e693dc86" uname="pcmk-1" type="normal"/>
- corosyncクラスタのノードエントリの例
<node id="101" uname="pcmk-1" type="normal"/>
通常、これらの情報は自動的に作成されます。
Pacemakerによるノード名取得方法
以前はuname -aコマンドの結果を使用していましたが、corosync 2.0以降は以下のようにしてノード名を取得するようになりました。
- confのnodelist中のring0_addrに記載された値を使用する。IPアドレスが記載されていなければ次ののものを使う。
- confのnodelistにあるnameの値を使用する。なければ次のものを使う。
- uname -aの値を使う
なお、”crm_node -n”コマンドを実行することPacemakerが認識しているノード名を表示します。
Corosyncでnodelistを使用している場合には、“crm_node –name-for-id <番号>”コマンドでcorosyncのnodeidが使用している名前を表示します。
ノード属性
ノード属性はノードに対して設定する特別なオプションです。これはRAMやDiskのサイズ、OSやカーネルバージョン、あるいは物理的な位置などの情報です。クラスタは、この情報を考慮してリソースをどこに配置するか判断を行います。
ノード管理(Corosyncベースのクラスタの場合)
ノードの追加
- CorosyncとPacemakerを新しいホストにインストールする。
- 既存のノードから/etc/corosync/corosync.confと/etc/corosync/authkey(ある場合)をコピーする。
- クラスタソフトを起動する
ノードの削除
ノードの削除を行う場合には、他のノードでの操作が必要になります。
- クラスタソフトを停止する
- 以下コマンドを他のノードで実行する。
# crm_node -R <削除するノード名>
ノードの交換をする場合
既存のノードを交換する場合には以下の手順をとる。
- 交換される側のノードを完全に停止する。
- 新しいノードに交換される側のノードと同じホスト名とIPアドレスを付与する
- 以降はノード追加時と同様の手順