Actualizar los parámetros del clúster de Azure
En esta página se describe cómo actualizar la configuración de un clúster de GKE en Azure. Puedes usar estas instrucciones para actualizar cualquier ajuste de tu clúster, incluida la versión de Kubernetes. Como la actualización de la versión es una de las operaciones de actualización de clústeres más habituales, en la página Actualizar un clúster se explica cómo actualizar la versión de un clúster.
Motivos para actualizar un clúster
Puedes actualizar un clúster por cualquiera de los siguientes motivos:
- Para actualizar la descripción de tu clúster, sigue estos pasos:
- Para actualizar las anotaciones de tu clúster,
- Para actualizar la lista de usuarios administrativos de tu clúster.
- Para actualizar la configuración de registro de tu clúster, sigue estos pasos.
- Para actualizar el tamaño de la VM de tu clúster.
- Para actualizar el AzureClient de tu clúster, sigue estos pasos:
- Para actualizar la autenticación de tu clúster de AzureClient a la federación de identidades de cargas de trabajo.
También puede actualizar otros campos de sus clústeres que no se mencionan aquí.
Para ver una lista completa de los campos que puedes actualizar, consulta la documentación de gcloud container azure clusters update
y projects.locations.azureClusters.patch
.
Requisitos previos
Para actualizar cualquiera de los campos de tu clúster, debes tener el permiso
gkemulticloud.googleapis.com/azureClusters.update
Gestión de Identidades y Accesos.
El proceso de actualización
El proceso por el que GKE en Azure actualiza un clúster varía en función del tipo de actualización. En algunos casos, GKE en Azure puede actualizar un clúster sin reiniciar ni volver a crear ningún recurso, como la descripción de un clúster. GKE en Azure aplica estos cambios de inmediato.
Otros cambios requieren reiniciar los nodos del plano de control, como actualizar el tamaño de la VM o la versión de Kubernetes. En estas actualizaciones, GKE en Azure realiza una "actualización gradual" que consta de los siguientes pasos:
- Elige una instancia del plano de control que quieras actualizar. GKE en Azure actualiza las instancias incorrectas, si las hay, antes que las correctas.
- Elimina la instancia. GKE en Azure vuelve a crear la instancia y esta se inicia con la nueva configuración.
- Realiza comprobaciones del estado en la nueva instancia.
- Si las comprobaciones de estado se realizan correctamente, selecciona otra instancia y sigue los mismos pasos. Repite este ciclo hasta que se hayan reiniciado o recreado todas las instancias.
Si la comprobación del estado falla, GKE en Azure
coloca el clúster en el estado
DEGRADED
y detiene la actualización. Para obtener más información, consulta la siguiente sección.
Cuando falla una actualización
Después de una actualización, GKE en Azure realiza una comprobación del estado del clúster.
Si la comprobación del estado falla, el clúster se marca como DEGRADED
. Puedes mostrar el estado de tu clúster con el siguiente comando de la CLI de Google Cloud:
gcloud container azure clusters describe CLUSTER_NAME \
--location=GOOGLE_CLOUD_LOCATION
Haz los cambios siguientes:
CLUSTER_NAME
: el nombre de tu clústerGOOGLE_CLOUD_LOCATION
: la región Google Cloud que gestiona tu clúster
Actualizar un clúster
Puedes usar la Google Cloud consola, la CLI de Google Cloud o la API GKE Multi-Cloud para actualizar varios campos de clúster a la vez.
Elegir un método de actualización
Puedes actualizar la mayoría de los campos a través de la consola, la CLI de gcloud o la API Multi-Cloud de GKE. Algunos campos solo se pueden actualizar mediante un mecanismo u otro. Si quieres usar la consola para actualizar un clúster, primero debes elegir y configurar un método de autenticación para iniciar sesión en el clúster. Para obtener más información, consulta Conectarse y autenticarse en tu clúster.
Consola
En la Google Cloud consola, ve a la página Resumen de clústeres de Google Kubernetes Engine.
Selecciona el Google Cloud proyecto en el que se encuentra el clúster.
En la lista de clústeres, selecciona el nombre del clúster y, a continuación, Ver detalles en el panel lateral.
En la pestaña Detalles, selecciona
Editar en el campo que quieras cambiar.Por ejemplo, para conceder privilegios de administrador del clúster a otros usuarios, selecciona
Editar junto a Usuarios administradores e introduce la dirección de correo del usuario.Cuando hayas terminado de hacer los cambios, selecciona Hecho.
gcloud
Cuando actualizas un clúster con la CLI de gcloud, siempre debes incluir los campos CLUSTER_NAME
y GOOGLE_CLOUD_LOCATION
, que indican a GKE en Azure qué clúster se debe actualizar. En el siguiente comando, incluya solo los campos que quiera actualizar. Elimine los demás campos antes de ejecutar el comando.
gcloud container azure clusters update CLUSTER_NAME \
--location=GOOGLE_CLOUD_LOCATION \
--cluster-version=CLUSTER_VERSION \
--admin-users=USERNAME_LIST \
--client=CLIENT_NAME \
--vm-size=VM_SIZE
Haz los cambios siguientes:
CLUSTER_NAME
: el nombre de tu clústerGOOGLE_CLOUD_LOCATION
(obligatorio): la región admitida Google Cloud que gestiona tu clúster. Por ejemplo,us-west1
.CLUSTER_VERSION
: la nueva versión del clúster compatibleUSERNAME_LIST
: lista de nombres de usuario separados por comas (por ejemplo, "kai@example.com,hao@example.com,kalani@example.com"). Estas son las direcciones de correo electrónico de los usuarios a los que vas a conceder privilegios de administrador en este clúster. Los nombres de este ajuste sustituirán a cualquier lista anterior de usuarios administradores del clúster.CLIENT_NAME
: tu AzureClientVM_SIZE
: el nuevo tamaño de VM admitido
Para actualizar la autenticación del clúster de AzureClient a federación de identidades de cargas de trabajo, ejecuta el siguiente comando:
gcloud container azure clusters update CLUSTER_NAME \
--location=GOOGLE_CLOUD_LOCATION \
--azure-tenant-id="${TENANT_ID}" \
--azure-application-id="${APPLICATION_ID}" \
--clear-client
API
Cuando actualizas un clúster mediante la API GKE Multi-Cloud, siempre debes incluir los campos CLUSTER_NAME
y GOOGLE_CLOUD_LOCATION
en la solicitud HTTP. Estos campos indican a GKE en Azure qué clúster se debe actualizar. También debes incluir el endpoint de la API en la solicitud. Crea un archivo JSON con los campos que quieras actualizar. Incluye solo los campos que quieras actualizar en el archivo JSON y en el UPDATE_MASK
.
En el siguiente ejemplo se muestra cómo actualizar el clúster a través de la API.
Para obtener más información, incluida la lista de campos que puedes actualizar, consulta la documentación del método projects.locations.azureClusters.patch
.
Crea un archivo JSON llamado
cluster_update.json
con los campos que quieras actualizar.- Si usas la federación de identidades de cargas de trabajo, el archivo JSON debería tener este aspecto:
{ "description": "CLUSTER_DESCRIPTION", "controlPlane": { "version": "CLUSTER_VERSION", "vm_size": "VM_SIZE }, "azureServicesAuthentication": { "tenantId": "TENANT_ID", "applicationId": "APPLICATION_ID" }, "authorization": { "adminUsers": [ { "username": USERNAME1, "username": USERNAME2, "username": USERNAME3 } ] } }
- Si usas cliente de Azure, el archivo JSON debería tener este aspecto:
{ "description": "CLUSTER_DESCRIPTION", "controlPlane": { "version": "CLUSTER_VERSION", "vm_size": "VM_SIZE }, "azureClient": "CLIENT_NAME", "authorization": { "adminUsers": [ { "username": USERNAME1, "username": USERNAME2, "username": USERNAME3 } ] } }
Haz los cambios siguientes:
CLUSTER_VERSION
: la nueva versión del clúster admitida. Ten en cuenta que debes actualizar todas las versiones secundarias al actualizar tu clústerCLUSTER_DESCRIPTION
: la nueva descripción del clústerUSERNAME1
,USERNAME2
yUSERNAME3
: las direcciones de correo de los usuarios a los que vas a conceder privilegios de administrador en este clúster. Los nombres de estos campos sustituirán a cualquier lista anterior de usuarios administradores del clúster.CLIENT_NAME
: el nombre de tu AzureClientTENANT_ID
: el ID de cliente de AzureAPPLICATION_ID
: el ID de aplicación de Azure que se creó en Crear una aplicación de Azure Active DirectoryVM_SIZE
: el nuevo tamaño de la VM
- Si usas la federación de identidades de cargas de trabajo, el archivo JSON debería tener este aspecto:
Actualiza estos ajustes a través de la API Multi-Cloud de GKE con el siguiente comando.
curl -d @cluster_update.json -X PATCH \ ENDPOINT/projects/PROJECT_ID/locations/GOOGLE_CLOUD_LOCATION/azureClusters/CLUSTER_NAME?update_mask=UPDATE_MASK
Haz los cambios siguientes:
ENDPOINT
(obligatorio): el Google Cloud endpoint de servicioPROJECT_ID
(obligatorio): tu Google Cloud proyectoGOOGLE_CLOUD_LOCATION
(obligatorio): la región admitida Google Cloud que gestiona tu clúster. Por ejemplo,us-west1
.CLUSTER_NAME
(obligatorio): nombre del clústerUPDATE_MASK
(obligatorio): lista separada por comas de una o varias de las siguientes marcas, que indican los campos que quieres actualizar. En este ejemplo, especifica lo siguiente.- controlPlane.version
- description
- authorization.admin_users
- control_plane.vm_size
- azure_client
- azure_services_authentication.tenant_id
- azure_services_authentication.application_id
Para actualizar la autenticación del clúster de AzureClient a federación de identidades de cargas de trabajo, añade azure_client
, azure_services_authentication.tenant_id
y azure_services_authentication.application_id
en el campo update_mask
.
Actualizar configuración de registro
Puedes actualizar los ajustes de configuración de Cloud Logging de tu clúster con la CLI de Google Cloud. Para actualizar la configuración de registro, ejecuta el siguiente comando:
gcloud container azure clusters update CLUSTER_NAME \
--location=GOOGLE_CLOUD_LOCATION \
--logging=LOGGING_CONFIG \
Haz los cambios siguientes:
CLUSTER_NAME
: el nombre de tu clústerGOOGLE_CLOUD_LOCATION
: la región Google Cloud admitida que gestiona tu clúster. Por ejemplo,us-west1
.LOGGING_CONFIG
: [SYSTEM] o [SYSTEM,WORKLOAD]
Siguientes pasos
- Para actualizar las claves de KMS de volumen, consulta Rotación de claves.
- Para obtener más información sobre los campos actualizables, consulta la documentación de referencia de
gcloud container azure clusters update
. - Consulta la documentación de la API REST
projects.locations.azureClusters.patch
.