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

Ayude a mejorar esta página

¿Quiere contribuir a esta guía del usuario? Desplácese hasta el final de esta página y seleccione Editar esta página en GitHub. Sus contribuciones ayudarán a que nuestra guía del usuario sea mejor para todos.

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 eksctl o la AWS Management Console. La versión a la que se actualiza no puede ser superior a la versión del plano de control.

eksctl
Para actualizar una versión de grupo de nodos con 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. Sustituya cada example value con valores propios.

    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 en el 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 de 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.31, puede actualizar los procesos que ejecutan Kubernetes 1.30 actualmente a la versión 1.31 con el siguiente comando.

    eksctl upgrade nodegroup \ --name=node-group-name \ --cluster=my-cluster \ --region=region-code \ --kubernetes-version=1.31
AWS Management Console
Para actualizar una versión de grupo de nodos con la AWS Management Console
  1. Abra la consola de Amazon EKS en https://console.aws.amazon.com/eks/home#/clusters.

  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 Compute (Computación), verá Update now (Actualizar ahora) en la columna AMI release version (Versión de lanzamiento de la AMI) de la tabla Node groups (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.

Para editar una configuración de grupo de nodos
  1. Abra la consola de Amazon EKS en https://console.aws.amazon.com/eks/home#/clusters.

  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 Save changes (Guardar cambios).

importante

Al actualizar la configuración del grupo de nodos, cuando se modifica NodegroupScalingConfig, no se respetan los presupuestos de interrupción (PDB) de Pod. 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.