Actualiza los parámetros de tus clústeres de Azure

En esta página, se describe cómo actualizar la configuración del clúster de GKE en Azure. Puedes usar estas instrucciones para actualizar cualquier parámetro de configuración que se pueda actualizar de tu clúster, incluida la versión de Kubernetes. Debido a que la actualización de la versión es una de las operaciones de actualización de clúster más comunes, una página separada, Actualiza tu clúster, abarca cómo actualizar una versión del clúster.

Razones 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.
  • Para actualizar las anotaciones de tu clúster.
  • Para actualizar la lista de usuarios administradores del clúster.
  • Para actualizar la configuración de registro de tu clúster.
  • Para actualizar el tamaño de la VM de tu clúster.
  • Para actualizar el AzureClient de tu clúster.
  • Para actualizar la autenticación del clúster de AzureClient a la federación de identidades para cargas de trabajo.

También puedes actualizar otros campos en los clústeres que no aparecen aquí. Para obtener una lista completa de los campos que puedes actualizar, consulta la documentación de gcloud container azure clusters update y projects.locations.azureClusters.patch.

Prerequisites

  • Para actualizar cualquiera de los campos del clúster, debes tener el permiso gkemulticloud.googleapis.com/azureClusters.update de Identity and Access Management.

El proceso de actualización

El proceso mediante el cual GKE en Azure actualiza un clúster difiere según el tipo de actualización. Para algunos cambios, los GKE en Azure pueden actualizar un clúster sin reiniciar ni volver a crear ningún recurso, por ejemplo, la actualización de la descripción de un clúster. GKE on Azure realiza estos cambios de inmediato.

Otros cambios requieren reiniciar los nodos del plano de control, por ejemplo, la actualización del tamaño de la VM o la versión de Kubernetes. Para estas actualizaciones, GKE en Azure realiza una “actualización progresiva” que consiste en los siguientes pasos:

  1. Eligen una instancia del plano de control para actualizar. GKE en Azure actualiza las instancias en mal estado antes de que estén en buen estado.
  2. Borra la instancia. GKE en Azure vuelve a crear la instancia y esta se inicia con la configuración nueva.
  3. Realizan verificaciones de estado en la instancia nueva.
  4. Si las verificaciones de estado se ejecutan correctamente, selecciona otra instancia y realiza los mismos pasos en ella. Repiten este ciclo hasta que todas las instancias se reinicien o se vuelvan a crear. Si la verificación de estado falla, GKE en Azure coloca el clúster en un 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 verificación de estado en el clúster. Si la verificación de estado falla, el clúster se marca como DEGRADED. Puedes mostrar el estado del clúster con el siguiente comando de Google Cloud CLI:

gcloud container azure clusters describe CLUSTER_NAME \
  --location=GOOGLE_CLOUD_LOCATION

Reemplaza lo siguiente:

  • CLUSTER_NAME: Es el nombre de tu clúster.
  • GOOGLE_CLOUD_LOCATION: Es la región de Google Cloud que administra tu clúster.

Actualiza tu clúster

Puedes usar la consola de Google Cloud, la Google Cloud CLI o la API GKE Multi-Cloud para actualizar varios campos del clúster a la vez.

Elige un método de actualización

Puedes actualizar la mayoría de los campos a través de la consola, gcloud CLI o la API GKE Multi-Cloud. Algunos campos solo se pueden actualizar a través de un mecanismo o de otro. Si quieres usar la consola para actualizar un clúster, primero debes elegir y configurar un método de autenticación para acceder al clúster. Para obtener más información, consulta Conéctate y autentícate en el clúster.

Console

  1. En la consola de Google Cloud, ve a la página Descripción general de los clústeres de Google Kubernetes Engine.

    Ir a los clústeres de GKE

  2. Selecciona el proyecto de Google Cloud en el que se encuentra el clúster.

  3. En la lista de clústeres, selecciona su nombre y, luego, Ver detalles en el panel lateral.

  4. En la pestaña Detalles, selecciona Editar en el campo que quieras cambiar.

    Por ejemplo, para otorgar privilegios de administrador de clúster a otros usuarios, selecciona Editar junto a Usuarios administradores y, luego, ingresa la dirección de correo electrónico del usuario.

  5. Cuando hayas terminado de hacer los cambios, selecciona Listo.

gcloud

Cuando actualizas un clúster con gcloud CLI, siempre debes incluir los campos CLUSTER_NAME y GOOGLE_CLOUD_LOCATION, que le indican a GKE en Azure qué clúster actualizar. En el siguiente comando, solo incluye los campos que quieras actualizar; quita los otros 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 

Reemplaza lo siguiente:

  • CLUSTER_NAME: Es el nombre de tu clúster.
  • GOOGLE_CLOUD_LOCATION (obligatorio): es la región de Google Cloud compatible con la que se administra el clúster, por ejemplo, us-west1.
  • CLUSTER_VERSION: la nueva versión de clúster compatible
  • USERNAME_LIST: una 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 les otorgas privilegios de administrador en este clúster. Los nombres en este ajuste reemplazarán cualquier lista anterior de usuarios administradores en el clúster.
  • CLIENT_NAME: Es tu AzureClient.
  • VM_SIZE: Es el nuevo tamaño de VM admitido.

Para actualizar la autenticación del clúster de AzureClient a la federación de identidades para 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 con la API GKE Multi-Cloud, siempre debes incluir los campos CLUSTER_NAME y GOOGLE_CLOUD_LOCATION en la solicitud HTTP. Estos campos le indican a GKE en Azure qué clúster actualizar. También debes incluir el extremo de la API en la solicitud. Debes crear un archivo JSON con los campos que quieras actualizar. Solo incluye los campos que quieras actualizar en el archivo JSON y en el UPDATE_MASK.

En el siguiente ejemplo, se muestra cómo actualizar tu 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.

  1. Crea un archivo JSON llamado cluster_update.json con los campos que deseas actualizar.

    • Cuando se usa la federación de identidades para cargas de trabajo, el archivo JSON debe verse así:
      {
        "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
                }
            ]
        }
      }
      
    • Cuando usas el cliente de Azure, el archivo JSON debería verse así:
      {
        "description": "CLUSTER_DESCRIPTION",
        "controlPlane": {
          "version": "CLUSTER_VERSION",
          "vm_size": "VM_SIZE
        },
        "azureClient": "CLIENT_NAME",
        "authorization": {
            "adminUsers": [
                {
                "username": USERNAME1,
                "username": USERNAME2,
                "username": USERNAME3
                }
            ]
        }
      }
      

    Reemplaza lo siguiente:

    • CLUSTER_VERSION: la nueva versión de clúster compatible. Ten en cuenta que debes actualizar todas las versiones secundarias cuando actualizas el clúster.
    • CLUSTER_DESCRIPTION: Es la descripción del clúster nuevo.
    • USERNAME1,USERNAME2,USERNAME3: Son las direcciones de correo electrónico de los usuarios a los que les otorgarás privilegios administrativos en este clúster. Los nombres en estos campos reemplazarán cualquier lista anterior de usuarios administradores en el clúster.
    • CLIENT_NAME: El nombre de AzureClient.
    • TENANT_ID: el ID del usuario de Azure
    • APPLICATION_ID: El ID de aplicación de Azure que se que se creó en Create an Azure Active Directory Application (Crear una aplicación de Azure Active Directory)
    • VM_SIZE: El nuevo tamaño de VM.
  2. Actualiza esta configuración a través de la API de GKE Multi-Cloud 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
    

Reemplaza lo siguiente:

  • ENDPOINT (obligatorio): el extremo de servicio de Google Cloud
  • PROJECT_ID (obligatorio): tu proyecto de Google Cloud
  • GOOGLE_CLOUD_LOCATION (obligatorio): es la región de Google Cloud compatible con la que se administra el clúster, por ejemplo, us-west1.
  • CLUSTER_NAME (obligatorio): El nombre de tu clúster
  • UPDATE_MASK (obligatorio): es una lista separada por comas de una o más de las siguientes marcas, que indican qué campos quieres actualizar: En este ejemplo, especifica lo siguiente.
    • controlPlane.version
    • descripción
    • 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 la federación de identidades para cargas de trabajo, agrega azure_client, azure_services_authentication.tenant_id y azure_services_authentication.application_id en el campo update_mask.

Actualiza la configuración de Logging

Puedes actualizar la configuración de Cloud Logging del clúster con Google Cloud CLI. 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 \

Reemplaza lo siguiente:

  • CLUSTER_NAME: Es el nombre del clúster
  • GOOGLE_CLOUD_LOCATION: Es la región de Google Cloud compatible con la que se administra el clúster, por ejemplo, us-west1.
  • LOGGING_CONFIG: [SYSTEM] o [SYSTEM,WORKLOAD]

¿Qué sigue?