ホストに障害が発生してホストの仮想マシンを再起動する必要がある場合、仮想マシン再起動の優先順位設定で、仮想マシンが起動する順序を制御できます。また、ホスト隔離時の対応設定を使用して、ホストがほかのホストとの管理ネットワークの接続が失われた場合の vSphere HA の対応を構成することもできます。障害発生後に vSphere HA が仮想マシンを再起動するとき、その他の因子も考慮されます。

ホストの障害または隔離時に、次の設定がクラスタ内のすべての仮想マシンに適用されます。特定の仮想マシンに対して例外を設定することも可能です。個々の仮想マシンのカスタマイズ を参照してください。

仮想マシン再起動の優先順位

仮想マシン再起動の優先順位は、ホストの障害後に仮想マシンにリソースを割り当てる相対順位を決定します。このような仮想マシンは、予約されていない容量を使用してホストに割り当てられます。まず優先順位がもっとも高い仮想マシンが配置され、すべての仮想マシンが配置されるか、仮想マシンの予約またはメモリ オーバーヘッドを満たすだけの使用可能なクラスタ容量がなくなるまで、優先順位の順に仮想マシンの配置が続けられます。ホストはその後、割り当てられた仮想マシンをその優先順位の順に再起動します。リソースが不十分であれば、vSphere HA は予約されていない容量がさらに使用可能になる(ホストがオンライン状態に戻るなど)まで待機し、これらの仮想マシンの配置を再試行します。このような状況が発生する可能性を減らすため、障害に備え、より多くのリソースを予約するように vSphere HA アドミッション コントロールを構成します。アドミッション コントロールにより、仮想マシンによって予約されたクラスタ容量を制御できます。この予約されたクラスタ容量は、障害発生時にその他の仮想マシンの予約およびメモリ オーバーヘッドを満たすためには使用できません。

この設定の値は、次のとおりです。無効、低、中(デフォルト)、および高。無効を選択しても、vSphere HA の仮想マシンとアプリケーションの監視機能で無視されます。これは、この機能により、仮想マシンの障害ではなくオペレーティング システム レベルの障害に対して仮想マシンが保護されるからです。オペレーティング システム レベルの障害が発生すると、vSphere HA によってオペレーティング システムが再起動され、仮想マシンは同じホストで稼動したままになります。この設定は、仮想マシンごとに変更できます。

注:

仮想マシンをリセットすると、ゲスト OS が強制的に再起動されますが、仮想マシンは電源サイクルされません。

仮想マシン再起動の優先順位設定は、ユーザーのニーズによって異なります。最も重要なサービスを提供する仮想マシンに、最も高い再起動の優先順位を割り当てます。

たとえば、多重階層のアプリケーションでは、仮想マシン上にホストされている機能に応じて、割り当てをランク付けすることができます。

  • 高:アプリケーションにデータを提供するデータベース サーバ。

  • 中:データベースのデータを消費し、その結果を Web ページに提供するアプリケーション サーバ。

  • 低:ユーザー要求を受け取り、問い合わせをアプリケーション サーバに渡して、その結果をユーザーに戻す Web サーバ。

ホストに障害が発生すると、vSphere HA は、パワーオンされていて再起動の優先順位設定が無効になっている仮想マシン、またはパワーオフされている、影響を受ける仮想マシンをアクティブなホストに登録しようとします。

ホストの隔離時の対応

ホスト隔離時の対応で、vSphere HA クラスタ内のホストが管理ネットワークに接続できなくなったものの、実行が継続されている場合の対応を決定します。隔離時の対応を使用して、隔離状態にあるホストで実行されている仮想マシンを vSphere HA でパワーオフし、隔離状態にないホストで再起動することができます。ホスト隔離時の対応では、ホスト監視ステータスを有効にする必要があります。ホスト監視ステータスが無効になっていると、ホスト隔離時の対応もサスペンドされます。ホストは、他のホストで実行中のエージェントと通信できず、隔離アドレスに ping できないときに、自身が隔離されていると判断します。その後、ホストは隔離時の対応を実行します。仮想マシンをパワーオフして再起動、または仮想マシンをシャットダウンして再起動するという対応です。個々の仮想マシンのこのプロパティはカスタマイズできます。

注:

仮想マシンで再起動の優先順位設定が無効になっていると、ホスト隔離時の対応は行われません。

仮想マシンをシャットダウンして再起動する設定を使用するには、仮想マシンのゲスト OS に VMware Tools をインストールする必要があります。仮想マシンをシャットダウンすることには、仮想マシンの状態を保存できるというメリットがあります。ディスクへの最新の変更がフラッシュされず、トランザクションがコミットされないため、仮想マシンのシャットダウンはパワーオフよりも優れています。シャットダウン途中の仮想マシンは、シャットダウンが完了するまでフェイルオーバーに時間がかかります。300 秒以内または詳細オプション das.isolationshutdowntimeout で指定した時間以内にシャットダウンしない仮想マシンは、パワーオフされます。

vSphere HA クラスタを作成したあとで、特定の仮想マシンの再起動優先順位および隔離時の対応についてデフォルトのクラスタ設定をオーバーライドできます。このようなオーバーライドは、特別なタスクで使用される仮想マシンでは非常に便利です。たとえば、DNS や DHCP などのインフラストラクチャ サービスを提供する仮想マシンは、クラスタ内のほかの仮想マシンより前にパワーオンする必要があることがあります。

マスター ホストからホストが隔離されるかパーティション化され、マスター ホストがハートビート データストアを使用してホストと通信できない場合に、仮想マシンの「スプリット ブレイン」状態が発生することがあります。この場合、マスター ホストはホストが活動中かどうかを判断できないため、ホストが非活動であると宣言します。その後マスター ホストは、隔離されているか、パーティション化されているホスト上で実行されている仮想マシンの再起動を試みます。仮想マシンが隔離/パーティション化されているホスト上で実行されていて、そのホストが隔離されたかパーティション化されたときにそのホストが仮想マシンのデータストアにアクセスできなくなった場合、この再起動の試行は成功します。この後、仮想マシンのインスタンスが 2 つ存在するため、スプリット ブレイン状態が発生します。ただし、1 つのインスタンスのみが仮想マシンの仮想ディスクを読み書きできます。仮想マシンのコンポーネント保護を使用することにより、このスプリット ブレイン状態を防ぐことができます。積極的設定で VMCP を有効にすると、VMCP は、パワーオンされた仮想マシンがデータストアにアクセスできるかどうかを監視し、データストアにアクセスできない仮想マシンをシャットダウンします。

この状況から回復するため、ESXi は、ディスク ロックを喪失した仮想マシンについて、ホストがいつ隔離状態から離脱してディスク ロックを再取得できなくなったかという問い合わせを生成します。vSphere HA は自動的にこの問い合わせに応答し、ディスク ロックを喪失した仮想マシンのインスタンスをパワーオフし、ディスク ロックを保持するインスタンスをそのままにします。

仮想マシンの再起動に関して考慮される因子

障害発生後、クラスタのマスター ホストは仮想マシンをパワーオンできるホストを識別して、影響を受けた仮想マシンの再起動を試みます。このようなホストを選択するとき、マスター ホストはいくつもの因子を考慮します。

ファイルのアクセシビリティ

仮想マシンが起動可能になるには、マスターがネットワーク経由で通信できるアクティブなクラスタ ホストのいずれかから、仮想マシンのファイルがアクセス可能である必要があります。

仮想マシンとホストとの互換性

アクセス可能なホストが存在する場合、仮想マシンは、そのうちの少なくとも 1 つと互換性がある必要があります。仮想マシンの互換性設定には、あらゆる必要な仮想マシンとホスト間のアフィニティ ルールの影響が含まれます。たとえば、ルールにより仮想マシンが 2 つのホスト上でのみ実行可能な場合、それら 2 つのホストに配置することが考慮されます。

リソースの予約

仮想マシンを実行可能なホストのうちの少なくとも 1 つには、仮想マシンのメモリ オーバーヘッドおよび任意のリソース予約を満たすのに十分な予約されていない容量が必要です。CPU、メモリ、vNIC、および仮想フラッシュの 4 種類の予約が考慮されます。また、仮想マシンをパワーオンするのに十分なネットワーク ポートも使用可能である必要があります。

ホスト制限

リソース予約に加えて、許可される仮想マシン数または使用中の vCPU 数の最大数を超えない場合にのみ、仮想マシンをホストに配置できます。

機能の制約

vSphere HA の詳細オプションが、仮想マシンと仮想マシン間の非アフィニティ ルールを強制するように設定されている場合、vSphere HA はこのルールに違反しません。また vSphere HA は、フォールト トレランス機能を持つ仮想マシンのホストごとに構成された制限のいずれにも違反しません。

上述の考慮事項を満たすホストが存在しない場合、マスター ホストは、vSphere HA が仮想マシンを起動するのに十分なリソースが存在しないことを表すイベントを発行し、クラスタの状態が変更されたときに再試行します。たとえば、仮想マシンにアクセスできない場合、マスター ホストは、ファイルがアクセス可能になった後に再試行します。

仮想マシン再起動の試行回数の制限

vSphere HA マスター エージェントが仮想マシンの再起動(登録とパワーオン)を試行して失敗する場合、待機時間後に再起動が再試行されます。vSphere HA はこの再起動を最大再試行回数(デフォルトで 6 回)まで試みます。ただし、この最大再試行回数にカウントされない再起動の失敗もあります。

たとえば、再起動の試行が失敗するもっとも一般的な理由は、仮想マシンが別のホストで実行中である、または vSphere HA が再試行を失敗してからすぐに仮想マシンの再起動を試みたためです。このような状況では、マスター エージェントは前回の試行で設けられた待機時間の 2 倍の待機時間を設けてから再試行します。最短の待機時間は 1 分間、最長の待機時間は 30 分間です。このため、待機時間が 1 分間に設定されていて、初回の試行が T=0 に行われたとすると、その後の試行は T=1(1 分後)、T=3(3 分後)、T=7(7 分後)、T=15(15 分後)、T=30(30 分後)に行われます。このような試行はそれぞれ最大再試行回数にカウントされ、デフォルトで 6 回の試行のみが行われます。

その他の再起動の失敗では、再試行はカウント対象ですが、待機時間の間隔が異なります。このようなシナリオの例は、マスター エージェントがホストを選択した後に、仮想マシンの再起動先として選択されたホストが、仮想マシンのいずれかのデータストアにアクセスできなくなった場合です。この場合、再試行はデフォルトの待機時間である 2 分後に行われます。この試行も最大再試行回数にカウントされます。

最後に、カウントされない再試行の例を挙げます。マスター エージェントが再起動要求を発行する前に、仮想マシンの再起動先となるはずのホストに障害が発生した場合、2 分後に再試行されますが、この失敗は最大再試行回数にはカウントされません。

仮想マシンの再起動の通知

vSphere HA は、クラスタ内の仮想マシンのフェイルオーバー操作が進行中である場合に、クラスタ イベントを生成します。イベントにより、クラスタ サマリ タブに構成の問題も表示されます。ここには、再起動される仮想マシン数が表示されます。これらの仮想マシンは 4 つのカテゴリに分類されます。

  • 配置されている仮想マシン: vSphere HA は、これらの仮想マシンの再起動を試行しています

  • 再試行を待機中の仮想マシン:前回の再起動の試行が失敗したため、vSphere HA は待機中です。待機時間が経過したら再試行します。

  • 追加リソースが必要な仮想マシン:これらの仮想マシンを再起動できるだけのリソースが十分ではありません。さらに多くのリソースが使用可能になったとき(ホストがオンライン状態に戻ったとき)に、vSphere HA は再試行します。

  • アクセス不能な Virtual SAN 仮想マシン: Virtual SAN 仮想マシンがアクセス不能なため、vSphere HA はこれらの VSAN 仮想マシンを再起動できません。アクセシビリティに変更があったときに再試行します。

実行中の再起動操作が対象とする仮想マシン数に変更が見られた場合は、これらの仮想マシン数が動的に更新されます。vSphere HA がすべての仮想マシンを再起動したか、試行を断念した場合、構成の問題はクリアされます。

vSphere 5.5 以前では、仮想マシンを再起動する試行が失敗すると、仮想マシンごとのイベントがトリガされます。vSphere 6.x ではこのイベントはデフォルトで無効になっていますが、vSphere HA の詳細オプション das.config.fdm.reportfailoverfailevent を 1 に設定することで有効にできます。