このポストは
vSphere AppHA への道。Part 7. AppHA ポリシーの作成
のつづきです。
今回は、Web Client で
AppHA ポリシーを VM(のアプリケーション サービス) に割り当てます。
セットアップ手順の流れ
- Hyperic の vApp デプロイ
- Hyperic のセットアップ
- Hyperic への VC 登録
- AppHA の OVA デプロイ
- AppHA と vSphereHA のセットアップ
- Hyperic エージェントの導入
- AppHA ポリシーの作成
- AppHA ポリシーの割り当て★←今回はここ
Hyperic にリソース登録すると、
AppHA で保護されるリソースは Web Client でも
自動的に表示されるようになります。
vCenter のデータセンタ(例だと dc55u1-1 という名前)で
「アプリケーションの可用性」タブを見てみると、
vCenter 関連のアプリケーションサービスと Oracle 11g が表示されています。
クラスタの「管理」→「アプリケーションの可用性」を開いてみます。
データセンタよりも下階層の、
クラスタの「アプリケーションの可用性」タブでは
db01 という VM の、Oracle 11g だけが表示されています。
このように、それぞれのクラスタでは、
そのクラスタに所属している VM のアプリケーションだけを表示します。
ここで、AppHA のポリシーを VM のアプリケーションに割り当ててみます。
「db01」のエントリを選択して、「ポリシーの割り当て」ボタンをクリックします。
前回のポストで作成したポリシー「appha-oracle11g」が表示されているので、
選択して「OK」をクリックします。
保護対象のアプリケーションに AppHA のポリシーが割り当てられました。
これで、AppHA の環境構築ができました。
AppHA の動作確認
■ アプリケーションの自動再起動
それでは、Oracle に障害を発生させてみます。
ためしに、Oracle のバックグラウンドプロセスの1つ(smon)を
kill コマンドで強制終了してみます。
[root@db01 ~]# ps aux | grep smon
oracle 17412 0.0 4.1 652528 84692 ? Ss May11 0:00 ora_smon_orcl
root 17803 0.0 0.0 107520 864 pts/2 S+ 00:21 0:00 grep smon
[root@db01 ~]# kill -KILL 17412
数秒後、AppHA で障害検知しました。
Oracle のインスタンスは、すぐに
Hyperic エージェントによって自動再起動されました。
AppHA のステータスは少し(数分)たってから緑に戻りました。
vCenter では、
「AppHA <ポリシー名>: Service is down」というアラームがトリガーされました。
これは AppHA での障害復旧後も残りますが「緑にリセット」をクリックすると消えます。
■ アプリケーションが自動再起動できなかった場合の動作確認
Oracle が ポリシー設定した「3分」で自動再起動できなかった場合は
VM がリセットされるか試してみました。
先ほど同様、smon の強制停止で Oracle の疑似障害を発生させました。
まず AppHA ではエラー検知をして、
複数回、Hyperic エージェントでの Oracle の再起動をしようとします。
※今回はわざと、自動起動するたびに Oracle を手動停止してみました。
Oracle が自動再起動できず
3分経過すると vSphere HA で、VM がリセットされました。
vCenter では「vSphere HA の仮想マシン監視アクション」という警告がトリガーされます。
VM が起動するまで(Hyperic が監視再開するまで?)は、
「アプリケーションの可用性」画面から
その VM のエントリが見えなくなっていました。
VM が起動すると、エントリが見えるようになり・・・
アプリケーションが自動起動されると、
可用性ステータスも正常な状態に戻りました。
※Hyperic エージェントと Oracle は OS 起動時に自動起動するようにしています。
結構いろいろ設定が必要ですが、
手順を整理すれば、もう少し効率よく設定できそうな気がします・・・
以上、AppHA 環境構築でした。