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.
NotaEn la ruta de acceso de actualización de TKG, v2.2 sigue inmediatamente a v2.1.1.
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.2.0.
Algunos pasos solo son necesarios si realiza una actualización secundaria de Tanzu Kubernetes Grid v2.1.x a v2.2.x y no son necesarios si está realizando una actualización de revisión de Tanzu Kubernetes Grid v2.2.x a v2.2.y.
Antes de actualizar a TKG v2.2.x, asegúrese de que la implementación actual sea TKG v2.1.x o una versión anterior a la v2.2. Para actualizar a TKG v2.2.x desde versiones de anteriores a v2.1, primero debe actualizar a v2.1.x con v2.1.x de CLI de Tanzu.
ImportanteLas 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.
Este paso es necesario para las actualizaciones principales de v2.1.x a v2.2.x y de revisión de v2.2.x a v2.2.y.
Para descargar e instalar la nueva versión de la CLI de Tanzu, realice los siguientes pasos.
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 2.1.x a 2.2.x y al actualizar de 2.2.x a 2.2.y.
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
.
tanzu version
para comprobar que la versión correcta de CLI de Tanzu esté instalada correctamente. Tanzu Kubernetes Grid v2.2.x utiliza CLI de Tanzu v0.29.0, de acuerdo con Tanzu Framework v0.29.0.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.
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 v2.1.x a v2.2.x y de revisión de v2.2.x a v2.2.y.
En este procedimiento, se asume que está actualizando a Tanzu Kubernetes Grid v2.2.x.
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:
Para imágenes de Ubuntu 20.04:
ImportanteAsegú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.
Siga las indicaciones del instalador para implementar una máquina virtual desde el archivo OVA.
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.
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.
Para aceptar los términos:
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
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.2.x, k8s-1dot25dot7-ubuntu-2004
, ejecute:
az vm image terms accept --urn vmware-inc:tkg-capi:k8s-1dot25dot7-ubuntu-2004:2021.05.17
Si tiene pensado actualizar cualquiera de los clústeres de carga de trabajo a una versión de Kubernetes no predeterminada, como v1.24.11 o v1.23.17, acepte los términos para cada versión no predeterminada que desee utilizar para las máquinas virtuales del clúster.
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 v2.1.x a v2.2.x y de revisión de v2.2.x a v2.2.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.
Este paso es necesario para las actualizaciones principales de v2.1.x a v2.2.x y de revisión de v2.2.x a v2.2.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.
Después de actualizar los clústeres, hay pasos adicionales que se deben realizar para completar el proceso de actualización.
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.
ImportanteSi 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ón2.37.0+vmware.1-tkg.1
, no son compatibles con Kubernetes 1.25.
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.
Si NSX ALB no se habilitó en la instalación de TKG v2.1, 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 v2.1, consulte las Notas de la versión de Tanzu Kubernetes Grid v2.2 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.
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.2+.
Conceda permisos para el controlador CSI de AWS EBS:
export AWS_REGION={YOUR_AWS_REGION}
tanzu mc permissions aws set
Para cada clúster de carga de trabajo que utiliza almacenamiento CSI:
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.
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.
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.
Aplique los cambios en el contexto del clúster de administración:
kubectl apply -f csi-driver-addon-manifest.yaml
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
Para el clúster de administración que utiliza almacenamiento CSI:
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.
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.
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.
Aplique los cambios en el contexto del clúster de administración:
kubectl apply -f csi-driver-addon-manifest.yaml
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
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.2+.
Exporte las siguientes variables de entorno y establezca la marca de funciones:
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.
Para cada clúster de carga de trabajo que utiliza almacenamiento CSI:
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.
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.
Aplique los cambios en el contexto del clúster de administración:
kubectl apply -f csi-driver-addon-manifest.yaml
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
Para el clúster de administración que utiliza almacenamiento CSI:
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.
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.
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.
Aplique los cambios en el contexto del clúster de administración:
kubectl apply -f csi-driver-addon-manifest.yaml
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.2+.
Exporte las siguientes variables de entorno y establezca la marca de funciones:
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.
Para cada clúster de carga de trabajo que utiliza almacenamiento CSI:
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.
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.
Aplique los cambios en el contexto del clúster de administración:
kubectl apply -f csi-driver-addon-manifest.yaml
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
Para el clúster de administración que utiliza almacenamiento CSI:
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.
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.
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.
Aplique los cambios en el contexto del clúster de administración:
kubectl apply -f csi-driver-addon-manifest.yaml
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
Este paso es necesario para las actualizaciones principales de v2.1.x a v2.2.x y de revisión de v2.2.x a v2.2.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.
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.