Los clústeres de Anthos alojados en Azure están disponibles para los clientes que tengan una relación de asistencia con Google Cloud. Comunícate con el representante de tu cuenta para obtener acceso.

Administre los grupos de nodos

En esta página, se describe cómo administrar un grupo de nodos, se incluye información sobre el escalador automático del clúster y se explica cómo crear un grupo de nodos.

Realiza un ajuste de escala automático en un grupo de nodos

El escalador automático del clúster cambia el tamaño de la cantidad de nodos en un grupo de nodos de forma automática según las exigencias de tus cargas de trabajo. No es necesario que agregues o quites nodos de forma manual ni que sobreaprovisiones tus grupos de nodos. Solo debes especificar un tamaño mínimo y máximo para el grupo de nodos y dejar que los cambios necesarios se hagan de manera automática.

Si es necesario borrar o mover recursos mientras se realiza el ajuste de escala automático del clúster, es posible que las cargas de trabajo sufran interrupciones transitorias. Por ejemplo, si tu carga de trabajo consta de un controlador con una sola réplica, es posible que el Pod de esa réplica se reprograme en otro nodo si se borra el actual. Debido a esto, antes de habilitar el escalador automático del clúster, debes diseñar tus cargas de trabajo para tolerar posibles interrupciones o asegurarte de que no se interrumpan los Pods críticos.

Cómo funciona el escalador automático del clúster

El escalador automático del clúster funciona por grupo de nodos. Cuando usas el escalador automático del clúster a fin de configurar un grupo de nodos, especificas un tamaño mínimo y máximo para el grupo de nodos.

El escalador automático del clúster aumenta o disminuye el tamaño del grupo de nodos automáticamente según las solicitudes de recursos (no el uso real) de los Pods que se ejecutan en ese grupo de nodos. El escalador automático del clúster agrega nodos si los Pods no son programables y no hay suficientes nodos en el grupo de nodos.

El escalador automático de clúster también quita nodos si tienen poco uso y todos los Pods podrían programarse en una cantidad menor de nodos. Si un nodo no se puede desviar de forma correcta después de 10 minutos, se forzará su finalización. Este período no se puede configurar.

Si tus Pods solicitan muy pocos recursos (por ejemplo, si los valores predeterminados son insuficientes), el escalador automático del clúster no corrige la situación. Para ayudar a garantizar que el escalador automático del clúster funcione de la manera más precisa posible, debes crear solicitudes de recursos adecuadas para todas las cargas de trabajo. Si deseas obtener más información, consulta Administra recursos para contenedores.

Criterios operativos

El escalador automático del clúster actúa según las siguientes suposiciones cuando cambia el tamaño de un grupo de nodos:

  • Todos los pods replicados se pueden reiniciar en otro nodo, aunque es posible que esto provoque una interrupción breve. Si tu carga de trabajo no tolera la interrupción, configura la carga de trabajo para que se ejecute en un grupo de nodos con el ajuste de escala automático inhabilitado. Para obtener más información, consulta Controla la programación con taints de nodo.

  • El escalador automático del clúster puede anular cualquier operación manual de administración de nodos que realices.

  • Todos los nodos de un grupo tienen el mismo conjunto de etiquetas.

  • El escalador automático del clúster selecciona un grupo de nodos que tiene la menor cantidad de CPU inactiva o memoria sin usar después del escalamiento vertical. Este comportamiento afecta a qué grupos de nodos se escalan verticalmente si tienes tamaños de nodos diferentes (por ejemplo, CPU alta o nodos de memoria alta) en el mismo clúster.

Tamaño mínimo y máximo del grupo de nodos

Puedes especificar el tamaño mínimo y máximo de cada grupo de nodos del clúster. El escalador automático de clústeres toma decisiones de ajuste de escala dentro de estos límites. Cuando habilitas el ajuste de escala automático, si el tamaño actual del grupo de nodos es inferior al mínimo o superior al máximo especificado, el escalador automático espera hasta que se necesite un nodo nuevo en el grupo o hasta que un nodo se pueden borrar de forma segura del grupo de nodos.

Personaliza grupos de seguridad de red

Para personalizar un grupo de seguridad de red (NSG), consulta Grupos de seguridad de red.

Crea un grupo de nodos

Antes de crear un grupo de nodos, necesitas lo siguiente:

  • Permisos para usar la herramienta de línea de comandos de az a fin de recuperar un ID de subred de Azure.
  • Acceso a la clave pública SSH del clúster de usuario.

Para crear un grupo de nodos, ejecuta los siguientes comandos:

  1. Guarda tu ID de subred de Azure VNet y la clave pública SSH en las variables de entorno:

    SUBNET_ID=$(az network vnet subnet show \
      --resource-group=VNET_RESOURCE_GROUP_NAME --vnet-name=VNET_NAME \
      --name default --query "id" -otsv)
    SSH_PUBLIC_KEY=$(cat KEY_PATH.pub)
    

    Reemplaza lo siguiente:

    • VNET_RESOURCE_GROUP_NAME: nombre del grupo de recursos que contiene VNet.
    • VNET_NAME: nombre de tu VNet
    • KEY_PATH: ruta de acceso a tu par de claves
  2. Crea un grupo de nodos con la herramienta de línea de comandos de gcloud:

    gcloud alpha container azure node-pools create NODE_POOL_NAME \
        --cluster=CLUSTER_NAME \
        --location GOOGLE_CLOUD_LOCATION \
        --node-version=1.20.10-gke.300 \
        --vm-size=VM_SIZE \
        --max-pods-per-node=110 \
        --min-nodes=MIN_NODES \
        --max-nodes=MAX_NODES \
        --ssh-public-key="${SSH_PUBLIC_KEY}" \
        --subnet-id="${SUBNET_ID}"
    

    Reemplaza lo siguiente:

  3. Verifica el estado del grupo de nodos:

    gcloud alpha container azure node-pools describe NODE_POOL_NAME \
        --cluster CLUSTER_NAME \
        --location GOOGLE_CLOUD_LOCATION
    

    Reemplaza lo siguiente:

    • NODE_POOL_NAME: un nombre único para el grupo de nodos, por ejemplo, node-pool-1.
    • CLUSTER_NAME: nombre de los clústeres de Anthos alojados en el clúster de usuario de Azure.
    • GOOGLE_CLOUD_LOCATION: la ubicación de Google Cloud que administra el clúster de usuario.

    El resultado incluye el estado del grupo de nodos, incluso si es PROVISIONING o RUNNING.

Crea un grupo de nodos en una zona específica

Para crear un grupo de nodos en una zona de disponibilidad específica de Azure, pasa la marca --azure-availability-zone a la herramienta de línea de comandos de gcloud cuando crees el grupo de nodos.

Para crear un grupo de nodos en una zona de disponibilidad específica de Azure con la herramienta de línea de comandos de gcloud, ejecuta el siguiente comando:

gcloud alpha container azure node-pools create NODE_POOL_NAME \
    --cluster=CLUSTER_NAME \
    --location GOOGLE_CLOUD_LOCATION \
    --node-version=1.20.10-gke.300 \
    --vm-size=VM_SIZE \
    --max-pods-per-node=110 \
    --min-nodes=MIN_NODES \
    --max-nodes=MAX_NODES \
    --azure-availability-zone=AZURE_ZONE \
    --ssh-public-key="${SSH_PUBLIC_KEY}" \
    --subnet-id="${SUBNET_ID}"

Reemplaza lo siguiente:

  • NODE_POOL_NAME: un nombre único para el grupo de nodos, por ejemplo, node-pool-1.
  • CLUSTER_NAME: nombre de los clústeres de Anthos alojados en el clúster de usuario de Azure.
  • GOOGLE_CLOUD_LOCATION: la ubicación de Google Cloud que administra el clúster de usuario.
  • VM_SIZE: un tamaño de VM de Azure compatible
  • MIN_NODES: la cantidad mínima de nodos en el grupo de nodos. Para obtener más información, consulta Ajuste de escala automático un grupo de nodos
  • MAX_NODES: cantidad máxima de nodos en el grupo de nodos
  • AZURE_ZONE: La zona de disponibilidad de Azure en la que clústeres de Anthos en Azure inicia el grupo de nodos, por ejemplo, 3.

Borrar un grupo de nodos

Para borrar un grupo de nodos, ejecuta el siguiente comando:

gcloud alpha container azure node-pools delete NODE_POOL_NAME \
    --cluster CLUSTER_NAME \
    --location GOOGLE_CLOUD_LOCATION

Reemplaza lo siguiente:

  • NODE_POOL_NAME: el nombre del grupo de nodos que se borrará
  • CLUSTER_NAME: el nombre del clúster al que está conectado el grupo de nodos
  • GOOGLE_CLOUD_LOCATION: la ubicación de Google Cloud que aloja el grupo de nodos

¿Qué sigue?

  • Prueba la Guía de inicio rápido para iniciar tu primera carga de trabajo en los clústeres de Anthos alojados en Azure.