16.3.1 手動によるアプリケーションフェイルオーバーの設定
アプリケーションフェイルオーバー構成のNNMiを設定するには,次の手順を実行します。
-
マニュアル「JP1/Cm2/Network Node Manager i インストールガイド」に記載のとおり,アクティブサーバー(サーバーX)とスタンバイサーバー(サーバーY)にNNMiをインストールする。
-
マニュアル「JP1/Cm2/Network Node Manager i インストールガイド」の「3.3 NNMiのライセンスを取得する」に記載されているように,各サーバーに恒久ライセンスを導入する。
-
各サーバーでovstopコマンドを実行してNNMiをシャットダウンする。
-
nms-cluster.propertiesファイルに含まれる指示を参考にして,サーバーX(アクティブ)およびサーバーY(スタンバイ)のアプリケーションフェイルオーバー機能を設定する。
次の手順を実行します。次の手順では,ファイルのテキストブロックの行のコメント(先頭の#!)を解除し,テキストを変更することを編集と呼びます。
- a 次のファイルを編集します。
-
Windows
%NnmDataDir%shared\nnm\conf\props\nms-cluster.properties
UNIX
$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
-
NNMiの証明書(nnm.keystoreおよびnnm.truststoreファイル,または認証機関を使用する)を設定する。
選択した方法によって,「8.3 アプリケーションフェイルオーバー機能で自己署名証明書を使用する」に示した指示,または「8.4 アプリケーションフェイルオーバー機能でCA証明書を使用する」に示した指示を実行します。
- 注意事項
-
アプリケーションフェイルオーバー機能を設定するときには,両方のノードのnnm.keystoreファイルおよびnnm.truststoreファイルをマージして,nnm.keystoreファイルおよびnnm.truststoreファイルをそれぞれ1つのファイルにする必要があります。選択した方法の指示を参照してください。
-
次のファイルをサーバーXからサーバーYにコピーする。
コピーする前に,アプリケーションフェイルオーバー構成を解除するときのために元のファイルをバックアップしてください。
- Windows
-
%NnmDataDir%\shared\nnm\conf\nnmcluster\cluster.keystore
- UNIX
-
$NnmDataDir/shared/nnm/conf/nnmcluster/cluster.keystore
-
両ノード間のクラスタ通信に使用するNICを設定する。
詳細については,「16.3.3 アプリケーションフェイルオーバー通信の設定」を参照してください。
-
サーバー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の両方がリストされます。両方のノードの情報が表示されない場合,それらのノードはお互いに通信していません。手順を進める前に,次のことを確認して,修正してください。
-
クラスタ名が,サーバーXとサーバーYで異なっているかどうか。
-
キーCRCが,サーバーXとサーバーYで異なっているかどうか。
サーバーXとサーバーYの両方で,次のファイルの内容を確認してください。
Windows
%NnmDataDir%\shared\nnm\conf\nnmcluster\cluster.keystore
UNIX
$NnmDataDir/shared/nnm/conf/nnmcluster/cluster.keystore
-
サーバーXまたはサーバーYのファイアウォールによって,ノードの通信が妨げられているかどうか。
-
nnm.keystoreファイルとnnm.truststoreファイルを確実にマージしたかどうか。
-
com.hp.ov.nms.cluster.interfaceに指定したNICから取得できるIPアドレスとcom.hp.ov.nms.cluster.member.hostnamesに指定したホスト名から解決できるIPアドレスが一致しているかどうか。
一致していない場合は,NICから取得できるIPアドレスに解決できるホスト名をcom.hp.ov.nms.cluster.member.hostnamesに指定してください
-
相手サーバーの待機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がNNMi10-10を実行しており,サーバーYがNNMi10-10の修正版を実行している場合などです。
-
サーバー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(スタンバイ)はそのトラップを無視します。