Instale e implemente el webhook de PVCSI de vSphere en un clúster de Servicio TKG. El webhook de PVCSI de vSphere es un componente con llamada de retorno que responde a las solicitudes de admisión de CSI. Se encarga de la validación de los objetos de Kubernetes, como las notificaciones de volumen persistente, los volúmenes persistentes, las clases de almacenamiento, etc.

El webhook de PVCSI de vSphere se instala de forma automática en Supervisor. Este tema solo se aplica a los clústeres de Servicio TKG.

Requisitos previos

Preparar un clúster de Servicio TKG para la instalación del webhook de PVCSI de vSphere

Siga estos pasos a fin de preparar el clúster de Servicio TKG para la instalación del webhook de PVCSI de vSphere.

Procedimiento

  1. Obtenga las credenciales de administrador del clúster de TKG en el que desea implementar el webhook de PVCSI de vSphere.
    tanzu cluster kubeconfig get my-cluster --admin
  2. Cambie el contexto al espacio de nombres de vSphere donde se aprovisiona el clúster de TKG de destino.
    kubectl config use-context my-cluster-admin@my-cluster
  3. Si el clúster no tiene un repositorio de paquetes con el paquete vsphere-pv-csi-webhook instalado, como el repositorio tanzu-standard, instale uno.
    Puede omitir este paso si el clúster de destino es un clúster heredado basado en planes. Para los clústeres basados en planes, el repositorio de paquetes tanzu-standard se habilita automáticamente en el espacio de nombres tanzu-package-repo-global.
    tanzu package repository add PACKAGE-REPO-NAME --url PACKAGE-REPO-ENDPOINT --namespace tkg-system
    • PACKAGE-REPO-NAME es el nombre del repositorio de paquetes, como tanzu-standard, o el nombre de un registro de imágenes privado configurado con variables ADDITIONAL_IMAGE_REGISTRY.
    • PACKAGE-REPO-ENDPOINT es la URL del repositorio de paquetes.
  4. Instale el archivo administrador de certificados si aún no lo ha hecho.
    Para obtener información, consulte Instalar administrador de certificados.

Resultados

Ahora puede implementar el webhook de PVCSI de vSphere.

Implementar el webhook de PVCSI de vSphere

Siga estos pasos para implementar el webhook de PVCSI de vSphere en un clúster de Servicio TKG.

Procedimiento

  1. Confirme que el paquete del webhook de PVCSI de vSphere esté disponible en el clúster.
    tanzu package available list -A

    Si el paquete no está disponible, asegúrese de que el repositorio de paquetes que contiene el paquete del webhook de PVCSI de vSphere requerido está instalado correctamente. Para obtener instrucciones, consulte el paso 3 de Preparar un clúster de Servicio TKG para la instalación del webhook de PVCSI de vSphere.

  2. Obtenga la versión del paquete disponible.
    tanzu package available list vsphere-pv-csi-webhook.tanzu.vmware.com -A
  3. Instale el paquete con la versión adecuada disponible.
    tanzu package install vsphere-pv-csi-webhook --package vsphere-pv-csi-webhook.tanzu.vmware.com --version AVAILABLE-PACKAGE-VERSION --namespace TARGET-NAMESPACE
    • TARGET-NAMESPACE especifica el espacio de nombres en el que desea instalar el paquete vsphere-pv-csi-webhook.
      Nota: TARGET-NAMESPACE debe ser el mismo que el espacio de nombres en el que está instalado el paquete vsphere-pv-csi.

      Si no especifica la marca --namespace, la CLI de Tanzu instala el paquete y sus recursos en el espacio de nombres predeterminado, como vmware-system-csi para el paquete vsphere-pv-csi-webhook. El espacio de nombres especificado ya debe existir (por ejemplo, al ejecutar kubectl create namespace vmware-system-csi).

    • AVAILABLE-PACKAGE-VERSION especifica la versión del paquete que obtuvo en el paso 2.
  4. Confirme que se haya instalado el paquete del webhook de PVCSI de vSphere.
    tanzu package installed list -A
    Para ver más detalles sobre el paquete, también puede ejecutar el siguiente comando:
    tanzu package installed get vsphere-pv-csi-webhook --namespace TARGET-NAMESPACE
  5. Confirme que la aplicación vsphere-pv-csi-webhook se ha conciliado correctamente en su TARGET-NAMESPACE.
    kubectl get apps -A
    Si el estado no es Reconcile Succeeded, consulte los detalles del estado completo de la aplicación vsphere-pv-csi-webhook. Ver el estado completo puede ayudarle a solucionar el problema.
    kubectl get app vsphere-pv-csi-webhook --namespace TARGET-NAMESPACE -o yaml
    Si la solución de problemas no le ayuda a resolver el problema, desinstale el paquete con el siguiente comando antes de volver a instalarlo.
    tanzu package installed delete vsphere-pv-csi-webhook --namespace TARGET-NAMESPACE
  6. Enumere todos los pods del clúster para confirmar que vsphere-pv-csi-webhook se está ejecutando.
    kubectl get pods -A
    Compruebe que han creado los pods vsphere-pv-csi-webhook en vmware-system-csi O EN TARGET-NAMESPACE.