Cómo actualizar automáticamente los nodos

En esta página se muestra cómo configurar las actualizaciones automáticas de nodo en Google Kubernetes Engine.

Descripción general

Las actualizaciones automáticas de nodo te ayudarán a mantener actualizados los nodos de tu clúster con la versión principal del clúster cuando la instancia principal se actualice en tu nombre. Cuando creas un clúster o grupo de nodos nuevo con Google Cloud Console o el comando gcloud, la actualización automática de nodo se habilita de forma predeterminada.

Para obtener más información sobre las actualizaciones de clústeres y nodos, consulta la página Actualiza un clúster.

Las actualizaciones automáticas de nodo proporcionan varios beneficios:

  • Reducción en la sobrecarga de administración: No tienes que realizar un seguimiento y actualizar los nodos de forma manual cuando la instancia principal se actualiza en tu nombre.
  • Mejor seguridad: en ocasiones, se lanzan nuevos objetos binarios para corregir problemas de seguridad. Con las actualizaciones automáticas, GKE asegura automáticamente que las actualizaciones de seguridad se apliquen y permanezcan siempre al día.
  • Facilidad de uso: proporciona una manera simple de mantener actualizados los nodos con las funciones más recientes de Kubernetes.

Los grupos de nodos con actualizaciones automáticas habilitadas se programan de forma automática para actualizarse cuando se actualizan las instancias principales de un clúster. Cuando se realiza la actualización, los nodos se desvían y se vuelven a crear para que coincidan con la instancia principal actual del clúster. Las modificaciones en el disco de arranque de una VM de nodo no se conservan en las recreaciones de nodos. Para conservar las modificaciones después de volver a crear el nodo, usa un DaemonSet.

La actualización automática de nodo no está disponible para clústeres Alfa.

Cómo habilitar las actualizaciones automáticas de nodo para grupos de nodos existentes

Cuando creas un clúster nuevo con Google Cloud Console o el comando de gcloud, la actualización automática de nodo se habilita de forma predeterminada.

Puedes habilitar la actualización automática de nodo si está inhabilitada en ese momento.

gcloud

Para habilitar las actualizaciones automáticas de un grupo de nodos existente, ejecuta el siguiente comando:

gcloud container node-pools update [NODE_POOL] --cluster [CLUSTER_NAME] \
    --zone [COMPUTE_ZONE] --enable-autoupgrade

Console

Para habilitar las actualizaciones automáticas de un grupo de nodos existente, realiza los siguientes pasos:

  1. Visita el menú de Google Kubernetes Engine en Cloud Console.

    Ir al menú Google Kubernetes Engine

  2. Haz clic en el botón Editar del clúster, que tiene forma de lápiz.

  3. En la sección de Grupos de nodos, haz clic en el botón de Edición avanzada del grupo de nodos que deseas modificar.

  4. Selecciona Habilitar actualización automática.

  5. Haz clic en Guardar para salir de la superposición de Edición avanzada.

  6. Vuelve a hacer clic en Guardar para modificar el clúster.

Para tener más control sobre cuándo se pueden actualizar los nodos de forma automática, considera configurar los períodos de mantenimiento y las exclusiones.

Cómo inhabilitar las actualizaciones automáticas de nodo para grupos de nodos existentes

Puedes inhabilitar la actualización automática de nodo para un grupo de nodos existente. Si lo haces, eres responsable de garantizar que los nodos del clúster ejecuten una versión compatible con la versión del clúster.

gcloud

Para inhabilitar las actualizaciones automáticas de un grupo de nodos existente, ejecuta el siguiente comando:

gcloud container node-pools update [NODE_POOL] --cluster [CLUSTER_NAME] \
    --zone [COMPUTE_ZONE] --no-enable-autoupgrade

Console

Para inhabilitar las actualizaciones automáticas de un grupo de nodos existente, realiza los siguientes pasos:

  1. Visita el menú de Google Kubernetes Engine en Cloud Console.

    Ir al menú Google Kubernetes Engine

  2. Haz clic en el botón Editar del clúster, que tiene forma de lápiz.

  3. En la sección de Grupos de nodos, haz clic en el botón de Edición avanzada del grupo de nodos que deseas modificar.

  4. Anula la selección de Habilitar actualización automática.

  5. Haz clic en Guardar para salir de la superposición de Edición avanzada.

  6. Vuelve a hacer clic en Guardar para modificar el clúster.

Crea un clúster o grupo de nodos con las actualizaciones automáticas de nodos habilitadas

gcloud

A fin de crear un clúster con actualizaciones automáticas habilitadas para el grupo de nodos predeterminado, especifica la marca --enable-autoupgrade en el comando gcloud container clusters create:

gcloud container clusters create [CLUSTER_NAME] --zone [COMPUTE_ZONE] \
    --enable-autoupgrade

Para crear un grupo de nodos con la actualización automática habilitada, usa lo siguiente:

gcloud container node-pools create [NODE_POOL] --cluster [CLUSTER_NAME] \
    --zone [COMPUTE_ZONE] --enable-autoupgrade

Console

Los clústeres y los grupos de nodos creados con Cloud Console tienen actualizaciones automáticas habilitadas de forma predeterminada. Consulta Crea un clúster o Cómo agregar y administrar grupos de nodos a fin de obtener instrucciones para crear clústeres y grupos de nodos.

Puedes inhabilitar las actualizaciones automáticas para clústeres o grupos de nodos nuevos. Para ello, haz clic en Edición avanzada, luego anula la selección de Habilitar actualización automática en el momento en que configuras el clúster o grupo de nodos.

Cambia los parámetros de actualización de aumento

Las actualizaciones de aumento te permiten cambiar la cantidad de nodos que GKE actualiza a la vez y la cantidad de interrupciones que una actualización genera en tus cargas de trabajo.

Las marcas max-surge-upgrade y max-unavailable-upgrade se definen para cada grupo de nodos.

Puedes cambiar esta configuración cuando creas un clúster o grupo de nodos.

Cómo crear un clúster con diferentes parámetros de aumento

Si deseas crear un clúster con una configuración diferente para las actualizaciones de aumento, usa las marcas max-surge-upgrade y max-novailable-upgrade.
gcloud beta container clusters create [CLUSTER_NAME] \
  --max-surge-upgrade=[SURGE_NODES] --max-unavailable-upgrade=[UNAVAILABLE_NODES]

Cómo crear un clúster con las actualizaciones de aumento inhabilitadas

Para crear un clúster sin actualizaciones de aumento, establece la marca max-surge-upgrade en 0.
gcloud beta container clusters create [CLUSTER_NAME] \
  --max-surge-upgrade=0 --max-unavailable-upgrade=1

Cómo crear un grupo de nodos con diferentes parámetros de aumento

A fin de crear un grupo de nodos en un clúster existente con diferentes parámetros de configuración para actualizaciones de aumento, usa las marcas max-surge-upgrade y max-unavailable-upgrade.
gcloud beta container node-pools create [NODE_POOL_NAME] \
  --num-nodes=[NUMBER_NODES] --cluster=[CLUSTER_NAME] \
  --max-surge-upgrade=[SURGE_NODES] --max-unavailable-upgrade=[UNAVAILABLE_NODES]

Comprueba si las actualizaciones de aumento están habilitadas en un grupo de nodos

A fin de ver si las actualizaciones de aumento están habilitadas en un grupo de nodos, usa gcloud para describir los parámetros del clúster.
gcloud beta container node-pools describe [NODE_POOL_NAME] \
--cluster=[CLUSTER_NAME]

Próximos pasos