ただ、基本的には、仮想マシンが動作している物理サーバー上で何らかの障害(たとえば、電源障害によるダウンなど)があったさいに、正常に稼働しているホストで再度、仮想マシンが電源再投入されるだけという、クラスター観点のHAからみたら、そんなんHAというんかいな?という気もしなくもないですが、冗長構成が不可能なアプリケーションやサーバーであっても、手軽に可用性が高められるというのはメリットだと思います。
障害には様々なパターンがありますが、今回ご紹介するのは、
APD・・・All Paths Down (すべてのストレージパスが通信できない)
PDL・・・Permanent Device Loss(ストレージと通信できるが、LUNがない状態など)
こういった状況の時、vSphere5までは、APDに対するハンドリングはないため、仮想マシンはブルースクリーン等で落ちない限り、ずっと動き続ける仕様でした。
PDLに関しては、GUIを介して、PDL時のアクションを選択できるようになりました。
さて、どこで設定するかですが、
クラスターの設定を確認します。
まずは、HAを選択
編集をクリックすると
ここで、まずは、HAをオンにするにチェックを入れないと話が始まりません。
障害状態と仮想マシンの対応をクリックすると、障害ごとの対応の一覧が表示されます。
そうです。この表と下のドロップダウンリストが、連携していて、HAの障害に対する動作を一覧で見ることができます。
しかし、APDの動作を設定しても上の表が変わりません。
おかしいなとおもったら、
こっそり、「ストレージ接続の切断防止」とあります。
そうです、こいつのチェックを入れないと、機能も有効にならずドロップダウンリストでAPDやPDLの動作を選択したところで、一向に思った動作をしてくれません。
このチェックボックス、上の説明とちょっと合っていない気がしますね。
そもそもチェックを入れなければ、APDやPDLのアクションをドロップダウンで選択できないようにしておいてほしいものです。
ということで、APD,PDLはこちらで設定可能です。
ちなみに、Windows Server 2012 R2とiSCSIストレージで、iSCSIに利用しているvmkernel nicをリンクダウンさせると、HA自体は正常に動作しました。
しかし、驚いたことは、通常ならディスクIOが一切何もできなくなるので、Windowsがブルースクリーンになるかと思いきや、ずっとしぶとく待っているんです。その間、PINGも通ります。
HAを無効にして、同じようにAPD状態にし、5分後にAPD状態の解放(iSCSIのパスを復活)させると、何事もなかったかのようにさっくり動き出します。
MSもAzuruで、仮想環境対応をしているからでしょうけど、いわゆる遅延等には結構強くなっているように感じました。(IOTIMEOUTは、レジストリで設定変更可能だったように記憶しています)
逆に、APD/PDLの定義がないと、ずっと処理ができないまま仮想マシンが動作し続けますが、VMTools経由でみたら異常にはならないので、HA動作の対象外だった事を考えると、この機能強化は大変有用が機能だと思います。
0 件のコメント:
コメントを投稿