Aplicar actualizaciones a grupos de nodos existentes


En esta página, se proporcionan instrucciones para actualizar de forma dinámica las etiquetas de red, las etiquetas de nodo y los taints de nodo de un grupo de nodos existente de Google Kubernetes Engine (GKE).

Descripción general

Las etiquetas de red son metadatos en las VM de Compute Engine que te permiten hacer que las reglas y rutas del firewall sean aplicables a instancias de VM específicas. Los taints y las etiquetas de nodo se encuentran en los metadatos del objeto de los nodos de Kubernetes. Las etiquetas se usan para programar los Pods en nodos específicos, en los que se pueden usar taints para desviar Pods de los nodos.

Con la API de Kubernetes Engine, puedes aplicar actualizaciones en las etiquetas de red, las etiquetas de nodo y los taints de nodo de un grupo de nodos existente de GKE sin necesidad de recrear el grupo de nodos ni interrumpir las cargas de trabajo en ejecución. La configuración actualizada del grupo de nodos se conserva en GKE, por lo que las futuras actualizaciones del grupo de nodos y los aprovisionamientos de nodos nuevos en el grupo de nodos usarán la configuración nueva.

Limitaciones

Existen algunas limitaciones para usar la API de Kubernetes Engine a fin de actualizar de forma dinámica la configuración del grupo de nodos:

Actualiza las etiquetas de red

A fin de actualizar las etiquetas de red para los grupos de nodos, usa el siguiente comando:

gcloud beta container node-pools update NODEPOOL_NAME \
    --tags=[TAG1,TAG2,...] \
    [--cluster=CLUSTER_NAME] [--region=REGION | --zone=ZONE]
    [GCLOUD_WIDE_FLAG …]

Reemplaza lo siguiente:

  • NODEPOOL_NAME: el nombre del grupo de nodos que se creará.
  • TAG1,[TAG2,...]: son los valores de las etiquetas nuevas deseadas.
  • CLUSTER_NAME: el nombre del clúster
  • REGION: La región de Compute Engine del clúster.
  • ZONE: La región de Compute Engine del clúster.

Actualiza las etiquetas de nodo

A fin de actualizar las etiquetas de nodo para un grupo de nodos, usa el siguiente comando:

gcloud beta container node-pools update NODEPOOL_NAME \
    --node-labels=[NODE_LABEL,...] \
    [--cluster=CLUSTER_NAME] [--region=REGION | --zone=ZONE]
    [GCLOUD_WIDE_FLAG …]

Reemplaza lo siguiente:

  • NODEPOOL_NAME: el nombre del grupo de nodos que se creará.
  • [NODE_LABEL,...]: son las etiquetas de nodo nuevas deseadas (por ejemplo, label1=value1,label2=value2).
  • CLUSTER_NAME: el nombre del clúster
  • REGION: La región de Compute Engine del clúster.
  • ZONE: La región de Compute Engine del clúster.

Actualiza taints de nodo

A fin de actualizar los taints de nodo para un grupo de nodos, usa el siguiente comando:

gcloud beta container node-pools update NODEPOOL_NAME \
    --node-taints=[NODE_TAINT,...] \
    [--cluster=CLUSTER_NAME] [--region=REGION | --zone=ZONE]
    [GCLOUD_WIDE_FLAG …]

Reemplaza lo siguiente:

  • NODEPOOL_NAME: el nombre del grupo de nodos que se creará.
  • [NODE_TAINT,...]: son los taints de nodo nuevos deseados (por ejemplo, key1=val1:NoSchedule,key2=val2:PreferNoSchedule).
  • CLUSTER_NAME: el nombre del clúster
  • REGION: La región de Compute Engine del clúster.
  • ZONE: La región de Compute Engine del clúster.

¿Qué sigue?