マシン SSL 証明書の期限切れにより vCenter Server が拡張リンクモードのインベントリに表示されない
search cancel

マシン SSL 証明書の期限切れにより vCenter Server が拡張リンクモードのインベントリに表示されない

book

Article ID: 449868

calendar_today

Updated On:

Products

VMware vCenter Server

Issue/Introduction

免責事項: これは英文の記事「vCenter Server not visible in Enhanced Linked Mode inventory due to expired Machine SSL certificate」の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。

  • 他の vCenter Server が表示されている場合でも、特定の vCenter Server が "リンクされた vCenter Server システム" 画面に表示されません。
  • 影響を受ける vCenter Server を確認すると、次のように複数の vCenter サービスが停止し、起動に失敗していることがわかります。
    vmware-certificatemanagement, vmware-vpxd-svcs, vmware-topologysvc, vmware-vsan-health, vmware-hvc, vmware-sps, and vstats

  • 拡張リンク モードであっても、影響を受ける vCenter Server は vCenter Server インベントリに表示されません。
  • vCenter UI に次のエラーが表示されます。
     1 台以上の vCenter Server システムに接続できませんでした: https://<vCenter_fqdn>:443/sdk

  • /var/log/vmware/vmon/vmon.log に次のエラーが記録されます。
    File "/usr/lib/python3.7/ssl.py", line ##, in do_handshake
      self._sslobj.do_handshake()
    ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:###)
  • for store in $(/usr/lib/vmware-vmafd/bin/vecs-cli store list | grep -v TRUSTED_ROOT_CRLS); do echo "[*] Store :" $store; /usr/lib/vmware-vmafd/bin/vecs-cli entry list --store $store --text | grep -ie "Alias" -ie "Not After";done; を実行すると、 __MACHINE_CERT エイリアスの Not After が過去の日付であることが示されます。

Environment

  • VMware vCenter Server 7.x
  • VMware vCenter Server 8.x

Cause

1 つ以上の vCenter Server ノードでマシン SSL 証明書が期限切れの状態となっています。ELM 環境でマシン SSL 証明書の有効期限を超過すると、Lookup Service および vSphere Client はリモートノードでの認証に失敗します。

Resolution

  1. SSO ドメインに存在する全 vCenter Server ノードに対して、オフライン (パワーオフ状態) スナップショットを作成します。「Snapshot Best practices for vCenter Server Virtual Machines」を参照してください。
  2. 影響を受ける vCenter Server に root として SSH ログインします。
  3. vCert ユーティリティをダウンロードして実行します。「vCert - Scripted vCenter expired certificate replacement」を参照してください。
  4. [Option 3 (Manage certificates)] を選択し、次に [Option 1 (Machine SSL)] を選択します。
  5. サービスの接続を即座に回復するには、[Option 1 (Replace with VMCA-signed certificate)] を選択します。
  6. 次のコマンドを使用して、すべてのサービスを再起動します。 service-control --stop --all && service-control --start --all
  7. vSphere Client で ELM 接続を確認します。
    ※ インベントリ上に対象の vCenter Server が再び表示されていることを確認します。

Additional Information

注: 環境でカスタム CA 署名付き証明書が必要な場合、UI へのアクセスが回復した後に vSphere Client UI ([管理] > [証明書の管理]) を使用して新しい CSR を生成し、新しいカスタム CA 証明書をインポートします。「vCenter Machine SSL Certificate Replacement with Custom CA-Signed Certificate via vSphere Client UI」を参照してください。