En este documento se describe cómo habilitar y gestionar las actualizaciones de picos de uso de los grupos de nodos. Para obtener información sobre cómo funcionan las actualizaciones de sobreaprovisionamiento de grupos de nodos, consulta Información sobre las actualizaciones de sobreaprovisionamiento.
Cosas que debes tener en cuenta antes de ejecutar actualizaciones de picos
Antes de ejecutar una actualización de subida, ten en cuenta lo siguiente:
- Las instancias adicionales creadas como parte de este paso de aumento pueden superar el límite de cuota de instancias de AWS. Si no tienes suficiente cuota y no se pueden aprovisionar estas instancias adicionales, es posible que la actualización falle.
- Si
max-unavailable-update
se define como 0, las cargas de trabajo pueden seguir sufriendo interrupciones a medida que se desalojan los pods y se reprograman en los nodos más recientes. - El número máximo de nodos que se pueden actualizar simultáneamente es igual a la suma de
max-surge-update
ymax-unavailable-update
, y está limitado a 20.
Habilitar y configurar las actualizaciones con compensación
Para habilitar las actualizaciones de picos, póngase en contacto con el Google Cloud equipo de Asistencia. Una vez que el equipo de Asistencia habilite la función, podrá asignar valores a los parámetros max-surge-update
y max-unavailable-update
al crear o actualizar su grupo de nodos:
Crear
gcloud container aws node-pools create NODE_POOL_NAME
--cluster CLUSTER_NAME \
--location GOOGLE_CLOUD_LOCATION \
--max-surge-update MAX_SURGE \
--max-unavailable-update MAX_UNAVAILABLE
Actualizar
gcloud container aws node-pools update NODE_POOL_NAME
--cluster CLUSTER_NAME \
--location GOOGLE_CLOUD_LOCATION \
--max-surge-update MAX_SURGE \
--max-unavailable-update MAX_UNAVAILABLE
Haz los cambios siguientes:
NODE_POOL_NAME
: el nombre del grupo de nodos que se va a actualizar.CLUSTER_NAME
: el nombre del clúster.GOOGLE_CLOUD_LOCATION
: la región Google Cloud admitida que gestiona tu clúster. Por ejemplo,us-west1
.MAX_SURGE
: número máximo de nodos adicionales que se pueden crear temporalmente más allá del tamaño actual del grupo de nodos durante una actualización. Si ajustas este valor, puedes controlar cuántos nodos se actualizan simultáneamente. El valor predeterminado es 1, pero puedes cambiarlo a 0. Si asignas amax-surge-update
un valor superior a 0, GKE en AWS crea nodos de compensación. Si le asignas el valor 0, no se crearán.MAX_UNAVAILABLE
: número máximo de nodos que pueden no estar disponibles simultáneamente durante el proceso de actualización. Si aumentas este valor, se podrán actualizar más nodos simultáneamente. El valor predeterminado es 0, pero se puede aumentar.
Consultar la configuración de actualización de picos en un grupo de nodos
Para ver los ajustes de actualización de picos de un grupo de nodos, ejecuta el siguiente comando:
gcloud alpha container aws node-pools describe NODE_POOL_NAME
--cluster CLUSTER_NAME \
--location GOOGLE_CLOUD_LOCATION \
Haz los cambios siguientes:
NODE_POOL_NAME
: el nombre de tu grupo de nodos.CLUSTER_NAME
: el nombre del clúster.GOOGLE_CLOUD_LOCATION
: la región Google Cloud admitida que gestiona tu clúster. Por ejemplo,us-west1
.
Si el grupo de nodos tiene habilitadas las actualizaciones de aumento, el resultado de este comando muestra una sección etiquetada como surge_settings
. En esta sección surge_settings
se muestran los valores de los parámetros max_surge
y max_unavailable
.
Gestionar las actualizaciones de subidas que están en curso
Puedes cancelar una actualización de subida de tensión en curso, revertir una actualización de subida de tensión que haya fallado o reanudar una actualización que se haya interrumpido.
Cancelar (pausar) y reanudar una actualización de subida
En GKE on AWS, "cancelar" una actualización de aumento significa pausarla. Para obtener más información sobre cómo cancelar una actualización, consulta el artículo Cancelar una operación de actualización.
Es decir, si cancelas una actualización de subida de precios, no se revertirá. En su lugar, puede que el grupo de nodos se quede en un estado parcialmente actualizado con dos grupos de escalado automático: uno con nodos que ejecutan la configuración anterior y otro con nodos que ejecutan la nueva configuración. Para solucionar este problema, reanuda la actualización de la oleada ejecutando de nuevo el comando de actualización con los mismos parámetros de destino que la operación interrumpida. No se puede iniciar una actualización con parámetros de grupo de nodos diferentes hasta que finalice la actualización anterior.
Revertir una actualización con compensación fallida
Puedes restaurar un grupo de nodos a su estado original si se ha cancelado o se ha producido un error en una actualización de aumento.
Cosas que debes tener en cuenta antes de revertir una actualización de Surge
- Solo puedes revertir un grupo de nodos con picos habilitados que esté en un estado parcialmente actualizado (o en el estado
DEGRADED
). - Una vez que se inicia una reversión en un grupo de nodos, no se puede cancelar.
- No podrás realizar más operaciones de actualización hasta que la operación de reversión se complete correctamente.
- Solo puedes volver a intentar una reversión si falla.
- No puedes restaurar grupos de nodos después de que se hayan actualizado correctamente.
Cómo revertir una actualización de subida de precios fallida
Para revertir una operación de actualización fallida en el grupo de nodos, ejecuta el siguiente comando:
gcloud container aws node-pools rollback NODE_POOL_NAME
--cluster CLUSTER_NAME
Haz los cambios siguientes:
NODE_POOL_NAME
: el nombre del grupo de nodos que se va a actualizar.CLUSTER_NAME
: el nombre del clúster.
Cómo funciona la reversión
Al iniciar una reversión internamente, se inicia una nueva operación de actualización en el grupo de nodos. "Internamente" significa que este proceso se ejecuta dentro del propio sistema y no requiere tu intervención. La operación revierte los nodos del grupo de nodos a su estado original en la medida de lo posible.
Los nodos que pertenecen al antiguo grupo de autoescalado se desbloquean y se habilita el autoescalador de clúster de este grupo para permitir que las cargas de trabajo se programen en los nodos. Los nodos del grupo de nodos que se han actualizado parcialmente en el nuevo grupo de escalado automático se acordonan, se vacían y se terminan en función de los ajustes de aumento que hayas definido en tu intento inicial de actualización de aumento.
Gestionar actualizaciones de subidas fallidas
Tienes tres opciones para solucionar un problema con una actualización:
- Continuar con la actualización: puedes continuar con la actualización fallida usando los mismos ajustes del grupo de nodos de destino que en el intento inicial fallido.
- Restauración: usa el comando de restauración para devolver el grupo de nodos a su estado original.
- Modificar y reiniciar: si quieres cambiar los parámetros de la actualización de la oleada, debes eliminar el grupo de nodos y volver a crearlo con los nuevos ajustes. Para obtener instrucciones sobre cómo eliminar un grupo de nodos, consulta Eliminar un grupo de nodos.