Actualizar clústeres de carga de trabajo

En este tema se explica cómo actualizar los clústeres de carga de trabajo de Tanzu Kubernetes Grid (TKG). Para TKG con un clúster de administración independiente, primero debe actualizar el clúster de administración que administra los clústeres de carga de trabajo.

Importante

  • Si va a actualizar los clústeres de carga de trabajo que implementó con supervisor en vSphere 8, consulte Actualizar clústeres implementados por supervisor (solo vSphere 8) en Crear y administrar clústeres de carga de trabajo de TKG 2.2 con CLI de Tanzu.
  • Los clústeres de carga de trabajo y clústeres de administración independientes utilizan certificados de cliente para autenticar clientes. Estos certificados son válidos durante un año. Para renovarlos, actualice los clústeres al menos una vez al año.
  • TKG no admite la actualización de clústeres que ejecutan versiones anteriores de TKr tiny. Para actualizar un clúster mínimo de nodo único a la versión más reciente de TKr tiny, debe eliminar el clúster anterior y crear uno nuevo. Consulte Clústeres de un solo nodo en vSphere para obtener información sobre TKr tiny.

Requisitos previos

Requisitos previos de infraestructura

vSphere
Si va a actualizar clústeres que se ejecutan en vSphere, antes de poder actualizar los clústeres a una versión no predeterminada de Kubernetes para su versión de Tanzu Kubernetes Grid, los archivos OVA de plantilla de imagen base adecuados deben estar disponibles en vSphere como plantillas de máquina virtual. Para obtener información sobre la importación de archivos OVA en vSphere, consulte la pestaña vSphere en Preparar para actualizar clústeres.
AWS
Si va a actualizar clústeres que se ejecutan en Amazon Web Services (AWS), las imágenes de máquina de Amazon (AMI) de Amazon Linux 2 que incluyen las versiones de Kubernetes compatibles estarán disponibles públicamente para todos los usuarios de AWS, en todas las regiones de AWS compatibles. Tanzu Kubernetes Grid utiliza automáticamente la AMI adecuada para la versión de Kubernetes que se especifica durante la actualización.
Azure
Si va a actualizar clústeres que se ejecutan en Azure, asegúrese de completar los pasos descritos en la pestaña Azure en Preparar para actualizar clústeres.


Procedimiento

El proceso de actualización actualiza la versión de Kubernetes en todos los nodos de trabajo y plano de control de los clústeres de carga de trabajo.

  1. Para ver una lista interactiva de clústeres de administración disponibles y seleccionar el clúster de administración que administra los clústeres que desea actualizar, ejecute el comando tanzu login:

    tanzu login
    
  2. Para enumerar los clústeres de carga de trabajo, ejecute:

    tanzu cluster list --include-management-cluster -A
    

    El comando tanzu cluster list con las opciones --include-management-cluster -A muestra la versión de Kubernetes que se ejecuta en el clúster de administración y todos los clústeres que administra. En este ejemplo, puede ver que el clúster de administración ya se actualizó a la versión 1.25.7, pero los clústeres de carga de trabajo ejecutan versiones anteriores de Kubernetes.

    NAME                 NAMESPACE   STATUS    CONTROLPLANE  WORKERS  KUBERNETES         ROLES       PLAN  TKR
    k8s-1-23-16-cluster  default     running   1/1           1/1      v1.23.16+vmware.1  <none>      dev   v1.23.16---vmware.1-tkg.1
    k8s-1-24-10-cluster  default     running   1/1           1/1      1.24.10+vmware.1   <none>      dev   1.24.10---vmware.1-tkg.1
    mgmt-cluster         tkg-system  running   1/1           1/1      v1.25.7+vmware.1   management  dev   v1.25.7---vmware.1-tkg.1
    
  3. Para descubrir qué versiones de Kubernetes están disponibles mediante un clúster de administración, ejecute el comando tanzu kubernetes-release get:

    tanzu kubernetes-release get
    

    El resultado enumera todas las versiones de Kubernetes que se pueden utilizar para implementar clústeres, con las siguientes notas:

    • COMPATIBLE: El clúster de administración actual puede implementar clústeres de carga de trabajo con esta versión de Tanzu Kubernetes (tkr).
    • UPDATES AVAILABLE: Este tkr no es el más reciente en su línea de versión de Kubernetes. Cualquier clúster de carga de trabajo que ejecute esta versión de tkr se puede actualizar a versiones más recientes.

    Por ejemplo:

    NAME                       VERSION                  COMPATIBLE  ACTIVE  UPDATES AVAILABLE
    v1.23.16---vmware.1-tkg.1  v1.23.16+vmware.1-tkg.1  True        True
    v1.24.11---vmware.1-tkg.1  v1.24.11+vmware.1-tkg.1  True        True
    v1.25.7---vmware.1-tkg.1   v1.25.7+vmware.1-tkg.1   True        True
    
  4. Para detectar las versiones más recientes de tkr a las que puede actualizar un clúster de carga de trabajo que ejecuta una versión anterior de tkr, ejecute el comando tanzu kubernetes-release available-upgrades get especificando la versión actual de tkr:

    tanzu kubernetes-release available-upgrades get 1.22.17---vmware.1-tkg.1
    

    Este comando enumera todas las versiones de Kubernetes disponibles a las que se pueden actualizar los clústeres que ejecutan la versión especificada.

    También puede detectar las versiones de tkr que están disponibles para un clúster de carga de trabajo específico indicando el nombre del clúster en el comando tanzu cluster available-upgrades get:

    tanzu cluster available-upgrades get k8s-1-23-16-cluster
    

    Este comando enumera todas las versiones de Kubernetes que son compatibles con el clúster especificado.

    No puede omitir las versiones secundarias al actualizar la versión de tkr. Por ejemplo, no puede actualizar un clúster directamente de la v1.23.x a la v1.25.x. Debe actualizar un clúster de la v1.23.x a la v1.24.x antes de actualizar el clúster a la v1.25.x.

  5. Si el clúster se ejecuta en Azure, establezca la variable de entorno AZURE_CLIENT_SECRET antes de actualizar el clúster:

    export AZURE_CLIENT_SECRET=YOUR-AZURE-CLIENT-SECRET
    
  6. Ejecute el comando tanzu cluster upgrade CLUSTER-NAME e introduzca y para confirmar. Para omitir el paso de confirmación, especifique la opción --yes.

    Para actualizar el clúster a la versión predeterminada de Kubernetes para esta versión de Tanzu Kubernetes Grid, ejecute el comando tanzu cluster upgrade sin opciones. En esta versión, la versión predeterminada es v1.25.7. Por ejemplo:

    tanzu cluster upgrade k8s-1-24-10-cluster
    

    Si el clúster no se está ejecutando en el espacio de nombres default, especifique la opción --namespace:

    tanzu cluster upgrade CLUSTER-NAME --namespace NAMESPACE-NAME
    

    Si se agota el tiempo de espera de la actualización antes de que se complete, vuelva a ejecutar tanzu cluster upgrade y especifique la opción --timeout con un valor superior al valor predeterminado de 30 minutos:

    tanzu cluster upgrade CLUSTER-NAME --timeout 45m0s
    
    Importante

    Las operaciones en Azure a veces tardan más que en otras plataformas. Si va a actualizar clústeres en Azure, establezca de forma rutinaria la opción --timeout para evitar errores.

    Si varias imágenes base de máquina virtual en su cuenta de IaaS tienen la misma versión de Kubernetes a la que va a actualizar, utilice la opción --os-name para especificar el sistema operativo que desea. Consulte Seleccionar un sistema operativo durante la actualización del clúster para obtener más información.

    Por ejemplo, en vSphere, si cargó plantillas de OVA de Photon y Ubuntu con Kubernetes v1.25.7, especifique --os-name ubuntu para actualizar el clúster de carga de trabajo para que se ejecute en Ubuntu.

    tanzu cluster upgrade CLUSTER-NAME --os-name ubuntu
    

    Puesto que no se pueden omitir versiones secundarias de tkr, se produce un error en el comando de actualización si se intenta actualizar un clúster que tiene más de una versión secundaria detrás de la versión predeterminada. Por ejemplo, no puede actualizar directamente de la v1.23.x a v1.25.x. Para actualizar un clúster a una versión de Kubernetes que no sea la versión predeterminada para esta versión de Tanzu Kubernetes Grid, especifique la opción --tkr con el NAME de la versión seleccionada, tal como se indica en tanzu kubernetes-release get anteriormente. Por ejemplo, para actualizar el clúster k8s-1-23-16-cluster de v1.23.16 a v1.24.11.

    tanzu cluster upgrade k8s-1-23-16-cluster --tkr v1.24.11---vmware.1-tkg.1
    
  7. Cuando finalice la actualización, ejecute el comando tanzu cluster list para comprobar que se actualizó el clúster de carga de trabajo:

    tanzu cluster list --include-management-cluster -A
    
  8. Vuelva a generar el kubeconfig de administrador:

    tanzu cluster kubeconfig get CLUSTER-NAME --admin
    

    Donde CLUSTER-NAME es el nombre del clúster de carga de trabajo.

    Importante

    Si no renueva el kubeconfig después de actualizar, no podrá acceder al clúster una vez que caduque.

  9. Si utiliza un proveedor de identidad ldap u OIDC, confirme que puede autenticarse en el clúster con kubectl. Por ejemplo:

    kubectl get pods -A --kubeconfig my-cluster-credentials
    
  10. Actualice todos los paquetes administrados por la CLI, como Contour, Fluent Bit o Prometheus, que se ejecutan en los clústeres de carga de trabajo. Para obtener más información sobre cómo actualizar paquetes administrados por CLI, consulte Actualizar un paquete.

    Importante

    Si instaló Prometheus en un clúster de carga de trabajo y actualiza el clúster de carga de trabajo a Kubernetes v1.25, debe actualizar Prometheus a la versión 2.37.0+vmware.3-tkg.1. Las versiones anteriores del paquete de Prometheus, por ejemplo, la versión 2.37.0+vmware.1-tkg.1, no son compatibles con Kubernetes 1.25.

Qué hacer a continuación

Ahora puede seguir usando la CLI de Tanzu para administrar sus clústeres. Para obtener más información, consulte Crear y administrar clústeres de carga de trabajo de TKG 2.2 con CLI de Tanzu.

check-circle-line exclamation-circle-line close-line
Scroll to top icon