18.3.1 手動によるアプリケーションフェイルオーバーの設定
アプリケーションフェイルオーバー構成のNNMiを設定するには,次の手順を実行します。
-
アクティブサーバー(サーバーX)とスタンバイサーバー(サーバーY)にNNMiをインストールする。
-
「2.3 NNMiのライセンスを取得する」に記載されているように,各サーバーに恒久ライセンスを導入する。
-
各サーバーでovstopコマンドを実行してNNMiをシャットダウンする。
-
nms-cluster.propertiesファイルに含まれる指示を参考にして,サーバーX(アクティブ)およびサーバーY(スタンバイ)のアプリケーションフェイルオーバー機能を設定する。
次の手順を実行します。次の手順では,ファイルのテキストブロックの行のコメント(先頭の#!)を解除し,テキストを変更することを編集と呼びます。
a 次のファイルを編集します。
-
Windows:%NnmDataDir%shared\nnm\conf\props\nms-cluster.properties
-
Linux:$NnmDataDir/shared/nnm/conf/props/nms-cluster.properties
b NNMiクラスタに一意の名前を宣言します。アクティブサーバーとスタンバイサーバーが同じ名前を使用するように設定します。名前は英数字で指定してください。大小文字は区別されます。
このパラメーターを指定することで,アプリケーションフェイルオーバー機能が有効化されます。
com.hp.ov.nms.cluster.name=MyCluster
c nms-cluster.propertiesファイルのcom.hp.ov.nms.cluster.member.hostnamesパラメーターに,クラスタのすべてのノードのホスト名を追加します。
com.hp.ov.nms.cluster.member.hostnames = fqdn_for_active,fqdn_for_standby
- 重要
-
両方のノードのどちらかが複数のIPv4アドレスを持つ場合は,com.hp.ov.nms.cluster.member.hostnamesパラメーターに,各ノードのNNMiの通信に使用するIPv4アドレスを記載してください。
-
-
NNMiの証明書(nnm-key.p12ファイルおよびnnm-trust.p12ファイル,または認証機関を使用する)を設定する。
選択した方法に基づき,「10.3.5 アプリケーションフェイルオーバー環境での証明書の使用」に示されている指示を実行します。
- 重要
-
アプリケーションフェイルオーバー機能を設定するときには,両方のノードのnnm-trust.p12ファイルをマージして,1つのnnm-trust.p12ファイルを作成する必要があります。選択した方法の指示を参照してください。
-
次のファイルをサーバーXからサーバーYにコピーする。
コピーする前に,アプリケーションフェイルオーバー構成を解除するときのために元のファイルをバックアップしてください。
-
Windows:%NnmDataDir%shared\nnm\conf\nnmcluster\cluster.keystore
-
Linux:$NnmDataDir/shared/nnm/conf/nnmcluster/cluster.keystore
-
-
両ノード間のクラスタ通信に使用するNICを設定する。
詳細については,「18.3.3 アプリケーションフェイルオーバー通信の設定」を参照してください。
- 重要
-
両方のノードのどちらかが複数のNICを持つ場合は,必ず設定を実施してください。
-
サーバーXとサーバーYの両方で次のコマンドを実行する。
nnmcluster
各サーバーに,次のように表示されます。
================== 現在のクラスタ状態 ===================== 状態ID: 000000001000000005 日付/時間: 15 3 2011 - 09:37:58 (GMT+0900) クラスタ名: ThisCluster (キー CRC:626,187,650) 自動フェールオーバー: Enabled NNMデータベースの種類: 組み込み NNMで設定済みのACTIVEノード: NO_ACTIVE NNMの現在のACTIVEノード: NO_ACTIVE クラスタメンバー: ローカル? ノード タイプ 状態 OvStatus ホスト名/アドレス ------- -------- ----- -------- --------------------------- * REMOTE ADMIN N/A N/A serverX.xxx.yyy.yourcompany.com/16.78.61.68:7800 (SELF) ADMIN N/A N/A serverY.xxx.yyy.yourcompany.com/16.78.61.71:7800 ==========================================================
- 重要
-
コマンドを終了する場合はEnterキーを押下後,「quit」と入力してください。
画面には,サーバーXとサーバーYの両方がリストされます。両方のノードの情報が表示されない場合,それらのノードはお互いに通信していません。手順を進める前に,次のことを確認して,修正してください。
-
次に示す両方のサーバーのクラスタ名「com.hp.ov.nms.cluster.name」に,同じクラスタ名を設定してください。
・Windows:%NnmDataDir%shared\nnm\conf\props\nms-cluster.properties
・Linux:$NnmDataDir/shared/nnm/conf/props/nms-cluster.properties
-
キーCRCが,サーバーXとサーバーYで異なっているかどうか。
サーバーXとサーバーYの両方で,次のファイルの内容を確認してください。
・Windows:%NnmDataDir%shared\nnm\conf\nnmcluster\cluster.keystore
・Linux:$NnmDataDir/shared/nnm/conf/nnmcluster/cluster.keystore
異なっている場合は,手順6.を実施してください。
-
サーバーXまたはサーバーYのファイアウォールによって,ノードの通信が妨げられているかどうか。
ノードが通信できる状態に設定してください。
-
nnm-trust.p12ファイルがマージされているかどうか。
このエラーが表示されるのは,nnmclusterコマンドを実行した後です。
-
com.hp.ov.nms.cluster.interfaceに指定したNICから取得できるIPアドレスとcom.hp.ov.nms.cluster.member.hostnamesに指定したホスト名から解決できるIPアドレスを一致させてください。
com.hp.ov.nms.cluster.interfaceは次のファイル内に指定します。
・Windows:%NnmDataDir%Conf\nnm\props\nms-cluster-local.properties
・Linux:$NnmDataDir/conf/nnm/props/nms-cluster-local.properties
com.hp.ov.nms.cluster.member.hostnamesは次のファイル内に指定します。
・Windows:%NnmDataDir%shared\nnm\conf\props\nms-cluster.properties
・Linux:$NnmDataDir/shared/nnm/conf/props/nms-cluster.properties
-
相手サーバーの待機IPアドレスと,相手サーバーとして指定したIPアドレスが一致しているかどうか。
相手サーバーがクラスタ通信のために待機しているIPアドレスと,クラスタ通信の相手サーバーとして指定したIPアドレスが一致しているかどうかを確認してください。
クラスタ通信のために使用するポートはデフォルト7800です。
待機しているIPアドレスはnetstatコマンドで確認できます。
クラスタ通信の相手サーバーとして指定したIPアドレスは,nms-cluster.propertiesファイルのcom.hp.ov.nms.cluster.member.hostnamesパラメーターで確認できます。
com.hp.ov.nms.cluster.member.hostnamesにホスト名を指定している場合は,ホスト名から解決できるIPアドレスを確認してください。
-
サーバーXとサーバーYで,異なるオペレーティングシステムが実行されているかどうか。
例えば,サーバーXでLinuxオペレーティングシステムが実行され,サーバーYでWindowsオペレーティングシステムが実行されている場合などです。同じオペレーティングシステムが実行されている環境で設定してください。
-
サーバーXとサーバーYが,異なるバージョンのNNMiを実行しているかどうか。
例えば,サーバーXがNNMi 11-00を実行しており,サーバーYがNNMi 11-00の修正版を実行している場合などです。同じバージョンのNNMiをインストールした環境で設定してください。
-
サーバーXで,NNMiクラスタマネージャーを開始する。
nnmcluster -daemon
nnmcluster -daemonコマンドをNNMi管理サーバーXで実行すると,NNMiクラスタマネージャーが次の起動ルーチンを実行します。
-
NNMi管理サーバーXをクラスタに接続します。
-
ほかのNNMi管理サーバーが存在しないことを検知します。
-
NNMi管理サーバーXはアクティブ状態に変わります。
-
NNMi管理サーバーX(アクティブサーバー)のNNMiサービスを開始します。
-
データベースのバックアップを作成します。
詳細については,nnmclusterのリファレンスページを参照してください。
-
-
サーバーXがクラスタの最初のアクティブサーバーになるまで数分待ったあと,サーバーXでnnmcluster -displayコマンドを実行する。
「ACTIVE_NNM_STARTING」または「ACTIVE_SomeOtherState」と表示されていることを確認してください。サーバーXがアクティブサーバーであることを確認するまで手順11.に進まないでください。
-
サーバーYでNNMiクラスタマネージャーを開始する。
nnmcluster -daemon
nnmcluster -daemonコマンドをNNMi管理サーバーYで実行すると,NNMiクラスタマネージャーが次の起動ルーチンを実行します。
-
NNMi管理サーバーYをクラスタに接続します。
-
NNMi管理サーバーXが存在し,アクティブな状態であることが検出されます。画面に「STANDBY_INITIALIZING」と表示されます。
-
NNMi管理サーバーYのデータベースバックアップが NNMi管理サーバーXのバックアップと比較されます。一致しない場合は,新しいデータベースバックアップがNNMi管理サーバーX(アクティブ)からNNMi管理サーバーY(スタンバイ)に送信されます。画面に「STANDBY_RECV_DBZIP」と表示されます。
-
NNMi管理サーバーYは,スタンバイ状態に該当するバックアップに最低限必要となる,トランザクションログの最小限のセットを受信します。画面に「STANDBY_RECV_TXLOGS」と表示されます。
-
NNMi管理サーバーYは待機状態になり,新しいトランザクションログとハートビート信号をNNMi管理サーバーXから受信し続けます。画面に「STANDBY_READY」と表示されます。
詳細については,nnmclusterのリファレンスページを参照してください。
-
-
フェイルオーバーが発生した場合,サーバーXのNNMiコンソールは機能しなくなる。サーバーXのNNMiコンソールセッションを閉じて,サーバーY(新たにアクティブになったサーバー)にサインインする。
NNMiユーザーに,サーバーX(アクティブサーバー)とサーバーY(スタンバイサーバー)への2つのブックマークを登録するように指示します。フェイルオーバーが発生すると,ユーザーはサーバーY(スタンバイNNMi管理サーバー)に接続できます。
-
サーバーXとサーバーYの両方にトラップを送信するように,NNMiの監視対象機器の設定を変更する。
サーバーX(アクティブ)が実行している間,サーバーXは転送されたトラップを処理し,サーバーY(スタンバイ)はそのトラップを無視します。