Controla la frecuencia de las interrupciones causadas por las actualizaciones automáticas

En este documento, se presenta el concepto de presupuestos de interrupción del clúster y se explica cómo puedes personalizarlos de forma opcional para que se adapten a las necesidades de tu entorno. Los presupuestos de interrupción del clúster son una herramienta de un conjunto de funciones que permiten al administrador de la plataforma minimizar las interrupciones en las cargas de trabajo y, al mismo tiempo, mejorar su rendimiento, confiabilidad y seguridad.

Las actualizaciones del clúster, que se producen cuando GKE actualiza la versión que usan el plano de control y los nodos de tu clúster, pueden ser una fuente principal de interrupciones para un clúster de GKE. Para obtener más información sobre las actualizaciones, consulta Acerca de clúster de GKE de GKE. Para obtener información sobre todas las demás funciones para minimizar las interrupciones durante las actualizaciones del clúster, consulta la sección Control de las actualizaciones del clúster de ese documento. Para obtener más información general sobre los cambios en el ciclo de vida del clúster más allá de las actualizaciones, consulta Administra los cambios en el ciclo de vida del clúster para minimizar las interrupciones.

Qué es un presupuesto de interrupción del clúster

Para garantizar que las actualizaciones automáticas no interrumpan tu clúster con demasiada frecuencia, GKE aplica, de forma predeterminada, un presupuesto de interrupción del clúster para establecer un intervalo mínimo entre las actualizaciones automáticas del plano de control del clúster. GKE también aplica este presupuesto entre la creación del clúster y la primera actualización automática del plano de control. Además, si actualizas manualmente el plano de control del clúster, GKE respeta el presupuesto de interrupción del clúster cuando realiza la siguiente actualización automática. Siempre puedes actualizar el clúster de forma manual, incluso si esta actualización incumple el presupuesto de interrupciones del clúster.

En un clúster, GKE actualiza automáticamente el plano de control antes que los nodos. Por lo tanto, este presupuesto también establece la cadencia mínima de las actualizaciones automáticas de nodos del clúster.

GKE tiene presupuestos de interrupción predeterminados del clúster para diferentes tipos de actualizaciones de versiones:

  • Actualizaciones de versiones de parches: 24 horas
  • Actualizaciones de versiones secundarias: 30 días

GKE aplica el presupuesto entre los mismos tipos de actualizaciones. Por ejemplo, GKE espera 24 horas entre la actualización de un clúster entre las versiones de parche 1.35.0-gke.1403000 y 1.35.0-gke.1624000, y 30 días entre 1.34 y 1.35. Sin embargo, GKE espera 24 horas después de una actualización secundaria antes de realizar una actualización de parche.

GKE usa un presupuesto de interrupción del clúster solo para las actualizaciones del clúster y no para otros tipos de cambios en un clúster de GKE.

El presupuesto de interrupción del clúster es distinto de los períodos de mantenimiento y las exclusiones, pero puede combinarse bien con ellos. Las políticas de mantenimiento controlan cuándo puede o no puede ocurrir el mantenimiento del clúster de GKE, mientras que el presupuesto de interrupción del clúster establece un intervalo de tiempo específico entre las actualizaciones del clúster.

Cuándo personalizar el presupuesto de interrupción de tu clúster

Los presupuestos de interrupción predeterminados del clúster de GKE reflejan un equilibrio entre la puntualidad de las actualizaciones y la optimización de la estabilidad, a la vez que evitan las actualizaciones consecutivas. Sin embargo, es posible que estos valores generales no sean ideales para tu entorno de clúster.

Si deseas controlar esta cantidad mínima de tiempo entre las actualizaciones automáticas del clúster, puedes configurar el presupuesto de interrupciones del clúster. Por ejemplo, considera las siguientes situaciones:

  • Tienes un proceso personalizado para evaluar una versión de parche del plano de control de GKE antes de enviar la versión a producción, y este proceso lleva una cantidad específica de tiempo mayor que el presupuesto predeterminado del clúster.
  • Tienes clústeres grandes que tardan más en actualizar todos los grupos de nodos. Deseas mantener una coherencia relativa de las versiones en estos grupos de nodos. Por lo tanto, disminuyes la frecuencia de las actualizaciones de parches y las realizas mensualmente, al mismo tiempo que permites períodos de mantenimiento frecuentes para garantizar que las actualizaciones de grupos de nodos se completen de manera oportuna.

Cómo establecer el presupuesto de interrupción del clúster para las actualizaciones automáticas

Si tienes una necesidad específica de controlar el intervalo entre dos actualizaciones secundarias o dos actualizaciones de parches, puedes establecer tus propios presupuestos de interrupción del clúster. Sin embargo, primero te recomendamos que configures una ventana de mantenimiento para establecer un horario recurrente para el mantenimiento del clúster de GKE. Luego, puedes personalizar de forma opcional el intervalo entre las actualizaciones con el presupuesto de interrupción del clúster.

Te recomendamos que uses el presupuesto de interrupción del clúster junto con las otras herramientas disponibles que ofrece GKE para controlar las actualizaciones del clúster. Estos parámetros de configuración, que funcionan con todas las demás herramientas de actualización, solo afectan el momento en que GKE actualiza automáticamente un clúster a una versión nueva. GKE sigue cumpliendo con los períodos y las exclusiones de mantenimiento, sigue el orden de una secuencia de lanzamiento y aplica cualquier otra práctica estándar que se suela usar para las actualizaciones automáticas.

El presupuesto de interrupción predeterminado del clúster es de 24 horas para las actualizaciones de parches y de 30 días para las actualizaciones secundarias. Puedes configurar los intervalos para cualquier período entre 0 y 90 días. Sin embargo, debes tener en cuenta las siguientes consideraciones cuando actualices estos valores:

  • Te recomendamos que no establezcas el intervalo de actualizaciones de parches en más de 30 días, a menos que tengas un proceso de calificación de versiones específico que lleve más tiempo. Es posible que te pierdas parches críticos si realizas actualizaciones con una frecuencia menor a 30 días.
  • Te recomendamos que permitas las actualizaciones secundarias con la frecuencia que sea aceptable para tu entorno de clúster. Si estableces el intervalo de actualizaciones secundarias en el máximo de 90 días, aumentas la probabilidad de que GKE deba actualizar tu clúster desde la versión secundaria cuando alcance el final de la asistencia. GKE se adhiere a un presupuesto de interrupciones del clúster independiente de 7 días para las actualizaciones secundarias cuando una versión secundaria llega al final de la asistencia, y no se adhiere a ningún presupuesto de interrupciones del clúster que hayas configurado. Para obtener más información, consulta Actualizaciones automáticas al final de la compatibilidad.
  • Te recomendamos que establezcas el intervalo de actualizaciones de parches para un período más corto que el intervalo de actualizaciones secundarias.

Antes de comenzar

Antes de comenzar, asegúrate de haber realizado las siguientes tareas:

  • Habilita la API de Google Kubernetes Engine.
  • Habilitar la API de Google Kubernetes Engine
  • Si deseas usar Google Cloud CLI para esta tarea, instala y, luego, inicializa gcloud CLI. Si ya instalaste gcloud CLI, ejecuta el comando gcloud components update para obtener la versión más reciente. Es posible que las versiones anteriores de gcloud CLI no admitan la ejecución de los comandos que se describen en este documento.

Configura el presupuesto de interrupción del clúster

Primero, si aún no lo hiciste, te recomendamos que configures un período de mantenimiento.

Luego, para establecer un presupuesto de interrupción del clúster personalizado, usa las siguientes marcas cuando crees o actualices un clúster con gcloud CLI:

  • Actualizaciones menores: --maintenance-minor-version-disruption-interval=MINOR_INTERVAL
  • Actualizaciones de parches: --maintenance-patch-version-disruption-interval=PATCH_INTERVAL

En el caso de estas marcas, reemplaza MINOR_INTERVAL o PATCH_INTERVAL, respectivamente, por una duración expresada en segundos entre 0 días (0s) y 90 días (7776000s).

Puedes usar estas marcas en las siguientes situaciones:

Puedes usar las marcas al mismo tiempo o de forma independiente.

Restablece el presupuesto de interrupción del clúster a los valores predeterminados

Para restablecer el presupuesto de interrupciones del clúster a los valores predeterminados de 24 horas para las actualizaciones de parches y 30 días para las actualizaciones secundarias, puedes usar las siguientes marcas:

  • Actualizaciones menores: --clear-maintenance-minor-version-disruption-interval
  • Actualizaciones de parches: --clear-maintenance-patch-version-disruption-interval

Usa estas marcas cuando actualices un clúster con el comando gcloud container cluster update.

Puedes usar las marcas al mismo tiempo o de forma independiente.