Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

第2章 ccs コマンドを使ってフェンシングを設定する

現在の Red Hat Enterprise Linux 6.1 以降のリリースより、 Red Hat High Availability Add-On では ccs クラスター設定コマンドに対応するようになります。ccs コマンドを使用することにより cluster.conf クラスター設定ファイルの作成や変更、表示などを行なうことができるようになります。ccs コマンドを使用するとローカルのファイルシステムや遠隔にあるノードのクラスター設定ファイルの設定を行なうことができます。また、ccs コマンドを使って、設定したクラスター内の任意のノードあるいはすべてのノードでクラスターサービスの起動や停止を行うこともできます。
本章では ccs コマンドを使った Red Hat High Availability Add-On のクラスター設定ファイルの設定方法について説明しています。
次のようなセクションで構成されます。

注記

High Availability Add-On の導入が確かにニーズに適合しサポートされるのか必ず確認してください。導入を行なう前に、 Red Hat 認定担当者に連絡して導入予定の構成の確認を行なうようにしてください。 また、 バーンイン期間を設けて障害モードのテストを実施するようにしてください。

注記

本章では、 よく使用される cluster.conf のエレメントや属性について記載しています。 cluster.conf のエレメントおよび属性の全一覧とその詳細については /usr/share/cluster/cluster.rng のクラスタースキーマおよび /usr/share/doc/cman-X.Y.ZZ/cluster_conf.html の注釈付きスキーマ (/usr/share/doc/cman-3.0.12/cluster_conf.html など) を参照してください。

2.1. フェンスデバイスを設定する

フェンスデバイスの設定とは、クラスターにフェンスデバイスを作成する、フェンスデバイスを更新する、 フェンスデバイスを削除することを指します。クラスター内のノードに対して排他処理 (フェンシング) を設定する前に、まずクラスター内にフェンスデバイスを作成して名前を付ける必要があります。クラスター内の各ノードに対してフェンシングを設定する方法については 「クラスターのメンバーにフェンシングを設定する」 を参照してください。
フェンスデバイスを設定する前に、フェンスデーモンプロパティの一部をシステムに合わせてデフォルト値から変更したい場合があるかもしれません。 フェンスデーモンに設定する値はクラスター全体に適用されます。変更が可能な汎用フェンスプロパティを以下に簡単に説明しておきます。
  • post_fail_delay 属性は、 ノードに障害が発生した場合にそのノード (フェンスドメインのメンバー) を排他処理するまでにフェンスデーモン (fenced) を待機させる秒数です。 post_fail_delay のデフォルト値は 0 です。 この値はクラスターとネットワークのパフォーマンスに合わせて変更できます。
  • post-join_delay 属性は、 ノードがフェンスドメインに参加した後そのノードを排他処理するまでにフェンスデーモン (fenced) を待機させる秒数です。 post_join_delay のデフォルト値は 6です。 post_join_delay に見られる一般的な設定は 20 秒から 30 秒ですが、 クラスターやネットワークのパフォーマンスにより異なります。
post_fail_delay 属性と post_join_delay 属性の値をリセットする場合は ccs コマンドの --setfencedaemon オプションを使用します。 ただし、ccs --setfencedaemon コマンドを実行すると既存のフェンスデーモンプロパティがすべて上書きされるため注意してください。
たとえば、 post_fail_delay 属性の値を設定する場合は次のコマンドを実行します。 このコマンドで設定できるその他すべての既存フェンスデーモンプロパティの値が上書きされます。
ccs -h host --setfencedaemon post_fail_delay=value
post_join_delay 属性の値を設定する場合は次のコマンドを実行します。 このコマンドで設定できるその他すべての既存フェンスデーモンプロパティの値が上書きされます。
ccs -h host --setfencedaemon post_join_delay=value
post_join_delay 属性と post_fail_delay 属性の両方の値を設定する場合は次のコマンドを実行します。
ccs -h host --setfencedaemon post_fail_delay=value post_join_delay=value

注記

post_join_delay 属性、post_fail_delay 属性、変更可能なフェンスデーモンのプロパティの詳細は fenced(8) の man ページおよび /usr/share/cluster/cluster.rng のクラスタースキーマ、/usr/share/doc/cman-X.Y.ZZ/cluster_conf.html の注釈付きスキーマなどを参照してください。
クラスターにフェンスデバイスを設定する場合は次のコマンドを実行します。
ccs -h host --addfencedev
devicename
[fencedeviceoptions]
たとえば、 node1 と言うクラスターノードの設定ファイル内に myfence と言う APC フェンスデバイスを設定する場合は、 次のコマンドを実行します。 IP アドレスは apc_ip_example、 ログインは login_example、 パスワードは password_example とします。
ccs -h node1 --addfencedev myfence agent=fence_apc ipaddr=apc_ip_example login=login_example passwd=password_example
APC フェンスデバイスを追加した後の cluster.conf 設定ファイル内の fencedevices セクションの例を示します。

<fencedevices>
      <fencedevice agent="fence_apc" ipaddr="apc_ip_example" login="login_example" name="myfence" passwd="password_example"/>
</fencedevices>
クラスターにフェンスデバイスを設定する場合、クラスターに使用できるデバイスとそのデバイスのオプション一覧を表示できると便利な場合があります。また、クラスターに現在設定しているフェンスデバイスを表示させたい場合もあります。ccs コマンドを使って使用できるフェンスデバイスやオプションの一覧を表示させたり、現在設定しているフェンスデバイス一覧を表示させる方法については 「フェンスデバイスとフェンスデバイスのオプションの一覧を表示する」 を参照してください。
クラスター設定からフェンスデバイスを削除する場合は次のコマンドを実行します。
ccs -h host --rmfencedev fence_device_name
たとえば、 myfence と言う名前を付けたフェンスデバイスを node1 という名前のクラスターノードにあるクラスター設定ファイルから削除する場合は次のコマンドを実行します。
ccs -h node1 --rmfencedev myfence
すでに設定済みのフェンスデバイスの属性を変更する必要がある場合は、 まずそのフェンスデバイスを削除して属性の変更を行なってから再びそのフェンスデバイスの追加を行ないます。
クラスターのコンポーネントの設定がすべて終了したら、 クラスター設定ファイルを全ノードに対して同期する必要があります。