View a markdown version of this page

Reversión de un clúster a una versión anterior de Kubernetes - Amazon EKS

Ayude a mejorar esta página

Para contribuir a esta guía del usuario, elija el enlace Edit this page on GitHub que se encuentra en el panel derecho de cada página.

Reversión de un clúster a una versión anterior de Kubernetes

Con la reversión de la versión de Kubernetes, puede revertir el plano de control de Kubernetes de su clúster a la versión secundaria anterior después de llevar a cabo una actualización in situ. Si detecta algún problema después de la actualización, como incompatibilidades entre aplicaciones, un uso obsoleto de la API o un comportamiento inesperado, puede revertirla para restaurar el clúster a un estado en buen funcionamiento conocido.

Durante una reversión, Amazon EKS revierte el servidor de la API de Kubernetes y los componentes del plano de control a la versión anterior mientras conserva todos los datos de etcd, las cargas de trabajo de los clientes y los volúmenes persistentes.

Qué se revierte

Se revierten los siguientes componentes:

  • Versión del servidor de la API de Kubernetes

  • Componentes del plano de control y sus configuraciones

  • Versión de la plataforma (se revierte a la versión de la plataforma más reciente de la versión anterior de Kubernetes)

  • Nodos de trabajo del modo automático de EKS. En el caso de los clústeres que ejecutan el modo automático de EKS, Amazon EKS administra automáticamente la reversión de los nodos de trabajo del modo automático antes de revertir el plano de control. Para obtener más información, consulte Reversión de clústeres del modo automático de EKS.

Qué NO se revierte

No se revierten los siguientes componentes:

  • Datos de etcd. Se conservan todos los estados, recursos y configuraciones del clúster.

  • Cargas de trabajo de los clientes. Los pods, las implementaciones y los servicios continúan en ejecución.

  • Complementos de EKS. Las versiones de los complementos permanecen sin cambios. Los administra por separado.

  • Datos y volúmenes persistentes. Todos los datos de los clientes permanecen intactos.

  • Nodos autoadministrados y nodos híbridos. Es responsable de revertirlos.

  • Grupos de nodos administrados. Debe revertirlos por separado mediante la API UpdateNodegroupVersion.

Requisitos previos

Antes de poder revertir un clúster, deben cumplirse todas las condiciones siguientes:

Requisito Details

Periodo de 7 días

Debe iniciar la reversión en un plazo de 7 días a partir de la finalización de la actualización. Después de 7 días, la reversión ya no estará disponible.

Clúster actualizado

El clúster debe haberse actualizado a su versión actual mediante una actualización in situ. Los clústeres creados en la versión actual no se pueden revertir.

Solo versión única

Solo se puede revertir a una versión secundaria (de N a N-1). Si actualizó de 1.31 a 1.32 y luego a 1.33, solo podrá revertir a 1.32, no a 1.31.

Versión de compatible

La reversión de la versión está disponible para las versiones de Amazon EKS compatibles actualmente.

Política de soporte extendido

Para revertir a una versión con soporte extendido, antes debe cambiar la política de actualización del clúster a EXTENDED.

Sin actualización automática al finalizar el soporte extendido

Si el clúster se actualizó automáticamente al finalizar el soporte extendido, no podrá revertirlo a la versión anterior. Si el clúster se actualizó automáticamente al finalizar el soporte estándar, puede revertirlo, pero debe cambiar antes la política de actualización a EXTENDED.

Estado del clúster

El estado del clúster debe ser ACTIVE. No puede iniciar una reversión mientras haya otra actualización en curso.

Compatibilidad de características de EKS

Si una característica de EKS habilitada en el clúster no es compatible con la versión anterior, la solicitud de reversión fallará. Esta comprobación no se puede omitir con --force.

Además de los requisitos anteriores, hay algunas condiciones que imposibilitan la reversión incluso con el indicador --force. Estas condiciones incluyen las siguientes: el clúster se creó con la versión actual, han pasado más de 7 días desde la actualización, el clúster ya se ha actualizado de nuevo a una versión más reciente o se ha habilitado una característica de EKS incompatible con versiones anteriores en el límite de la versión actual.

Resumen

A continuación, se ofrece un resumen general del proceso de reversión del clúster de Amazon EKS:

  1. Revise la información de preparación para la reversión para identificar cualquier problema que pueda afectar a la reversión.

  2. Resuelva cualquier problema de bloqueo (información de estado de ERROR) o utilice --force para omitir las comprobaciones de información.

  3. Verifique que las aplicaciones, los controladores personalizados y las herramientas de terceros sean compatibles con la versión anterior de Kubernetes.

  4. Si los nodos de trabajo ejecutan la misma versión de Kubernetes que el plano de control, revierta antes los nodos de trabajo.

  5. Si tiene complementos que ejecutan versiones incompatibles con la versión anterior de Kubernetes, cámbielos a una versión anterior que sea compatible.

  6. Inicie la reversión del plano de control.

  7. Supervise el progreso de la reversión.

importante

En el caso de los clústeres que ejecutan el modo automático de EKS, el paso 4 se gestiona automáticamente. Al iniciar la reversión, Amazon EKS revierte los nodos del modo automático antes del plano de control. Para obtener más información, consulte Reversión de clústeres del modo automático de EKS.

Paso 1: revisión de la información de preparación para la reversión

Amazon EKS evalúa automáticamente el clúster en función de un conjunto de comprobaciones de preparación para la reversión en un momento dado y detecta cualquier problema a través de la información del clúster en la categoría ROLLBACK_READINESS. Esta información aparece después de llevar a cabo una actualización y está disponible durante el periodo de 7 días en el que se puede revertir.

Visualización de la información de preparación para la reversión

Consola de AWS:

  1. Abra la consola de Amazon EKS.

  2. Seleccione el clúster.

  3. Seleccione la pestaña Información sobre actualizaciones. La información de preparación para la reversión aparece aquí después de una actualización.

  4. Revise cualquier información con el estado de ERROR o ADVERTENCIA.

AWS CLI:

aws eks list-insights \ --cluster-name my-cluster \ --region us-west-2 \ --filter '{"categories": ["ROLLBACK_READINESS"]}'

Para obtener detalles sobre una información específica:

aws eks describe-insight \ --cluster-name my-cluster \ --region us-west-2 \ --id <insight-id>

Actualización de la información

Amazon EKS actualiza la información cada 24 horas. Para activar manualmente una actualización después de resolver los problemas, elija el botón Actualizar en la consola de Amazon EKS o con la CLI:

aws eks start-insights-refresh \ --cluster-name my-cluster \ --region us-west-2
nota

Amazon EKS actualiza automáticamente la información al iniciar una reversión para asegurarse de que las comprobaciones se ejecuten en función del estado más reciente del clúster.

Comportamiento del estado de la información

En la siguiente tabla, se describe el significado de cada estado de la información y su efecto en la reversión:

Status Significado Efecto en la reversión

APROBADO

No se detectaron problemas en esta comprobación

Reversión permitida

ADVERTENCIA

Se detectó un posible problema, sin bloqueo

Reversión permitida (solo con carácter informativo)

ERROR

Se detectó un problema de bloqueo

La reversión se bloquea hasta que se resuelva o se utilice --force para omitirlo

UNKNOWN

No se puede determinar el estado

La reversión se bloquea hasta que se resuelva o se utilice --force para omitirlo

La información con el estado de ERROR o DESCONOCIDO bloquea la reversión. La información con el estado de APROBADO o ADVERTENCIA no le impiden efectuar la reversión.

Comprobaciones de preparación para la reversión

Amazon EKS lleva a cabo una serie de comprobaciones como parte de la información de preparación para la reversión. Estas comprobaciones evalúan la compatibilidad de uso de la API (incluida la detección de cambios de campos), el estado del clúster, el sesgo de las versiones de kubelet, el sesgo de las versiones de kube-proxy y la compatibilidad de las versiones de los complementos. En el caso de los clústeres que ejecutan el modo automático de EKS, las comprobaciones adicionales evalúan los presupuestos de interrupción de NodePool, las anotaciones do-not-disrupt y las configuraciones de PodDisruptionBudget.

Uso del indicador --force

Si la información de preparación para la reversión muestra el estado de ERROR y quiere continuar sin resolver los problemas, puede utilizar el indicador --force para omitir todas las comprobaciones de información:

aws eks update-cluster-version \ --name my-cluster \ --kubernetes-version 1.30 \ --force \ --region us-west-2
aviso

El uso de --force omite todas las comprobaciones de información (ERROR, ADVERTENCIA, DESCONOCIDO) y continúa directamente con la reversión. Amazon EKS no puede garantizar la seguridad de la reversión cuando se omiten las comprobaciones de información. Usted acepta toda la responsabilidad por cualquier problema que pueda surgir.

El indicador --force solo omite las comprobaciones de información. No omite las validaciones de requisitos previos, como el plazo de 7 días, la comprobación de la versión de creación o la comprobación secuencial de la reversión. Para los clústeres del modo automático, --force no anula los controles de interrupción. Se continúan respetando los presupuestos de interrupción de NodePool, los PDB y las anotaciones do-not-disrupt.

Paso 2: preparación de los nodos de trabajo

Antes de revertir el plano de control, asegúrese de que los nodos de trabajo sean compatibles con la versión de destino. La política de sesgo de versiones de Kubernetes exige que los nodos de trabajo no puedan ejecutar una versión más reciente que la del plano de control.

Modo automático de EKS

No hay que hacer nada. Al iniciar la reversión, Amazon EKS revierte automáticamente los nodos del modo automático antes del plano de control. Para obtener más información, consulte Reversión de clústeres del modo automático de EKS.

Grupos de nodos administrados (MNG)

Debe revertir los grupos de nodos administrados a la versión anterior antes de revertir el plano de control. Utilice la API UpdateNodegroupVersion:

aws eks update-nodegroup-version \ --cluster-name my-cluster \ --nodegroup-name my-nodegroup \ --kubernetes-version 1.30 \ --region us-west-2

La actualización del grupo de nodos respeta los ajustes de actualización configurados (maxUnavailable o maxUnavailablePercentage) y la estrategia de actualización (continua o forzada).

Nodos autoadministrados y nodos híbridos

Usted es responsable de revertir los nodos autoadministrados y los nodos híbridos. Actualice las AMI o las configuraciones de los nodos para usar la versión anterior de Kubernetes antes de revertir el plano de control.

Fargate

La reversión de la versión no es compatible con los nodos de trabajo de Fargate. Puede revertir el plano de control de un clúster que utilice Fargate, pero los pods de Fargate que ejecutan la misma versión de Kubernetes que el plano de control activan la información de sesgo de la versión de kubelet con el estado de ERROR.

Amazon EKS no puede revertir automáticamente los pods de Fargate a una versión anterior de kubelet.

Solución alternativa: si tiene pods de Fargate que ejecutan la misma versión de Kubernetes que el plano de control, elimínelos antes de iniciar la reversión. A continuación, revierta el plano de control. Los pods restantes se lanzarán con la versión revertida cuando los vuelva a implementar.

Como alternativa, utilice --force para omitir la comprobación de información. Sin embargo, continuar con una infracción del sesgo de la versión de kubelet podría provocar un comportamiento inesperado en las cargas de trabajo de Fargate hasta que se sustituyan esos pods.

Paso 3: reversión del plano de control del clúster

Puede iniciar una reversión con la consola de AWS, la AWS CLI o la API de EKS.

Reversión de un clúster con la consola de AWS

  1. Abra la consola de Amazon EKS.

  2. Seleccione el clúster.

  3. Elija el menú desplegable Acciones.

  4. Elija Revertir la versión del clúster.

  5. Revise el resumen de la reversión, incluidas las advertencias de información.

  6. Elija Revertir versión.

La reversión tarda varios minutos en completarse. Para los clústeres del modo automático, la fase de reversión de nodos puede tardar más. Para obtener más información, consulte Reversión de clústeres del modo automático de EKS.

Reversión de un clúster con la AWS CLI

Utilice el comando update-cluster-version existente con la versión anterior (N-1) de Kubernetes:

aws eks update-cluster-version \ --name my-cluster \ --kubernetes-version 1.30 \ --region us-west-2

Respuesta de ejemplo:

{ "update": { "id": "e4091a28-ea14-48fd-a8c7-975aeb469e8a", "status": "InProgress", "type": "VersionRollback", "params": [ { "type": "Version", "value": "1.30" }, { "type": "PlatformVersion", "value": "eks.16" } ], "createdAt": "2026-05-12T16:56:01.082000-04:00", "errors": [] } }
nota

Amazon EKS ejecuta una actualización de la información antes de llevar a cabo la reversión si los datos de la información están obsoletos.

Paso 4: supervisión del progreso de la reversión

Puede supervisar el estado de la reversión del clúster desde la consola de Amazon EKS o la AWS CLI.

AWS CLI:

aws eks describe-update \ --name my-cluster \ --region us-west-2 \ --update-id e4091a28-ea14-48fd-a8c7-975aeb469e8a

Consola de AWS:

  1. Abra la consola de Amazon EKS.

  2. Seleccione el clúster.

  3. Elija la pestaña Historial de actualizaciones.

  4. Localice el ID de actualización asociado a la reversión para ver su estado actual.

Transiciones de estado

Para clústeres estándar (sin el modo automático):

InProgress → Successful
InProgress → Failed

Para los clústeres del modo automático, el estado del clúster permanece como ACTIVE mientras los nodos se revierten y cambia a UPDATING solo cuando comienza la reversión del plano de control. Utilice describe-update para hacer un seguimiento del progreso general de la reversión. Para obtener más información, consulte Reversión de clústeres del modo automático de EKS.

Cuando se muestra el estado Successful, la reversión se ha completado.

Consideraciones y advertencias

La información es óptima y en un momento determinado

La información del clúster se evalúa en el momento en que se activa la reversión. Si hace cambios en el clúster después de comprobar la información, pero antes de que se complete la reversión (por ejemplo, al crear recursos con nuevas API), la comprobación inicial de la información no captura esos cambios y podrían provocar problemas una vez finalizada la reversión.

Conservación de datos de etcd

Amazon EKS conserva los datos de etcd durante la reversión. Los recursos incompatibles omitidos con el indicador --force permanecen persistentes y no se recopilan como elementos no utilizados.

Precios del soporte extendido

Si revierte de una versión con soporte estándar a una versión con soporte extendido, el clúster comienza a generar cargos por soporte extendido. Por ejemplo, si actualiza de la versión 1.30 (soporte extendido) a la 1.31 (soporte estándar) y, a continuación, revierte a la versión 1.30, los cargos por soporte extendido se reanudarán.

Modelo de responsabilidad compartida para la reversión

Amazon EKS revierte el plano de control de Kubernetes a la versión deseada. Como parte del modelo de responsabilidad compartida, usted es responsable de verificar la compatibilidad de la aplicación con la versión anterior:

  • Amazon EKS es responsable de revertir de forma segura los componentes del plano de control.

  • Usted es responsable de asegurarse de que las aplicaciones, configuraciones y dependencias sean compatibles con la versión anterior.

  • Debe revisar cualquier incompatibilidad entre las versiones, evaluar la exposición del clúster y mitigar cualquier problema.

Comportamiento de reversión de las pilas de CloudFormation

Si se produce un error en una actualización de pilas de AWS CloudFormation y se activa una reversión de pilas, la reversión a una versión anterior de la plantilla que especifique una versión inferior de Kubernetes no activa ninguna reversión de la versión del clúster. La reversión de la versión debe iniciarse de forma explícita a través de la API UpdateClusterVersion, la CLI o la consola.

Reversión y complementos

Amazon EKS no revierte automáticamente las versiones de los complementos durante la reversión de la versión de clúster. Debe administrar las versiones de los complementos por separado.

Antes de revertir el plano de control:

  1. Compruebe la compatibilidad de los complementos con la versión de destino mediante la información de preparación para la reversión.

  2. Si la versión de un complemento no es compatible con la versión anterior de Kubernetes, cambie antes a una versión inferior:

    aws eks update-addon \ --cluster-name my-cluster \ --addon-name vpc-cni \ --addon-version v1.22.4-eksbuild.3 \ --region us-west-2
  3. Una vez completada la reversión del plano de control, verifique que todos los complementos funcionen correctamente.

nota

La información de preparación para la reversión solo comprueba las versiones de los complementos administrados de EKS. En el caso de los complementos autoadministrados, es su responsabilidad validar la compatibilidad con la versión de destino antes de revertirlos.