| 日本−日本語 |
|
|
|
![]() |
Serviceguard の管理 > 第5章 HA クラスタの構成稼働中のクラスタの管理 |
|
この項では、クラスタの管理を定型化する方法について説明します。その他のツールや提案については、第7章 「クラスタとパッケージの管理」で説明します。 Serviceguard Manager を使って、構成やステータス情報を確認できます。System Management Homepage (SMH) で、[Tools] -> [Serviceguard Manager] を選択します。 Serviceguard では、以下のように、コマンドを使用してクラスタを制御できます。
これらのコマンドを使用して、以下のようにクラスタの動作をテストできます。
クラスタのテストについては、第8章 「クラスタのトラブルシューティング」でも説明しています。また 付録 A 「Serviceguard のコマンド」には、Serviceguard の全コマンドの一覧があります。Serviceguard の管理コマンドの一覧は、Serviceguard Manager のヘルプを参照してください。 /etc/lvmrc ファイルを使用して、パッケージで使用される LVM ボリュームグループのブート時の自動アクティブ化を禁止しておくことは、非常に重要です。自動アクティブ化を禁止する 1 つの方法として、全ノード上の /etc/lvmrc ファイルを編集し、AUTO_VG_ACTIVATE を 0 に設定し、クラスタ外のボリュームグループをすべて custom_vg_activation 関数に定義しておきます。パッケージが使用するボリュームグループは制御スクリプトによってアクティブ化/非アクティブ化されるので、このファイルのどこにも記述されていないことを確かめます。
自動起動とは、各ノードが個別にクラスタに結合するプロセスです。Serviceguard には、起動プロセスを制御する起動スクリプトがあります。クラスタの起動では、クラスタの自動起動を使うことをお勧めします。システム管理者が操作する必要はありません。 以下の 3 つの場合があります。
クラスタを自動起動する場合は、クラスタ内の各ノード上で /etc/rc.config.d/cmcluster ファイルの AUTOSTART_CMCLD フラグを 1 に設定します。設定されたノードは、ブート時にクラスタに自動的に結合されます。 /etc/rc.config.d/cmcluster ファイルの例を示します。
システムのログインメッセージに以下のような内容を追加すると便利です。
またログインメッセージには、全クラスタノードの一覧やクラスタに固有の情報を追加するのもよいでしょう。 /etc/issue ファイルと /etc/motd ファイルをカスタマイズすると、このようなクラスタ情報をメッセージに追加できます。 Serviceguard クラスタに必要なノード数は、保護の対象となるアプリケーションの処理能力がどの程度求められるかにより異なります。場合によっては、Serviceguard のネットワーク障害保護機能を利用するために、単一ノードで運用することも考えられます。 単一ノードクラスタでは、クラスタ内に他のノードがないため、クラスタロックは必要ありません。cmquerycl コマンドからの出力では、ノードが 1 つしかない場合には、クラスタロック情報のエリアが省略されます。 ネットワークには冗長性を持たせる必要がありますが、ハートビートを送信する相手のノードがないため、ハートビート LAN を指定する必要はありません。ASCII 形式のクラスタ構成ファイルでは、Serviceguard でモニターする LAN をすべて指定します。すでに IP アドレスのある LAN については、HEARTBEAT_IP キーワードではなく、STATIONARY_IP キーワードを付けて IP アドレスを指定します。予備の LAN については、LAN デバイス名を指定する NETWORK_INTERFACE キーワードだけが必要です。 単一ノードによる運用は、単一ノードクラスタや、1 つを除いてすべてのノードがダウンしたりシャットダウンされたマルチノードクラスタで行われます。このとき、稼働しているノード上ではアプリケーションが実行されている可能性があります。Serviceguard のデーモン cmcld がアクティブである限り、後で他のノードをクラスタに再結合させることは可能です。 単一ノードでの運用中に、Serviceguard デーモンが異常終了した場合は、ノードは稼働したまま、アプリケーションも実行中のままとなります。これは、マルチノードクラスタで Serviceguard デーモンがアクティブでなくなった場合とは異なります。マルチノードクラスタでは、ノードはシステムリセットにより停止し、パッケージは引き継ぎノードに切り替えられます。 単一ノードでの運用中に Serviceguard デーモンが異常終了した場合には、ノードを停止する必要はありません。アプリケーションはまだ実行されており、パッケージ切り替えに対応できるノードがないためです。 ただし、Serviceguard を再起動することは避けてください。ノード上でまだ実行されているアプリケーションと同じアプリケーションをそのノードが起動しようとした場合に、データの一部が破壊される可能性があるためです。クラスタを再起動する代わりに、適切な時期を選んでノードをシャットダウンし、その後ノードをリブートしてください。これによりアプリケーションがシャットダウンされるため、Serviceguard はリブート後にクラスタを問題なく再起動できるようになります。 ルートでのログインが可能な場合は、Serviceguard Manager またはコマンド行を使って、全クラスタノードからクラスタ構成を削除できます。cmdeleteconf コマンドを実行すると、削除を確認するプロンプトが表示されますが、-f オプションを指定して実行すると確認プロンプトは表示されません。構成を削除できるのは、クラスタが停止している間だけです。構成を削除すると、クラスタ内の全ノードからバイナリ構成ファイルが削除され、削除以前にクラスタに認識されていたボリュームグループはすべて認識されなくなります。
クラスタ構成はクラスタが停止中でなければ削除できませんが、cmdeleteconf コマンドは、クラスタ内の全ノードの電源が入っていてノードにアクセスできる状態で実行します。ノードの電源が入っていない場合は、電源を入れてブートしてください。アクセスできないノードがあれば、その一覧と以下のメッセージが表示されます。
メッセージに対して Yes を選択すると、構成が削除されます。その後、アクセスできなかったノードにアクセスできるようになったら、そのノード上で cmdeleteconf コマンドを実行して構成ファイルを削除してください。 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||