Actualizar Tanzu Kubernetes Grid

Para actualizar Tanzu Kubernetes Grid (TKG), descargue e instale la nueva versión de la CLI de Tanzu en la máquina que utiliza como máquina de arranque. También debe descargar e instalar máquinas virtuales y plantillas de imagen base, en función de si va a actualizar los clústeres que implementó previamente en vSphere, Amazon Web Services (AWS) o Azure.

Nota

En la ruta de acceso de actualización de TKG, v2.1 sigue inmediatamente a v1.6. TKG 2.0 no es una versión descargable, sino que hace referencia al uso de la versión de TKG integrada en un supervisor de vSphere with Tanzu en vSphere 8.

Después de instalar las nuevas versiones de los componentes, utilice los comandos de la CLI tanzu mc upgrade y tanzu cluster upgrade para actualizar clústeres de administración y clústeres de carga de trabajo.

Las siguientes secciones son los pasos generales necesarios para actualizar Tanzu Kubernetes Grid. En este procedimiento, se asume que está actualizando a Tanzu Kubernetes Grid v2.1.

Algunos pasos solo son necesarios si realiza una actualización secundaria de Tanzu Kubernetes Grid v1.6.x a v2.1.x y no son necesarios si está realizando una actualización de revisión de Tanzu Kubernetes Grid v2.1.x a v2.1.y.

Requisitos previos

Antes de actualizar a TKG v2.1.x, asegúrese de que la implementación actual sea TKG v1.6.x o una versión anterior a la v2.1. Para actualizar a TKG v2.1.x desde versiones de anteriores a v1.6, primero debe actualizar a v1.6.x con v1.6.x de CLI de Tanzu.

Importante

Las versiones de CLI de Tanzu que son compatibles con TKG 2.x y con el supervisor vSphere with Tanzu en vSphere 8 no son compatibles con el clúster supervisor en vSphere 7. Para utilizar la CLI de Tanzu con un clúster supervisor vSphere with Tanzu en vSphere 7, utilice la versión CLI de Tanzu de TKG v1.6. Para utilizar las versiones de la CLI de Tanzu que son compatibles con TKG 2.x con Supervisor, actualice a vSphere 8. Puede implementar un clúster de administración de TKG 2.x independiente en vSphere 7 si no hay un clúster supervisor vSphere with Tanzu. Para obtener información sobre la compatibilidad entre los productos de CLI de Tanzu y VMware, consulte la documentación de CLI de Tanzu.

Descargar e instalar la nueva versión de la CLI de Tanzu

Este paso es necesario para las actualizaciones principales de v1.6.x a v2.1.x y de revisión de v2.1.x a v2.1.y.

Para descargar e instalar la nueva versión de la CLI de Tanzu, realice los siguientes pasos.

  1. Elimine el archivo ~/.config/tanzu/tkg/compatibility/tkg-compatibility.yaml.

    Si no elimina este archivo, la nueva versión de la CLI de Tanzu seguirá utilizando el archivo de la lista de componentes de software (BoM, Bill of Materials) de la versión anterior. La eliminación de este archivo hace que la CLI de Tanzu extraiga el archivo BoM actualizado. Debe realizar este paso al actualizar de 1.6.x a 2.1.x y al actualizar de 2.1.x a 2.1.y.

  2. Siga las instrucciones de Instalar la CLI de Tanzu y otras herramientas para su uso con clústeres de administración independientes para descargar e instalar la CLI de Tanzu y kubectl en el equipo en el que ejecuta los comandos tanzu.

  3. Después de instalar la nueva versión de CLI de Tanzu, ejecute tanzu version para comprobar que la versión correcta de CLI de Tanzu esté instalada correctamente. Tanzu Kubernetes Grid v2.1.1 utiliza CLI de Tanzu v0.28.1, de acuerdo con Tanzu Framework v0.28.1.
  4. Después de instalar kubectl, ejecute kubectl version para comprobar que la versión correcta de kubectl esté instalada correctamente.

Para obtener información sobre las opciones y comandos de la CLI de Tanzu que están disponibles, consulte la Referencia de comandos de la CLI de Tanzu.

Preparar para actualizar los clústeres

Antes de poder actualizar los clústeres de carga de trabajo y administración, debe realizar los pasos de preparación en función de si implementó clústeres en vSphere, AWS o Azure. Este paso es necesario para las actualizaciones principales de v1.6.x a v2.1.x y de revisión de v2.1.x a v2.1.y.

vSphere
Antes de poder actualizar una implementación de Tanzu Kubernetes Grid en vSphere, debe importar a vSphere nuevas versiones de las plantillas de imagen base que ejecutarán los clústeres de carga de trabajo y administración actualizados. VMware publica plantillas de imagen base en formato OVA para cada versión compatible del sistema operativo y Kubernetes. Después de importar los archivos OVA, debe convertir las máquinas virtuales resultantes en plantillas de máquina virtual.

En este procedimiento, se sasume que está actualizando a Tanzu Kubernetes Grid v2.1x.

  1. Vaya a la página de descargas de Tanzu Kubernetes Grid e inicie sesión con sus credenciales de VMware Customer Connect.
  2. Descargue los archivos OVA de Tanzu Kubernetes Grid más recientes para las líneas de versión del sistema operativo y Kubernetes que ejecutan los clústeres de administración y carga de trabajo.

    Por ejemplo, para imágenes de Photon v3:

    • Kubernetes v1.24.10: Photon v3 Kubernetes v1.24.10 OVA
    • Kubernetes v1.23.16: Photon v3 Kubernetes v1.23.16 OVA
    • Kubernetes v1.22.17: Photon v3 Kubernetes v1.22.17 OVA

    Para imágenes de Ubuntu 20.04:

    • Kubernetes v1.24.10: Ubuntu 2004 Kubernetes v1.24.10 OVA
    • Kubernetes v1.23.16: Ubuntu 2004 Kubernetes v1.23.16 OVA
    • Kubernetes v1.22.17: Ubuntu 2004 Kubernetes v1.22.17 OVA
    Importante

    Asegúrese de descargar las plantillas de imagen base de OVA más recientes en caso de que haya versiones de revisión de seguridad. Puede encontrar plantillas de imagen base actualizadas que incluyen revisiones de seguridad en la página de descarga de productos Tanzu Kubernetes Grid.

  3. En el vSphere Client, haga clic con el botón secundario en un objeto del inventario de vCenter Server y seleccione Implementar plantilla OVF (Deploy OVF template).
  4. Seleccione Archivo local (Local file), haga clic en el botón para cargar archivos y desplácese hasta el archivo OVA descargado en la máquina local.
  5. Siga las indicaciones del instalador para implementar una máquina virtual desde el archivo OVA.

    • Acepte o modifique el nombre del dispositivo.
    • Seleccione el centro de datos o la carpeta de destino.
    • Seleccione el host, el clúster o el grupo de recursos de destino.
    • Acepte los contratos de licencia de usuario final (CLUF).
    • Seleccione el formato de disco y el almacén de datos de destino.
    • Seleccione la red a la que se conectará la máquina virtual.
  6. Haga clic en Finalizar para implementar la máquina virtual.
  7. Cuando finalice la implementación de OVA, haga clic con el botón secundario en la máquina virtual y seleccione Plantilla > Convertir a plantilla.
  8. En la vista VM y plantillas (VMs and Templates), haga clic con el botón secundario en la nueva plantilla, seleccione Añadir permiso (Add Permission) y asigne el usuario de Tanzu Kubernetes Grid (por ejemplo, tkg-user) a la plantilla con la función Tanzu Kubernetes Grid, por ejemplo, TKG. Creó este usuario y esta función en Preparar para implementar clústeres de administración en vSphere.

Repita el procedimiento para cada una de las versiones de Kubernetes para las que descargó el archivo OVA.

Compatibilidad de SDDC de VMware Cloud on AWS

Si va a actualizar los clústeres de carga de trabajo que se implementan en VMware Cloud on AWS, compruebe que la versión subyacente del centro de datos definido por software (SDDC) que utiliza la implementación existente sea compatible con la versión de Tanzu Kubernetes Grid a la que va a actualizar.

Para ver la versión de un SDDC, seleccione Ver detalles (View Details) en la ficha del SDDC en VMware Cloud Console y haga clic en el panel Compatibilidad (Support).

Para validar la compatibilidad con Tanzu Kubernetes Grid, consulte la Matriz de interoperabilidad de productos VMware.

AWS
No se requiere ninguna acción específica para las actualizaciones principales de v1.6.x a v2.1.x ni de revisión de v2.1.x a v2.1.y.

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
Antes de actualizar una implementación de Tanzu Kubernetes Grid en Azure, debe aceptar los términos de la nueva imagen de máquina virtual predeterminada y de cada imagen de máquina virtual no predeterminada que tenga pensado utilizar para las máquinas virtuales del clúster. Debe aceptar estos términos una vez por suscripción.

Para aceptar los términos:

  1. Enumerar todas las imágenes de máquina virtual disponibles para Tanzu Kubernetes Grid en el catálogo de Azure:

    az vm image list --publisher vmware-inc --offer tkg-capi --all
    
  2. Acepte los términos para la nueva imagen de máquina virtual predeterminada:

    az vm image terms accept --urn publisher:offer:sku:version
    

    Por ejemplo, para aceptar los términos de la imagen de máquina virtual predeterminada en Tanzu Kubernetes Grid v2.1.x, k8s-1dot24dot10-ubuntu-2004, ejecute:

    az vm image terms accept --urn vmware-inc:tkg-capi:k8s-1dot24dot10-ubuntu-2004:2021.05.17
    
  3. Si tiene pensado actualizar cualquiera de los clústeres de carga de trabajo a una versión de Kubernetes no predeterminada, como v1.23.16 o v1.22.17, acepte los términos para cada versión no predeterminada que desee utilizar para las máquinas virtuales del clúster.


Actualizar clústeres de administración independientes

Este paso solo es necesario para TKG con un clúster de administración independiente. Si ejecuta TKG con un supervisor de vSphere with Tanzu, actualice el supervisor como parte de vSphere y la versión de Kubernetes del supervisor mediante la actualización de sus TKr.

Este paso es necesario para las actualizaciones principales de v1.6.x a v2.1.x y de revisión de v2.1.x a v2.1.y.

Para actualizar Tanzu Kubernetes Grid, debe actualizar todos los clústeres de administración en la implementación. No se pueden actualizar los clústeres de carga de trabajo hasta que se hayan actualizado los clústeres de administración que los administra.

Siga el procedimiento descrito en Actualizar clústeres de administración independientes para actualizar los clústeres de administración.

Actualizar clústeres de carga de trabajo

Este paso es necesario para las actualizaciones principales de v1.6.x a v2.1.x y de revisión de v2.1.x a v2.1.y.

Siga el procedimiento descrito en Actualizar clústeres de carga de trabajo para actualizar los clústeres de carga de trabajo que ejecutan las cargas de trabajo.

Operaciones posteriores a la actualización

Después de actualizar los clústeres, hay pasos adicionales que se deben realizar para completar el proceso de actualización.

Sincronizar versiones de paquetes anteriores a n-2

Algunos paquetes que se instalan de forma predeterminada en el clúster de administración, por ejemplo, cert-manager se pueden instalar como paquetes administrados por CLI en la carga de trabajo y los clústeres de servicios compartidos. Cuando el clúster de administración se actualiza a la versión de Tanzu Kubernetes Grid más reciente, sus paquetes predeterminados se actualizan automáticamente.

Puede ejecutar diferentes versiones de los paquetes administrados por la CLI en diferentes clústeres de carga de trabajo. En un clúster de carga de trabajo, puede ejecutar la última versión admitida de un paquete administrado por CLI o las versiones del paquete en sus dos últimas versiones instaladas anteriormente de Tanzu Kubernetes Grid. Por ejemplo, si la última versión empaquetada de cert-manager es v1.10.1 y sus dos instalaciones anteriores de Tanzu Kubernetes Grid ejecutaron cert-manager v1.7.2 y v1.5.3, entonces puede ejecutar cert-manager v1.10.1, v1.7.2 y v1.5.3 en clústeres de carga de trabajo.

Para los clústeres de carga de trabajo que ejecutan versiones de paquete que sean superiores a n-2 versiones de Tanzu Kubernetes Grid instaladas anteriores a las versiones de paquetes en el clúster de administración, debe actualizar el repositorio de paquetes (consulte Actualizar un repositorio de paquetes) y, a continuación, actualizar el paquete en los clústeres de carga de trabajo (consulte Actualizar un paquete). Si no actualiza la versión del paquete, no podrá actualizar la configuración del paquete porque es posible que el repositorio de paquetes no incluya una versión anterior de n-2.

Operaciones posteriores a la actualización específicas del proveedor

Dependiendo de si sus clústeres se ejecutan en vSphere, AWS o Azure, hay operaciones que debe realizar después de haber actualizado los clústeres.

vSphere
Actualizar la configuración de NSX Advanced Load Balancer después de la actualización de Tanzu Kubernetes Grid

Si NSX ALB no se habilitó en la instalación de TKG v1.6, consulte Instalar y configurar NSX Advanced Load Balancer para obtener información sobre cómo instalar NSX ALB.

Si se habilitó NSX ALB en la instalación de TKG v1.6, consulte las Notas de la versión de Tanzu Kubernetes Grid v2.1 para las que se admiten versiones del controlador AVI en esta versión y, si es necesario, actualice el controlador AVI a una versión compatible. Para ver cómo actualizar el controlador AVI, consulte Actualizaciones flexibles para Avi Vantage.

AWS
Instalar el controlador CSI de AWS después de la actualización de Tanzu Kubernetes Grid

Si el clúster no lo instaló antes, siga este procedimiento para instalar el controlador CSI de AWS EBS después de actualizar la instalación de Tanzu Kubernetes Grid a v2.1+.

  1. Conceda permisos para el controlador CSI de AWS EBS:

    export AWS_REGION={YOUR_AWS_REGION}
    tanzu mc permissions aws set
    
  2. Para cada clúster de carga de trabajo que utiliza almacenamiento CSI:

    1. Exporte las siguientes variables de entorno y establezca la marca de características:

      export _TKG_CLUSTER_FORCE_ROLE="management"
      export FILTER_BY_ADDON_TYPE="csi/aws-ebs-csi-driver"
      export NAMESPACE="tkg-system"
      export DRY_RUN_MODE="legacy"
      tanzu config set features.cluster.allow-legacy-cluster true
      

      Establezca NAMESPACE en el espacio de nombres del clúster, tkg-system en el ejemplo anterior.

    2. Genere el manifiesto del controlador CSI:

      tanzu cl create ${TARGET_CLUSTER_NAME} --dry-run -f ~/MANAGEMENT_CLUSTER_CREATE_CONFIG.yaml > csi-driver-addon-manifest.yaml
      

      Donde TARGET_CLUSTER_NAME es el nombre del clúster en el que va a instalar el controlador CSI.

    3. Actualice el espacio de nombres del secreto en los metadatos de csi-driver-addon-manifest.yaml con el espacio de nombres del clúster de carga de trabajo. Use el comando kubectl get cluster -A para ver el espacio de nombres del clúster.

    4. Aplique los cambios en el contexto del clúster de administración:

      kubectl apply -f csi-driver-addon-manifest.yaml
      
    5. Anule la configuración de las siguientes variables de entorno y marca de funciones:

      unset _TKG_CLUSTER_FORCE_ROLE
      unset FILTER_BY_ADDON_TYPE
      unset NAMESPACE
      unset DRY_RUN_MODE
      tanzu config set features.cluster.allow-legacy-cluster false
      
  3. Para el clúster de administración que utiliza almacenamiento CSI:

    1. Exporte las siguientes variables de entorno:

      export _TKG_CLUSTER_FORCE_ROLE="management"
      export FILTER_BY_ADDON_TYPE="csi/aws-ebs-csi-driver"
      export NAMESPACE="tkg-system"
      export DRY_RUN_MODE="legacy"
      tanzu config set features.cluster.allow-legacy-cluster true
      

      Establezca NAMESPACE en el espacio de nombres del clúster, tkg-system en el ejemplo anterior.

    2. Genere el manifiesto del controlador CSI:

      tanzu mc create ${MANAGEMENT_CLUSTER_NAME} --dry-run -f ~/MANAGEMENT_CLUSTER_CREATE_CONFIG.yaml > csi-driver-addon-manifest.yaml
      

      Donde MANAGEMENT_CLUSTER_NAME es el nombre del clúster de administración.

    3. Actualice el espacio de nombres del secreto en los metadatos de csi-driver-addon-manifest.yaml con el espacio de nombres del clúster de administración. Use el comando kubectl get cluster -A para ver el espacio de nombres del clúster.

    4. Aplique los cambios en el contexto del clúster de administración:

      kubectl apply -f csi-driver-addon-manifest.yaml
      
    5. Anule la configuración de las siguientes variables de entorno y marca de funciones:

      unset _TKG_CLUSTER_FORCE_ROLE
      unset FILTER_BY_ADDON_TYPE
      unset NAMESPACE
      unset DRY_RUN_MODE
      tanzu config set features.cluster.allow-legacy-cluster false
      
Azure
Instalar el controlador CSI de discos de Azure después de Tanzu Kubernetes Grid actualización

Si el clúster no lo instaló antes, siga este procedimiento para instalar el controlador CSI de discos de Azure después de actualizar la instalación de Tanzu Kubernetes Grid a v2.1+.

  1. Exporte las siguientes variables de entorno y establezca la marca de características:

    export _TKG_CLUSTER_FORCE_ROLE="management"
    export FILTER_BY_ADDON_TYPE="csi/azuredisk-csi-driver"
    export NAMESPACE="tkg-system"
    export DRY_RUN_MODE="legacy"
    tanzu config set features.cluster.allow-legacy-cluster true
    

    Establezca NAMESPACE en el espacio de nombres del clúster, tkg-system en el ejemplo anterior.

  2. Para cada clúster de carga de trabajo que utiliza almacenamiento CSI:

    1. Genere el manifiesto del controlador CSI:

      tanzu cl create ${TARGET_CLUSTER_NAME} --dry-run -f ~/MANAGEMENT_CLUSTER_CREATE_CONFIG.yaml > csi-driver-addon-manifest.yaml
      

      Donde TARGET_CLUSTER_NAME es el nombre del clúster en el que va a instalar el controlador CSI.

    2. Actualice el espacio de nombres del secreto en los metadatos de csi-driver-addon-manifest.yaml con el espacio de nombres del clúster de carga de trabajo. Use el comando kubectl get cluster -A para ver el espacio de nombres del clúster.

    3. Aplique los cambios en el contexto del clúster de administración:

      kubectl apply -f csi-driver-addon-manifest.yaml
      
    4. Anule la configuración de las siguientes variables de entorno y marca de funciones:

      unset _TKG_CLUSTER_FORCE_ROLE
      unset FILTER_BY_ADDON_TYPE
      unset NAMESPACE
      unset DRY_RUN_MODE
      tanzu config set features.cluster.allow-legacy-cluster false
      
  3. Para el clúster de administración que utiliza almacenamiento CSI:

    1. Exporte las siguientes variables de entorno:

      export _TKG_CLUSTER_FORCE_ROLE="management"
      export FILTER_BY_ADDON_TYPE="csi/azuredisk-csi-driver"
      export NAMESPACE="tkg-system"
      export DRY_RUN_MODE="legacy"
      tanzu config set features.cluster.allow-legacy-cluster true
      

      Establezca NAMESPACE en el espacio de nombres del clúster, tkg-system en el ejemplo anterior.

    2. Genere el manifiesto del controlador CSI:

      tanzu mc create ${MANAGEMENT_CLUSTER_NAME} --dry-run -f ~/MANAGEMENT_CLUSTER_CREATE_CONFIG.yaml > csi-driver-addon-manifest.yaml
      

      Donde MANAGEMENT_CLUSTER_NAME es el nombre del clúster de administración.

    3. Actualice el espacio de nombres del secreto en los metadatos de csi-driver-addon-manifest.yaml con el espacio de nombres del clúster de administración. Use el comando kubectl get cluster -A para ver el espacio de nombres del clúster.

    4. Aplique los cambios en el contexto del clúster de administración:

      kubectl apply -f csi-driver-addon-manifest.yaml
      
    5. Anule la configuración de las siguientes variables de entorno y marca de funciones:

      unset _TKG_CLUSTER_FORCE_ROLE
      unset FILTER_BY_ADDON_TYPE
      unset NAMESPACE
      unset DRY_RUN_MODE
      tanzu config set features.cluster.allow-legacy-cluster false
      

Instalar el controlador CSI de archivos de Azure después de la actualización de Tanzu Kubernetes Grid

Si el clúster no lo instaló antes, siga este procedimiento para instalar el controlador CSI de archivos de Azure después de actualizar la instalación de Tanzu Kubernetes Grid a la v2.1+.

  1. Exporte las siguientes variables de entorno y establezca la marca de características:

    export _TKG_CLUSTER_FORCE_ROLE="management"
    export FILTER_BY_ADDON_TYPE="csi/azurefile-csi-driver"
    export NAMESPACE="tkg-system"
    export DRY_RUN_MODE="legacy"
    tanzu config set features.cluster.allow-legacy-cluster true
    

    Establezca NAMESPACE en el espacio de nombres del clúster, tkg-system en el ejemplo anterior.

  2. Para cada clúster de carga de trabajo que utiliza almacenamiento CSI:

    1. Genere el manifiesto del controlador CSI:

      tanzu cl create ${TARGET_CLUSTER_NAME} --dry-run -f ~/MANAGEMENT_CLUSTER_CREATE_CONFIG.yaml > csi-driver-addon-manifest.yaml
      

      Donde TARGET_CLUSTER_NAME es el nombre del clúster en el que va a instalar el controlador CSI.

    2. Actualice el espacio de nombres del secreto en los metadatos de csi-driver-addon-manifest.yaml con el espacio de nombres del clúster de carga de trabajo. Use el comando kubectl get cluster -A para ver el espacio de nombres del clúster.

    3. Aplique los cambios en el contexto del clúster de administración:

      kubectl apply -f csi-driver-addon-manifest.yaml
      
    4. Anule la configuración de las siguientes variables de entorno y marca de funciones:

      unset _TKG_CLUSTER_FORCE_ROLE
      unset FILTER_BY_ADDON_TYPE
      unset NAMESPACE
      unset DRY_RUN_MODE
      tanzu config set features.cluster.allow-legacy-cluster false
      
  3. Para el clúster de administración que utiliza almacenamiento CSI:

    1. Exporte las siguientes variables de entorno:

      export _TKG_CLUSTER_FORCE_ROLE="management"
      export FILTER_BY_ADDON_TYPE="csi/azurefile-csi-driver"
      export NAMESPACE="tkg-system"
      export DRY_RUN_MODE="legacy"
      tanzu config set features.cluster.allow-legacy-cluster true
      

      Establezca NAMESPACE en el espacio de nombres del clúster, tkg-system en el ejemplo anterior.

    2. Genere el manifiesto del controlador CSI:

      tanzu mc create ${MANAGEMENT_CLUSTER_NAME} --dry-run -f ~/MANAGEMENT_CLUSTER_CREATE_CONFIG.yaml > csi-driver-addon-manifest.yaml
      

      Donde MANAGEMENT_CLUSTER_NAME es el nombre del clúster de administración.

    3. Actualice el espacio de nombres del secreto en los metadatos de csi-driver-addon-manifest.yaml con el espacio de nombres del clúster de administración. Use el comando kubectl get cluster -A para ver el espacio de nombres del clúster.

    4. Aplique los cambios en el contexto del clúster de administración:

      kubectl apply -f csi-driver-addon-manifest.yaml
      
    5. Anule la configuración de las siguientes variables de entorno y marca de funciones:

      unset _TKG_CLUSTER_FORCE_ROLE
      unset FILTER_BY_ADDON_TYPE
      unset NAMESPACE
      unset DRY_RUN_MODE
      tanzu config set features.cluster.allow-legacy-cluster false
      


Actualizar diagnósticos y recuperación de bloqueos

Este paso es necesario para las actualizaciones principales de v1.6.x a v2.1.x y de revisión de v2.1.x a v2.1.y.

Para obtener información sobre cómo actualizar diagnósticos y recuperación de bloqueos, consulte Instalar o actualizar el archivo binario de diagnósticos y recuperación de bloqueos.

Qué hacer a continuación

Examine los clústeres de administración actualizados o regístrelos en Tanzu Mission Control. Consulte Examinar y registrar un clúster de administración independiente recién implementado.

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