Para actualizar Tanzu Kubernetes Grid con un clúster de administración independiente, primero debe actualizar el clúster de administración independiente. No se pueden actualizar los clústeres de carga de trabajo hasta que se haya actualizado el clúster de administración que los administra.
Si ejecuta TKG con el supervisor de vSphere with Tanzu, no siga este procedimiento. En su lugar, debe actualizar el supervisor como parte de vSphere y actualizar la versión de Kubernetes del supervisor mediante la actualización de sus TKr.
Al actualizar el clúster de administración, se actualizan automáticamente los paquetes autoadministrados que ejecuta.
NotaDespués de haber instalado la CLI v2.1 pero antes de que se haya actualizado un clúster de administración independiente, todos los grupos de comandos CLI específicos del contexto (
tanzu cluster
,tanzu kubernetes-release
) y todos los comandos de complementosmanagement-cluster
, exceptotanzu mc upgrade
ytanzu mc create
, no están disponibles y no están incluidos en los resultados--help
de la CLI de Tanzu.
Los clústeres de administración y los clústeres de carga de trabajo 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 o rótelos manualmente como se describe en Renovar certificados de clúster (MC independiente) o el artículo de la base de conocimientos VMware Cómo rotar certificados en un clúster Tanzu Kubernetes Grid.
Ejecute el comando tanzu login
para ver una lista interactiva de los clústeres de administración disponibles para la actualización.
tanzu login
Seleccione el clúster de administración que desea actualizar. Consulte Enumerar clústeres de administración y cambiar contexto para obtener más información.
Obtenga las credenciales de administrador del clúster de. El alias de la CLI de Tanzu mc
es abreviado para management-cluster
.
tanzu mc kubeconfig get --admin
Conecte kubectl
al clúster de administración.
kubectl config use-context CLUSTER-NAME-admin@CLUSTER-NAME.
Si el clúster de administración 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
Si el clúster de administración se creó originalmente en TKG v1.3 o una versión anterior, o si no está seguro, haga lo siguiente. Estos pasos agregan un secreto que se necesita para actualizar los clústeres de administración a su configuración basada en paquetes en TKG v2.1, pero que no se incluyó en los clústeres de administración creados antes de TKG v1.4:
Desactive la marca de función package-based-cc
para habilitar el simulacro de creación de clústeres de administración heredado:
tanzu config set features.management-cluster.package-based-cc false
Obtenga un manifiesto de estilo heredado más actualizado para el clúster de administración mediante la creación del clúster de administración de simulacro con su archivo de configuración original. Por ejemplo, en vSphere:
tanzu mc create -f mgmt-config.yaml --dry-run > legacy-mgmt.yaml
Do you want to configure vSphere with Tanzu? [y/N]: N
Would you like to deploy a non-integrated Tanzu Kubernetes Grid management cluster on vSphere 7.0? [y/N]: y
Extraiga el secreto -config-values
necesario:
cat legacy-mgmt.yaml | yq 'select(.metadata.name == "MANAGEMENT-CLUSTER-NAME-config-values")' > mgmt-config-secret.yaml
En el contexto del clúster de administración, aplique el secreto al clúster de administración:
kubectl apply -f mgmt-config-secret.yaml
Vuelva a habilitar la marca de función package-based-cc
para no permitir la creación de clústeres de administración heredados.
tanzu config set features.management-cluster.package-based-cc true
Ejecute el comando tanzu mc upgrade
e introduzca y
para confirmar.
NotaDespués de ejecutar este comando, los usuarios que no son administradores no pueden iniciar sesión en los clústeres de carga de trabajo asociados hasta que finalice el reinicio de los pods Pinniped.
tanzu mc upgrade
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.24.10, especifique --os-name ubuntu
para actualizar el clúster de administración para que se ejecute en una máquina virtual Ubuntu.
tanzu mc upgrade --os-name ubuntu
Para omitir el paso de confirmación cuando actualice un clúster, especifique la opción --yes
.
tanzu mc upgrade --yes
El proceso de actualización primero actualiza los proveedores de API del clúster para vSphere, Amazon Web Services (AWS) o Azure que se ejecutan en el clúster de administración. A continuación, actualiza la versión de Kubernetes en todos los nodos de trabajo y plano de control del clúster de administración.
ImportanteMientras se actualiza un clúster de administración, no ejecute
tanzu cluster
nitanzu mc
o los clústeres de carga de trabajo que administra, por ejemplo, desde otra ventana de shell o máquina de arranque.
Si se agota el tiempo de espera de la actualización antes de que se complete, vuelva a ejecutar tanzu mc upgrade
y especifique la opción --timeout
con un valor superior al valor predeterminado de 30 minutos.
tanzu mc upgrade --timeout 45m0s
NotaDespués de instalar la CLI de v2.1, pero antes de actualizar un clúster de administración, todos los grupos de comandos de la CLI específicos del contexto (
tanzu cluster
,tanzu kubernetes-release
) y todos los comandos del complementomanagement-cluster
exceptotanzu mc upgrade
ytanzu mc create
no están disponibles y no se incluyen en los resultados--help
de la CLI de Tanzu.
Cuando finalice la actualización, vuelva a ejecutar el comando tanzu cluster list
con las opciones --include-management-cluster -A
para comprobar que se actualizó el clúster de administración.
tanzu cluster list --include-management-cluster -A
Verá que el clúster de administración ahora ejecuta la nueva versión de Kubernetes, pero que los clústeres de carga de trabajo aún ejecutan versiones anteriores de Kubernetes.
NAME NAMESPACE STATUS CONTROLPLANE WORKERS KUBERNETES ROLES PLA TKR
k8s-1-22-13-cluster default running 1/1 1/1 v1.22.13+vmware.1 <none> dev v1.22.13---vmware.1-tkg.1
k8s-1-23-10-cluster default running 1/1 1/1 v1.23.10+vmware.1 <none> dev v1.23.10---vmware.1-tkg.1
mgmt-cluster tkg-system running 1/1 1/1 v1.24.10+vmware.1 management dev v1.24.10---vmware.1-tkg.1
Vuelva a generar el kubeconfig
de administrador:
tanzu management-cluster kubeconfig get --admin
A continuación se muestra un ejemplo de resultados de este comando:
Credentials of cluster 'mgmt' have been saved
You can now access the cluster by running 'kubectl config use-context mgmt-admin@mgmt'
ImportanteSi no renueva el
kubeconfig
después de actualizar, no podrá acceder al clúster una vez que caduque.
Ahora puede:
Actualizar los clústeres de carga de trabajo que administra este clúster de administración.
Crear nuevos clústeres de carga de trabajo. De forma predeterminada, todos los clústeres nuevos que implemente con este clúster de administración ejecutarán la nueva versión predeterminada de Kubernetes. Sin embargo, si es necesario, puede utilizar el comando tanzu cluster create
con la opción --tkr
para implementar nuevos clústeres que ejecuten diferentes versiones de Kubernetes. Para obtener más información, consulte Varias versiones de Kubernetes.