グローバルサポート vSAN

[GS Newsletter] vSAN ホストが「応答なし」になった場合の対応について

こんにちは。VMware グローバルサポート Newsletter 担当者です。
今月のトピックでは、vSAN ホストが「応答なし」になった場合の対応について、
トラブル対応時の状況把握をガイドする内容となっております。
障害時にどの様に動作するかを確認いただき、トラブルシューティングの際にお役立てください。


1.検証環境

今回は以下のバージョンで検証を行っております。

  • ESXi 7.0 U2 build-17630552
  • vCenter Server 7.0 U2b (Build-17958471)
  • vSAN 7.0 (vSAN ディスク フォーマット バージョン14)

2.構成

vSAN クラスタは以下の構成となっています。

 

ノード数 4台 ( ノード名: vsan701, vsan702, vsan703, vsan704 )
ストレージタイプ オールフラッシュ
デデュープおよび圧縮 無効
暗号化 無効
ディスクグループ 各 ESXi ホストに 1 つ
ディスク構成 キャッシュディスク x1
キャパシティディスク x1

3.ケーススタディ

応答なしの状況を確認してからの対応方法について説明します。
何らかの障害報告やアラーム検知により vCenter にログインしたところ、vSAN ホストが「応答なし」となっていた状況を想定しています。
まずは vSphere 観点での対応を行い、次に vSAN 観点でのストレージ、ネットワークの対応を UI やコマンドを用いて切り分けていきます。

3-1vSAN ホストが「応答なし」になった場合
vCenter 上から vSAN ホストが「応答なし」となった場合、該当ホストと該当ホスト上で起動している仮想マシンが画像の様に表示されます。


この状況は、vCenter が該当ホストの管理サービス (hostd) とコミュニケーションが行えない場合に発生するため、仮想マシンとサービスには問題がない場合もあります。

まずは切断状態にある仮想マシンのサービスをチェックいただき、サービス影響の有無を確認ください。

  1. ping に応答するか
  2. サービスの応答があるか (webやその他のレスポンス)
  3. ゲストOSが操作可能か (ssh, rdpなど)
  4. 遅延の有無 (正常時との違い)

次に該当ホストのネットワーク、サービスの正常性を確認ください。

    1. ping に応答するか
    2. ssh ログイン可能か
    3. Host Client (https://esxiのアドレス/ui) から操作可能か
  1. モニター画面 (コンソール) からログイン可能か
  2. モニター画面 (コンソール) の Alt + F12 で vmkernel のログが表示されるか

3-2hostd の再起動による切り分け
ping, ssh に応答するが host client でログイン出来ない場合、hostd が応答してないかサービス自体が停止している場合があります。
この場合は hostd を再起動して、状況が改善するか確認ください。
以下は実行例となります。


[root@vsan701:~] /etc/init.d/hostd stop
watchdog-hostd: Terminating watchdog process with PID 554075
hostd stopped.[root@vsan701:~] /etc/init.d/hostd start
hostd started.

応答なしが解消された場合は vMotion が実施できるようになるため、以下の対応が可能になります。

  • 該当ホスト上で動作していた仮想マシンを別ホストに vMotion で待避させる
  • 問題が特定されるまで該当ホストをメンテナンスモードに移行する
  • ホストの再起動や故障デバイスの交換

3-3hostd の再起動で改善しなかった場合
hostd サービス再起動後も応答なしが継続する場合、該当ホストのストレージやネットワークに起因した問題がないか確認を進めていきます。
該当ホストと正常なホストそれぞれで vSAN 関連のコマンドを実行し、vSAN 観点で状況を把握します。

3-4vSAN オブジェクトの健全性の確認
注: file: はログバンドル取得時のファイルパスとなります。


file: commands/localcli_vsan-debug-object-health-summary.txt
localcli vsan debug object health summary get
Health Status Number Of Objects
—————————————————— —————–
remoteAccessible 0
inaccessible 0
reduced-availability-with-no-rebuild 0
reduced-availability-with-no-rebuild-delay-timer 0
reducedavailabilitywithpolicypending 0
reducedavailabilitywithpolicypendingfailed 0
reduced-availability-with-active-rebuild 0
reducedavailabilitywithpausedrebuild 0
data-move 0
healthy 7

vSAN オブジェクトの健全性カウントは以下の状況を示しています。

healthy:         冗長性が低下している vSAN オブジェクトはありません。
reduced〜:     冗長性が低下しているオブジェクトがあります。障害が発生しているホストを確認します。
Inaccessible:  アクセスできないオブジェクトがあります。ミラーなしのオブジェクトでない限り、複数のホストで障害が発生しています。次項の物理配置を確認いただき、該当ホスト、ディスクの確認を進めてください。

3-5vSAN オブジェクトの物理配置の確認
冗長性が低下している、アクセスできないオブジェクトが関係するホストやディスクを確認します。
vCenter から、対象 vSAN クラスタ > 監視 > vSAN > 仮想オブジェクト を辿り、仮想オブジェクトの一覧から、可用性が低下しているオブジェクトを確認します。

ここでは、vm: nesk02 のハードディスク1の冗長性が低下していることがわかります。
確認したいオブジェクトをチェックして、「配置の詳細の表示」を押すことで、物理的な配置が確認出来ます。

ここでは、vsan703 ホストで問題があることがわかります。
「ホスト配列別のグループコンポーネント」をチェックすることで、問題のあるホストとディスクグループ、物理ディスクが確認出来ます。

障害の発生しているホストやディスクが把握出来た場合は、物理的な問題の調査や交換、ホストの再起動などを調整ください。
特に複数のホストで障害が発生している場合は Inaccessibleとなっているオブジェクトが多く、復旧のための手順に注意が必要となってきます。
障害は様々なケースがあるため、対応については必要に応じて弊社サポートをご利用ください。

3-6vSAN クラスタノードのネットワーク接続状況
vSAN ネットワークに問題が発生していないかは、以下のコマンドで確認します。

注: file: はログバンドル取得時のファイルパスとなります。


file: commands/localcli_vsan-cluster-get.txt
localcli vsan cluster get
Cluster Information:
Enabled: true
Current Local Time: 2021-07-18T18:07:45Z
Local Node UUID: 60dddf1e-416b-e7b0-4788-0050568e1c12
Local Node Type: NORMAL
Local Node State: MASTER
Local Node Health State: HEALTHY
Sub-Cluster Master UUID: 60dddf1e-416b-e7b0-4788-0050568e1c12
Sub-Cluster Backup UUID: 60dddf65-d765-635f-f22f-0050568eac88
Sub-Cluster UUID: 5267b4c0-4d26-f6ea-f610-38539e7f3a3c
Sub-Cluster Membership Entry Revision: 3
Sub-Cluster Member Count: 4
Sub-Cluster Member UUIDs: 60dddf65-d765-635f-f22f-0050568eac88, 60dddf1e-416b-e7b0-4788-0050568e1c12, 60dde00c-e242-3e50-c5b4-0050568e65f9, 60dde029-ca71-e2c4-79c4-0050568e1a57
Sub-Cluster Member HostNames: vsan701.chinon.labs, vsan702.chinon.labs, vsan703.chinon.labs, vsan704.chinon.labs
Sub-Cluster Membership UUID: 9c16f060-f8af-1e61-7426-0050568e1c12
Unicast Mode Enabled: true
Maintenance Mode State: OFF
Config Generation: d5bccdc0-fc62-4795-b2b1-9e50f2ee5f59 3 2021-07-17T11:12:23.388
Mode: REGULAR

Member Count は vSAN クラスタノードとして認識出来ているホスト数になります。
この数はメンテナンスモードの有無にかかわらず増減することはありません。
構成ホスト数より少ない場合は、Member HostNames を確認いただき、孤立しているホストを特定ください。
クラスタメンバが孤立し、分割されている状況をネットワークパーティションと呼びますが、ネットワーク通信出来ていないか構成上の問題を抱えているため、以下の様な切り分けを実施ください。

  • 各ホストから該当ホストへの Ping 応答 (宛先: vSAN 用 vmk I/F に割り当てた IP)
  • vSAN 用 NIC の Down イベント
  • 対向スイッチのエラーカウント

切り離されているノードが1台の場合は、該当ホストのネットワークに問題があるためネットワーク経路の確認が必要になります。また、問題のホスト上では vSAN ストレージにアクセス出来ていない状況が考えられるため、仮想マシンのサービスが停止しているなど影響が顕在化している場合もあります。
応答なしが復帰せず、仮想マシンにも影響が出ている場合は、強制的にホストを再起動するなどの対応を検討する事になりますが、オブジェクトの健全性から該当ホスト以外に問題のあるホストがいない事を確認するなど、状況の確認が重要です。

4終わりに

vSAN ホストが「応答なし」になった場合の対応についてご紹介いたしました。
応答なしが継続する場合は緊急の対応が必要な状況が多く、弊社にお問い合わせいただく事も多いかと存じます。
弊社エンジニアもまずは上記の様に仮想マシン、ホスト、ストレージ、ネットワークと状況を確認いたしますので、お役立ていただきたいと存じます。