vCenter で繰り返し発生するアラート「 vSAN パフォーマンスサービスが有効になっていません」および「 vSAN クラスタ構成の一貫性」について
search cancel

vCenter で繰り返し発生するアラート「 vSAN パフォーマンスサービスが有効になっていません」および「 vSAN クラスタ構成の一貫性」について

book

Article ID: 412031

calendar_today

Updated On:

Products

VMware vSAN

Issue/Introduction

免責事項:これは英文の記事「 Recurring alerts in vCenter "vSAN Performance Service is not enabled" and "'vSAN Cluster Configuration Consistency". 」の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。

  • vCenter UI のイベントページで、ユーザーは vSAN クラスタのパフォーマンスサービスに関する以下の警告を繰り返し受信します。
    • vSAN ヘルスチェック「vSANパフォーマンスサービスの状態を確認」のステータスが「緑」から「黄」に変更されました。
    • 特定の「vSAN_Cluster_Name」上のアラーム「vSANクラスタアラーム 『vSANクラスタ構成の一貫性』 」が緑から黄に変更されました。

その後、同じクラスタのパフォーマンスサービスチェックにおけるvSANスカイラインの健全性状態が更新されると、vCenter UIのイベントページに以下のように表示されます。

    • vSAN 健全性テスト「 vSAN パフォーマンスサービスの状態を確認」の状態が「黄色」から「緑」に変更されました。
    • 特定の「vSAN_Cluster_Name」上のアラーム「 vSAN クラスタアラーム 『 vSAN クラスタ構成の一貫性』」が黄から緑に変更されました。

  • ユーザーが vSAN Skyline Health を確認すると、「 vSANクラスタ構成の一貫性」と「パフォーマンスサービスの状態」に関する警告が表示されます。次のvSAN Skyline Health チェックの反復後、同じアラートは消えます。




  • ヘルス アラートは、vSAN クラスタのサマリー ページにも表示されます。



  • vCenter UI 経由で(vSANクラスタ > 構成 > サービス)で同一クラスタの vSAN パフォーマンスサービスの状態を確認すると、パフォーマンスサービスが有効化され、正常かつ準拠していることが確認できます。

Environment

VMware vSAN 7.0.x

VMware vSAN 8.0.x

Cause

  • このヘルスアラートは、vSAN ヘルスチェックが vSAN パフォーマンス統計オブジェクトを検出できなかったために発生しました。ただし、オブジェクトは存在しています。なぜなら、その後のヘルスチェックの反復処理は成功しており、vSANクラスター>構成>サービスで手動確認したところ、前項で述べた通り、パフォーマンスサービスが有効化され、正常かつ準拠状態にあることが確認できるためです。

    コード内の特定のヘルスチェックを担当する API 呼び出しに定義されているタイムアウトが原因で、一部のヘルスチェックの繰り返しでパフォーマンス統計オブジェクトを取得できませんでした。

  • vSAN ヘルスサービスが「QueryStatsObjectInformation」API の呼び出し時にタイムアウトが発生しました。API のタイムアウトは 10 秒に設定されています。ログサンプルから、この API 呼び出しを実行しているスレッド (766390) が 10 秒以上を要したことが確認できます。これにより API 呼び出しが失敗し、ヘルスアラートが生成されました。関連する抜粋を以下に示します(スレッド番号は環境によって異なる場合があります)。以下のスニペットが取得されたログファイルは vmware-vsan-health-service.log で、vCenter サポートバンドルの「var/log/vmware/vsan-health」フォルダ内に存在します。

yyyy-mm-ddThh:mm:ss.000Z ERROR vsan-mgmt[3244250] [VsanHealthThreadMgmt::join opID=noOpId] Not all tasks are finished with timeout 10
Traceback (most recent call last):
  File "xx/xx/xx/xx/xx/xx.py", line 408, in join
  File "/xx/xx/xx/xx/xx.py", line 241, in as_completed
    raise TimeoutError(
concurrent.futures._base.TimeoutError: 4 (of 4) futures unfinished
.

yyyy-mm-ddThh:mm:ss.000Z INFO vsan-mgmt[766390] [VsanVcPerformanceManagerImpl::QueryClusterHealth opID=noOpId] QueryClusterHealth objInfo: (vim.cluster.VsanObjectInformation) {
  directoryName = 'unknown'
}


++ ユーザーは、同一スレッド(766390)において一部の呼び出しが10秒以上かかることを確認できます。これにより、vCenterのイベントタブおよびvSANスカイラインのヘルスチェックでヘルスアラートが発生します。(スレッド番号は環境によって異なる場合があります)。

yyyy-mm-ddThh:mm:ss.000Z INFO vsan-mgmt[766390] [VsanPyVmomiProfiler::logProfile opID=noOpId] VsanVcObjectHelper.isMismatch: 11.39s, 11.41s, 4.48s, 4.47s, 4.50s, 4.51s

  • vCenter サポートバンドルの「 var/log/vmware/vsan-health 」フォルダにある vmware-vsan-health-summary-result.log ファイルを調査すると、パフォーマンスサービスチェックの失敗に関連する以下のスニペットが見つかるはずです。読みやすさを向上させるため、一部のログは省略されています(日付、時刻、クラスタ名、ESXiホスト名、スレッド番号は環境によって異なる場合があります)。


    ++ ここでスレッド番号は766390であり、特定のクラスターのヘルスチェックに使用されました。

yyyy-mm-ddThh:mm:ss.000Z INFO vsan-mgmt[766390] [VsanHealthSummaryLogUtil::PrintHealthResult opID=noOpId] Cluster xxx Overall Health : yellow

   Group cluster health : yellow

      Test consistentconfig health : yellow
         Issues: Host Disk Issue Recommendation
                 (Host-xxx, '', PerformanceServiceIsTurnedOnInClusterConfiguration,ButItIsNotEnabledYet., Auto-RemediationIsEnabled.See'AskVmware'ForMoreInformation.),

   Group perfsvc health : yellow
      Test perfsvcstatus health : yellow
         Details: Result Status
                  (Yellow, PerformanceServiceIsDisabled)

Resolution

  • これは、特定の vCenter が管理を担当するクラスタの数が膨大なため、API がタイムアウトするまれな状況となります。

  •  回避策として、vmware-vsan-health サービスを再起動して、更新された健全性チェックを取得してください。

    もしくは
  • Cause のセクションで述べたログのスニペットにより、パフォーマンス サービスに問題がないと判断することで、ユーザはヘルス アラートを無視し、抑制することができます。特定の vSAN 健全性チェックを一時的に停止するには、KB「 Silencing a vSAN health check 」を参照してください。

Additional Information