ESXiホストが起動時に切断される
search cancel

ESXiホストが起動時に切断される

book

Article ID: 431321

calendar_today

Updated On:

Products

VMware NSX

Issue/Introduction

免責事項:これは英文の記事「ESXi host is disconnected on startup」の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。

  • 以下の API で TN 証明書を置き換えました。
    POST api/v1/trust-management/certificates/action/replace-host-certificate/<TN_UUID>

  • API 要求には「\n」が 2 つだけ含まれています。
    request.json の例:
    {
        "display_name": "cert_sample",
        "pem_encoded": "-----BEGIN CERTIFICATE-----\n<cert>\n-----END CERTIFICATE-----",
        "private_key": "-----BEGIN PRIVATE KEY-----\n<private_key>\n-----END PRIVATE KEY-----"
    }

    上記の例では「\n」が 2 つしか含まれていないことがわかります。

  • 証明書が POST api/v1/trust-management/certificates/action/replace-host-certificate/<TN_UUID> によって置き換えられた後、ESXi ホスト上で wc コマンドで行数をカウントすると「host-cert.pem」は 2 行以下です。
    wc -l /etc/vmware/nsx/host-cert.pem
    2 /etc/vmware/nsx/host-cert.pem

  • nsx-proxyサービスが起動されました。
    以下のような操作でも nsx-proxy が起動されます。
    • /etc/init.d/nsx-proxy restart コマンドによって nsx-proxy を再起動する
    • ESXi ホストを再起動する
    • ESXi ホストをアップグレードする

  • /var/log/nsx-syslog.log にある nsx-syslog を見ると nsx-proxy は NSX Manager への接続できていないことがわかります。
    <TIMESTAMP> Wa(180) nsx-proxy[<PID>]: NSX <PID> - [nsx@6876 comp="nsx-esx" subcomp="nsx-proxy" s2comp="nsx-rpc" tid="<TID>" level="WARNING"] RpcConnection[522067 Connecting to ssl://<NSX_MANAGER>:1235 0] Couldn't connect to ssl://<NSX_MANAGER>:1235 (error: 336151574-sslv3 alert certificate unknown)

  • /var/log/syslog にある syslog を見ると nsx-proxy が /etc/vmware/nsx/host-cert.pem に新しい証明書を作成していて、古い既存の証明書を削除していることがわかります。
    <TIMESTAMP> In(<INT>) NSX[<PID>]: Generating the certificate
    <TIMESTAMP> In(<INT>) NSX[<PID>]: Generating host certificate with TN uuid = .
    <TIMESTAMP> In(<INT>) NSX[<PID>]: Deleting the /etc/vmware/nsx/host-privkey.pem and /etc/vmware/nsx/host-cert.pem.

  • 証明書は /etc/vmware/nsx/host-cert.pem にあります。. "Not Before" が nsx-proxy によって証明書が置き換えられた日付を指しています。
    openssl x509 -in /etc/vmware/nsx/host-cert.pem -text -noout
            Validity
                Not Before: <TIMESTAMP>

Environment

NSX 4.x

Cause

nsx-proxyは、wcコマンドを使用してホスト証明書の行数が2行より多いかを検証します。
2 行以下の場合、nsx-proxyは新しい証明書を生成し、元の証明書を置き換えます。

新しく生成された証明書は NSX Manager によって信頼されていないため、ESXi ホストからの接続は NSX Manager によって拒否されます。

Resolution

切断状態から復元するには、ESXi ホストから NSX Manager にホスト証明書をプッシュします。

  1. NSX Manager に管理者としてログインして、NSX Manager のサムプリントを識別します: get certificate api thumbprint
  2. 新しい証明書とキーのペアをマネージャーにプッシュするには、ホストの root ユーザーから次のコマンドを実行します:
    nsxcli -c "push host-certificate <Manager hostname-or-IP> username admin thumbprint <thumbprint from step 1>"