若要安全地登入 主管TKG 服務 叢集,請使用適當的 TLS 憑證設定 kubectl 適用的 vSphere 外掛程式,並確保您執行的是最新版本的外掛程式。

主管 CA 憑證

vSphere IaaS control plane 支援使用 kubectl 適用的 vSphere 外掛程式 命令 kubectl vsphere login … 透過 vCenter Single Sign-On 存取叢集。

kubectl 適用的 vSphere 外掛程式 預設為安全登入,並且需要受信任的憑證,預設憑證為 vCenter Server 根 CA 簽署的憑證。雖然外掛程式支援 --insecure-skip-tls-verify 旗標,但出於安全考慮,不建議這麼做。

若要使用 kubectl 適用的 vSphere 外掛程式 安全地登入 主管TKG 服務 叢集,則有兩個選項可供使用:
選項 指示

在每個用戶端電腦上下載並安裝 vCenter Server 根 CA 憑證。

對於 Linux,請參閱下部分:為 vCenter 下載受信任的根 CA 憑證,並將其安裝到 Ubuntu 用戶端

對於 Windows 和 Mac,請參閱 VMware 知識庫文章:How to download and install vCenter Server root certificates (如何下載並安裝 vCenter Server 根憑證)。

將用於 主管 的 VIP 憑證取代為每個用戶端電腦信任的 CA 簽署的憑證。

請參閱安裝和設定 vSphere IaaS 控制平面

備註: 如需有關 vSphere 驗證的詳細資訊,包括 vCenter Single Sign-On、管理和輪替 vCenter Server 憑證以及疑難排解,請參閱 vSphere 驗證說明文件。

TKG 叢集 CA 憑證

若要使用 kubectl CLI 安全地與 TKG 叢集 API 伺服器連線,您需要下載 TKG 叢集 CA 憑證。

如果您使用的是最新版本的 kubectl 適用的 vSphere 外掛程式,則在第一次登入 TKG 叢集時,外掛程式會在 kubeconfig 檔案中登錄 TKG 叢集 CA 憑證。此憑證還儲存在名為 TANZU-KUBERNETES-CLUSTER-NAME-ca 的 Kubernetes 密碼中。外掛程式會使用此憑證在對應叢集的憑證授權機構資料存放區中填入 CA 資訊。

如果您已更新 主管,請務必更新至外掛程式的最新版本。

為 vCenter 下載受信任的根 CA 憑證,並將其安裝到 Ubuntu 用戶端

遵循以下程序,在 Ubuntu 用戶端上為 vCenter Server 下載受信任根 CA 憑證並進行安裝,以便您使用 kubectl 適用的 vSphere 外掛程式 安全登入 主管TKG 服務 叢集。
  1. 安裝 kubectl 適用的 vSphere 外掛程式。請參閱安裝 vSphere 適用的 Kubernetes CLI 工具
  2. 為啟用 vCenter Server 工作負載管理 下載受信任的根 CA 憑證。
    wget https://VC-IP-or_FQDN/certs/download.zip --no-check-certificate
  3. download.zip 檔案的內容解壓縮到目前的目錄。
    unzip download.zip -d .
  4. 將路徑變更為 Linux 目錄。
    cd /certs/lin
  5. ls 目錄中列出 (/certs/lin) CA 憑證。

    您應該會看到兩個 PEM 格式的憑證:*.0*.r1。PEM 格式的憑證採用人工可讀的 base64 格式,並且以 ----BEGIN CERTIFICATE---- 開頭。

  6. *.crt 副檔名附加到憑證檔案。例如:
    cp dbad4059.0 dbad4059.0.crt
    cp dbad4059.r1 dbad4059.r1.crt
  7. 將這些檔案複製到 /etc/ssl/certs 中的 OpenSSL 憑證目錄。
    sudo cp dbad4059.0.crt /etc/ssl/certs
    sudo cp dbad4059.r1.crt /etc/ssl/certs
  8. 安全地登入 主管
    kubectl vsphere login --server=IP-or-FQDN --vsphere-username USERNAME
  9. 安全地登入 TKG 服務 叢集。
    kubectl vsphere login --server=IP-or-FQDN --vsphere-username USERNAME --tanzu-kubernetes-cluster-name CLUSTER-NAME --tanzu-kubernetes-cluster-namespace VSPHERE-NS