vCenter Server へのアクセス時にエラー "no healthy upstream" あるいは "503 Service Unavailable" が発生する
search cancel

vCenter Server へのアクセス時にエラー "no healthy upstream" あるいは "503 Service Unavailable" が発生する

book

Article ID: 325739

calendar_today

Updated On:

Products

VMware vCenter Server

Issue/Introduction

免責事項: これは英文の記事「Error : "no healthy upstream" or "503 Service Unavailable" occurs when accessing vCenter Server」の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事を参照してください。

 

  • 1 つ以上の必要なセキュリティ証明書が期限切れであるため、vCenter Server サービスの起動に失敗する、あるいは認証が失敗します。その結果、vSphere Client UI にアクセスできなくなります。

  • 症状:

    • ログイン中に vSphere Client UI がハングしたり、ロードし続けたりする場合があります。
    • エラー "503 Service Unavailable"、あるいは "no healthy upstream" が発生する場合があります。
    • ログインページにエラー "[500] An error occurred while fetching identity providers" が表示される場合があります。
    • VAMI (ポート 5480) にて "[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired" が表示される場合があります。
    • vSphere Client のログイン時に下記のようなエラーが表示される場合があります。
      • "503 Service Unavailable (Failed to connect to endpoint: [N7Vmacore4Http20NamedPipeServiceSpecE:0x...] _serverNamespace = / action = Allow _pipeName =/var/run/vmware/vpxd-webserver-pipe)".
      • "[400] An error occurred while sending an authentication request to the vCenter Single Sign-On server".
      • "Signing certificate is not valid".
    • vCenter インターフェースの警告は、証明書が間もなく切れることを示します。
    • vCenrer の再起動後に vpxd, vpxd-svcs 等のサービスの起動が失敗します。
    • vCert Option 1 は、マシン SSL 証明書、ソリューションユーザー証明書、CA 証明書、SMS 証明書、data-encipherment 証明書、また STS 証明書のような有効期限切れの証明書を表示します。
    • VDT の出力は、有効期限切れの証明書を表示します。

Environment

VMware vCenter Server 6.x / 7.x / 8.x

VMware vCenter 9.x

Cause

この問題は、セキュリティトークンサービス (STS)、マシン SSL、あるいはソリューションユーザー証明書の有効期限が切れている場合に発生します。

Resolution

Prerequisites:

  • 作業前に vCenter Server のバックアップを取得するか、パワーオフ状態の vCenter Server 仮想マシンのスナップショットを作成します。
  • スタンドアローンの vCenter の場合:vCenter VM のスナップショットを取得します (ホストからの取得を推奨します)。
  • 拡張リンクモード (ELM) の場合:リンクされている全ての vCenter Server を同時にパワーオフし、各ノードのスナップショットを取得します (ホストからの取得を推奨します)。VMware vCenter in Enhanced Linked Mode pre-changes snapshot (online or offline) best practice. を参照します。
  • vCenter HA (VCHA) の場合:スナップショットの取得前に VCHA 構成を削除 (破棄) します。

vCenter Server 7.x/8.x, vCenter 9.x の場合:

  1. SSH 経由で root として vCenter Server アプライアンスに接続します。
  2. 下記のコマンドを実行して証明書の期限を確認します。
    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;
  3. 期限切れの証明書を置き換えるために vCert ツールを実行します。期限切れの証明書を特定するために Option 1 を使用し、複数のストアが影響を受けている場合、全ての証明書をリセットするために Option 6 を使用します。
    注:証明書は vCenter の Certificate Manager を使用して置き換えることも可能です。参照:Using vSphere Certificate Manager to Replace SSL Certificates
  4. サービスを再起動します:service-control --stop --all && service-control --start --all
  5. 全てのサービスが稼働していることを確認します:service-control --status --all

vCenter 6.x (Windows、あるいはアプライアンス) の場合:

certificate-manager ユーティリティを使用します:

  1. vCenter Server アプライアンス:/usr/lib/vmware-vmca/bin/certificate-manager
  2. Windows vCenter Server:C:\Program Files\VMware\vCenter Server\vmcad\certificate-manager
  3. VMCA 署名証明書を使用して全ての証明書を再生成するために Option 8 (全ての証明書をリセット) を選択します。
  4. 詳細な手順は、Regenerate vSphere 6.x, 7.x, and 8.0 certificates using self-signed VMCA を参照します。

Additional Information

影響/リスク:

  • 証明書の置き換えの際に問題が発生した場合、vCenter Server がアクセス不能となる可能性があります。作業前には必ず有効なスナップショットを取得していることを確認します。
  • VMDIR LDAP ディレクトリも適切に更新されない可能性があるため、修正が必要な場合があります。「Using the 'lsdoctor' Tool」を参照してください。

関連資料:

 

VMware のドキュメント:

Contact Broadcom support