Puede actualizar un clúster de TKG si cambia la clase de almacenamiento que utilizan los nodos del clúster.

Para iniciar una actualización gradual de un clúster de TKG, cambie el valor del parámetro storageClass en la especificación del clúster mediante el comando kubectl edit.
Nota: No se puede usar el comando kubectl apply para actualizar un clúster de TKG implementado.

Requisitos previos

Esta tarea requiere el uso del comando de edición kubectl. Este comando abre el manifiesto del clúster en el editor de texto definido por las variables de entorno KUBE_EDITOR o EDITOR. Al guardar el archivo, el clúster se actualiza con los cambios. Para configurar un editor para kubectl, consulte Configurar un editor de texto para Kubectl.

Procedimiento

  1. Realice la autenticación con Supervisor.
    kubectl vsphere login --server=IP-ADDRESS --vsphere-username USERNAME
  2. Cambie el contexto al espacio de nombres de vSphere donde se aprovisiona el clúster de carga de trabajo de destino.
    kubectl config use-context SUPERVISOR-NAMESPACE
  3. Para determinar las clases de almacenamiento disponibles y decidir cuál debe usar, ejecute el siguiente comando.
    kubectl describe tanzukubernetescluster CLUSTER-NAME
  4. Ejecute el siguiente comando para editar el manifiesto del clúster.
    Clúster v1alpha3:
    kubectl edit tanzukubernetescluster/CLUSTER-NAME
    Clúster v1beta1:
    kubectl edit cluster/CLUSTER-NAME
  5. Edite el manifiesto cambiando el valor de storageClass.
    Por ejemplo, para un clúster v1alpaha3, cambie el manifiesto del clúster de la clase silver-storage-class para los nodos de trabajo y el plano de control:
    spec:
      topology:
        controlPlane:
          ...
          storageClass: silver-storage-class
        workers:
          ...      
          storageClass: silver-storage-class
    Si desea usar la clase gold-storage-class para los nodos de trabajo y el plano de control:
    spec:
      topology:
        controlPlane:
          ...
          storageClass: gold-storage-class
        workers:
          ...      
          storageClass: gold-storage-class
    Del mismo modo, si aprovisionó un clúster v1beta1, actualice el valor de variables.storageclass en la especificación del clúster con el nombre de la clase de almacenamiento.
  6. Guarde los cambios que hizo en el archivo de manifiesto.
    Cuando guarde el archivo, kubectl aplicará los cambios al clúster. En segundo plano, Tanzu Kubernetes Grid aprovisiona las máquinas virtuales del nuevo nodo y reduce la velocidad de las antiguas.
  7. Compruebe que kubectl notifique el correcto registro de los cambios en el manifiesto.
    kubectl edit tanzukubernetescluster/tkgs-cluster-1
    tanzukubernetescluster.run.tanzu.vmware.com/tkgs-cluster-1 edited
    Nota: Si recibe un error, o kubectl no informa de que el manifiesto del clúster se editó correctamente, asegúrese de haber configurado bien el editor de texto predeterminado con la variable de entorno KUBE_EDITOR. Consulte Configurar un editor de texto para Kubectl.
  8. Compruebe que el clúster se haya actualizado.
    Clúster v1alpha3:
    kubectl get tanzukubernetescluster
    Clúster v1beta1:
    kubectl get cluster