TKG 服務 叢集中安裝並部署 vSphere PVCSI Webhook。vSphere PVCSI Webhook 是一個具有回撥功能的元件,用於回應 CSI 許可請求。它負責驗證 Kubernetes 物件,例如持續性磁片區宣告、持續性磁片區、儲存區類別等。

vSphere PVCSI Webhook 會在 主管 中自動安裝。本主題僅適用於 TKG 服務 叢集。

必要條件

準備 TKG 服務 叢集以安裝 vSphere PVCSI Webhook

可以按照以下步驟準備 TKG 服務 叢集,以安裝 vSphere PVCSI Webhook。

程序

  1. 取得要在其中部署 vSphere PVCSI Webhook 的 TKG 叢集的管理員認證。
    tanzu cluster kubeconfig get my-cluster --admin
  2. 將內容切換到佈建目標 TKG 叢集的 vSphere 命名空間
    kubectl config use-context my-cluster-admin@my-cluster
  3. 如果叢集中沒有已安裝 vsphere-pv-csi-webhook 套件的套件存放庫 (例如 tanzu-standard 存放庫),請安裝一個。
    如果目標叢集是以計劃為基礎的舊版叢集,則可以略過此步驟。對於以計劃為基礎的叢集,將在 tanzu-package-repo-global 命名空間中自動啟用 tanzu-standard 套件存放庫。
    tanzu package repository add PACKAGE-REPO-NAME --url PACKAGE-REPO-ENDPOINT --namespace tkg-system
    • PACKAGE-REPO-NAME 是套件存放庫的名稱 (例如 tanzu-standard),或設定了 ADDITIONAL_IMAGE_REGISTRY 變數的私人映像登錄的名稱。
    • PACKAGE-REPO-ENDPOINT 是套件存放庫的 URL。
  4. 如果尚未執行此作業,請安裝 cert-manager。
    如需相關資訊,請參閱 安裝 Cert Manager

結果

現在,您可以部署 vSphere PVCSI Webhook。

部署 vSphere PVCSI Webhook

可以按照以下步驟,在 TKG 服務 叢集上部署 vSphere PVCSI Webhook。

程序

  1. 確認叢集中存在 vSphere PVCSI Webhook 套件。
    tanzu package available list -A

    如果套件無法使用,請確保已正確安裝包含所需vSphere PVCSI Webhook 套件的套件存放庫。如需相關指示,請參閱準備 TKG 服務 叢集以安裝 vSphere PVCSI Webhook 中的步驟 3。

  2. 取得可用套件的版本。
    tanzu package available list vsphere-pv-csi-webhook.tanzu.vmware.com -A
  3. 安裝具有適當可用版本的套件。
    tanzu package install vsphere-pv-csi-webhook --package vsphere-pv-csi-webhook.tanzu.vmware.com --version AVAILABLE-PACKAGE-VERSION --namespace TARGET-NAMESPACE
    • TARGET-NAMESPACE 指定要安裝 vsphere-pv-csi-webhook 套件的命名空間。
      備註: TARGET-NAMESPACE 必須與安裝 vsphere-pv-csi 套件的命名空間相同。

      如果未指定 --namespace 旗標,Tanzu CLI 會將套件及其資源安裝在預設命名空間中,例如,vsphere-pv-csi-webhook 套件將安裝在 vmware-system-csi 中。指定的命名空間必須已存在,例如,透過執行 kubectl create namespace vmware-system-csi 進行確認。

    • AVAILABLE-PACKAGE-VERSION 指定您在步驟 2 中取得的套件版本。
  4. 確認已安裝vSphere PVCSI Webhook 套件。
    tanzu package installed list -A
    若要查看有關套件的更多詳細資料,還可以執行以下命令:
    tanzu package installed get vsphere-pv-csi-webhook --namespace TARGET-NAMESPACE
  5. 確認已在 TARGET-NAMESPACE 中成功協調 vsphere-pv-csi-webhook 應用程式。
    kubectl get apps -A
    如果狀態不是 Reconcile Succeeded,請檢視 vsphere-pv-csi-webhook 應用程式的完整狀態詳細資料。檢視完整狀態可協助您對問題進行疑難排解。
    kubectl get app vsphere-pv-csi-webhook --namespace TARGET-NAMESPACE -o yaml
    如果疑難排解未協助您解決問題,請使用以下命令解除安裝套件,然後再重新安裝。
    tanzu package installed delete vsphere-pv-csi-webhook --namespace TARGET-NAMESPACE
  6. 透過列出叢集中的所有網繭,確認 vsphere-pv-csi-webhook 正在執行。
    kubectl get pods -A
    確認已在 vmware-system-csi 或 TARGET-NAMESPACE 中建立 vsphere-pv-csi-webhook 網繭。