Actualización de un grupo de nodos administrados para un clúster - Amazon EKS

Actualización de un grupo de nodos administrados para un clúster

Cuando inicia una actualización de grupo de nodos administrados, Amazon EKS actualiza los nodos de forma automática al completar los pasos que se indican en Descripción de cada fase de las actualizaciones de los nodos. Si utiliza una AMI optimizada para Amazon EKS, Amazon EKS aplica automáticamente los últimos parches de seguridad y actualizaciones del sistema operativo a los nodos como parte de la versión más reciente de la AMI.

Existen varios escenarios en los que resulta útil actualizar la versión o configuración del grupo de nodos administrado de Amazon EKS:

Si hay una versión de lanzamiento de AMI más reciente para la versión de Kubernetes del grupo de nodos administrado, puede actualizar la versión de su grupo de nodos para utilizar esa nueva versión de la AMI. De manera similar, si su clúster está ejecutando una versión de Kubernetes más reciente que su grupo de nodos, puede actualizar el grupo de nodos para que utilice la última versión de la AMI que coincida con la versión de Kubernetes del clúster.

Cuando se termina un nodo de un grupo de nodos administrados debido a una operación de escalado o actualización, los Pods de ese nodo se drenan primero. Para obtener más información, consulte Descripción de cada fase de las actualizaciones de los nodos.

Actualizar una versión de grupo de nodos

Puede actualizar una versión del grupo de nodos con una de las siguientes opciones:

La versión a la que se actualiza no puede ser superior a la versión del plano de control.

eksctl

Actualice un grupo de nodos gestionado mediante eksctl

Actualice un grupo de nodos administrado a la última versión de AMI de la misma versión de Kubernetes implementada actualmente en los nodos de trabajo con el siguiente comando. Reemplace todos los valores de ejemplo por sus propios valores.

eksctl upgrade nodegroup \ --name=node-group-name \ --cluster=my-cluster \ --region=region-code
nota

Si va a actualizar un grupo de nodos que se implementa con una plantilla de lanzamiento a una nueva versión de plantilla de lanzamiento, agregue --launch-template-version version-number al comando anterior. La plantilla de lanzamiento debe cumplir los requisitos descritos en Personalización de nodos administrados con plantillas de lanzamiento. Si la plantilla de lanzamiento incluye una AMI personalizada, la AMI debe cumplir los requisitos en Especificación de una AMI. Cuando actualiza el grupo de nodos a una versión más reciente de la plantilla de lanzamiento, todos los nodos se reciclan para que coincidan con la nueva configuración de la versión de la plantilla de lanzamiento especificada.

No puede actualizar directamente un grupo de nodos que se implementa sin una plantilla de lanzamiento a una nueva versión de la plantilla de lanzamiento. En su lugar, debe implementar un nuevo grupo de nodos mediante la plantilla de lanzamiento para actualizar el grupo de nodos a una nueva versión de la plantilla de lanzamiento.

Puede actualizar un grupo de nodos a la misma versión que la versión de Kubernetes del plano de control. Por ejemplo, si tiene un clúster que ejecuta Kubernetes 1.29, puede actualizar los procesos que ejecutan Kubernetes 1.28 actualmente a la versión 1.29 con el siguiente comando.

eksctl upgrade nodegroup \ --name=node-group-name \ --cluster=my-cluster \ --region=region-code \ --kubernetes-version=1.29

AWS Management Console

Actualice un grupo de nodos administrado mediante la AWS Management Console

  1. Abra la consola de Amazon EKS.

  2. Elija el clúster que contiene el grupo de nodos que desea actualizar.

  3. Si al menos un grupo de nodos tiene una actualización disponible, aparece un cuadro en la parte superior de la página con una notificación sobre la actualización disponible. Si selecciona la pestaña Computación, verá Actualizar ahora en la columna Versión de lanzamiento de la AMI de la tabla Grupos de nodos para el grupo de nodos que tenga una actualización disponible. Para actualizar el grupo de nodos, elija Update now (Actualizar ahora).

    No verá una notificación para los grupos de nodos que se implementaron con una AMI personalizada. Si los nodos se implementan con una AMI personalizada, complete los siguientes pasos para implementar una nueva AMI personalizada actualizada.

    1. Cree una nueva versión de su AMI.

    2. Cree una nueva versión de la plantilla de lanzamiento con el nuevo ID de AMI.

    3. Actualice los nodos a la nueva versión de la plantilla de lanzamiento.

  4. En el cuadro de diálogo Update node group version (Actualizar la versión del grupo de nodos), active o desactive las siguientes opciones:

    • Update node group version (Actualizar la versión del grupo de nodos): esta opción no está disponible si ha implementado una AMI personalizada o su AMI optimizada para Amazon EKS está actualmente en la versión más reciente del clúster.

    • Change launch template version (Cambiar la versión de la plantilla de lanzamiento): esta opción no está disponible si el grupo de nodos se implementa sin una plantilla de lanzamiento personalizada. Solo puede actualizar la versión de la plantilla de lanzamiento para un grupo de nodos que se haya implementado con una plantilla de lanzamiento personalizada. Seleccione la versión de la plantilla de lanzamiento a la que desea actualizar el grupo de nodos. Si el grupo de nodos está configurado con una AMI personalizada, la versión que seleccione también debe especificar una AMI. Al actualizar a una versión más reciente de la plantilla de lanzamiento, todos los nodos se reciclan para que coincidan con la nueva configuración de la versión de la plantilla de lanzamiento especificada.

  5. En Actualizar estrategia, seleccione una de las siguientes opciones:

    • Actualización continua: esta opción respeta los presupuestos de interrupción del Pod para el clúster. Se produce un error en las actualizaciones si hay un problema de presupuesto de interrupción de Pod que hace que Amazon EKS no pueda vaciar correctamente los Pods que se están ejecutando en este grupo de nodos.

    • Actualización forzada: esta opción no respeta los presupuestos de interrupción del Pod. Las actualizaciones se producen independientemente de los problemas presupuestarios de la interrupción del Pod al forzar el reinicio de los nodos.

  6. Elija Actualizar.

Editar una configuración de grupo de nodos

Puede modificar algunas de las opciones de configuración de un grupo de nodos administrado.

  1. Abra la consola de Amazon EKS.

  2. Elija el clúster que contiene el grupo de nodos que desea editar.

  3. Seleccione la pestaña Compute (Informática).

  4. Seleccione el grupo de nodos que desea editar y elija Edit (Editar).

  5. (Opcional) En la página Editar grupo de nodos, haga lo siguiente:

    1. Edite la configuración de escalado del grupo de nodos.

      • Tamaño deseado: especifica el número actual de nodos que debe mantener el grupo de nodos administrado.

      • Tamaño mínimo: Especifica la cantidad mínima de nodos a los que puede escalar el grupo de nodos administrado.

      • Tamaño máximo: especifica el número máximo de nodos a los que puede escalar el grupo de nodos administrado. Para obtener el número máximo de nodos admitidos en un grupo de nodos, consulte Visualización y administración de Amazon EKS y las Service Quotas de Fargate.

    2. (Opcional) Agregue o elimine etiquetas de Kubernetes para los nodos de su grupo de nodos. Las etiquetas que se muestran aquí son solo las que se han aplicado con Amazon EKS. Pueden existir otras etiquetas en los nodos que no se muestran aquí.

    3. (Opcional) Agregue o elimine taints de Kubernetes para los nodos de su grupo de nodos. Las taints agregadas pueden tener el efecto de NoSchedule , NoExecute o PreferNoSchedule . Para obtener más información, consulte Limitación para que los Pods no se programen en nodos específicos.

    4. (Opcional) Agregue o elimine etiquetas del recurso de su grupo de nodos. Estas etiquetas solo se aplican al grupo de nodos de Amazon EKS. No se propagan a ningún otro recurso, como las subredes o instancias de Amazon EC2 en el grupo de nodos.

    5. (Opcional) Edite la Configuración de la actualización del grupo de nodos. Seleccione el Number (Número) o el Percentage (Porcentaje).

      • Número: seleccione y especifique el número de nodos del grupo de nodos que se pueden actualizar en paralelo. Estos nodos no estarán disponibles durante la actualización.

      • Porcentaje: seleccione y especifique el porcentaje de nodos del grupo de nodos que se pueden actualizar en paralelo. Estos nodos no estarán disponibles durante la actualización. Esto es útil si tiene varios nodos en su grupo de nodos.

    6. Cuando haya terminado de editar, elija Guardar cambios.

importante

Al actualizar la configuración del grupo de nodos, cuando se modifica el NodegroupScalingConfig, no se respetan los presupuestos de interrupción de Pod (PDB). A diferencia del proceso de actualización de grupos de nodos (que vacía los nodos y respeta los PDB durante la fase de actualización), al actualizar la configuración de escalado, los nodos se terminan inmediatamente a través de una llamada de reducción vertical del grupo de escalado automático (ASG). Esto ocurre sin tener en cuenta los PDB, independientemente del tamaño objetivo al que se reduce verticalmente. Esto significa que cuando se reduce el desiredSize de un grupo de nodos administrados por Amazon EKS, los Pods se expulsan en cuanto se terminan los nodos, sin respetar ningún PDB.