您匯入的 CA 簽署憑證已到期。

問題

您匯入到 NSX Manager 應用裝置主機的 CA 簽署憑證已到期,您無法繼續使用 NSX Application Platform。您必須委派一份自我簽署的 CA 簽署憑證才能繼續使用 NSX Application Platform 及其託管的 NSX 功能。

原因

CA 簽署憑證的預設到期時間為 825 天。系統自我簽署的憑證會自動更新。如果匯入自訂 CA 簽署憑證,則需要維護該憑證的生命週期。如果您忘記更新該憑證,NSX Application PlatformNSX Manager Unified Appliance 之間的連線會中斷,而且您將無法繼續使用 NSX Application Platform 及其託管的 NSX 功能。

解決方案

  1. 以 root 使用者身分登入 NSX Manager 應用裝置。
  2. NSX Manager 命令提示字元下,使用以下 kubectl 命令來委派自我簽署的 CA 簽署憑證。
    system prompt> kubectl patch certificate ca-cert -n cert-manager --type='json' -p='[{"op": "replace", "path": "/spec/secretName", "value":"ca-key-pair"}]'
  3. 等待大約 30 秒,然後在 NSX Manager 系統提示字元下輸入以下 kubectlcat 命令以匯出輸出憑證 (每次匯出一個)。
    system prompt> kubectl get secret -n nsxi-platform egress-tls-cert -o=jsonpath='{.data.tls\.crt}' | base64 -d - > tls.crt
    system prompt> kubectl get secret -n nsxi-platform egress-tls-cert -o=jsonpath='{.data.ca\.crt}' | base64 -d - > ca.crt
    system prompt> cat tls.crt ca.crt > egress.crt
  4. 使用使用者介面將 egress.crt 匯入到 NSX Manager 應用裝置並取得憑證 UUID。
    1. 從瀏覽器以企業管理員權限登入 NSX Manager,網址為 https://<nsx-manager-ip-address>。
    2. 導覽至系統 > 憑證,按一下匯入,然後從下拉式功能表中選取憑證
    3. 輸入憑證的名稱。
    4. 服務憑證設定為
    5. 憑證內容文字方塊中,貼上您在上一個步驟中建立的 egress.crt 檔案的內容。
    6. 按一下儲存
    7. 在 [憑證] 資料表中,展開所新增憑證的資料列並複製憑證識別碼值。
  5. 回到 NSX Manager 應用裝置 root 使用者工作階段,在系統提示字元下使用以下 curl 命令取得 PricinpleIdentity cloudnative_platform_egress UUID。
    system prompt> curl -ku 'admin:yourAdminPassword' https://127.0.0.1/api/v1/trust-management/principal-identities
  6. 在系統提示字元下,使用以下 curl 命令將 PrincipleIdentity 與匯入的憑證識別碼繫結在一起。
    curl -ku 'admin:yourAdminPassword' https://127.0.0.1/api/v1/trust-management/principal-identities?action=update_certificate -X POST -H "Content-Type: application/json" -H "X-Allow-Overwrite: true" -d '{"principal_identity_id": "<PI-UUID>", "certificate_id": "<EGRESS-CERT-ID>"}'