Compartir vía


Actualizar imágenes de Kubernetes y de nodo en varios clústeres mediante Azure Kubernetes Fleet Manager

Los administradores de plataformas que administran un gran número de clústeres suelen tener problemas con el almacenamiento provisional de las actualizaciones de varios clústeres (por ejemplo, la actualización de la imagen del SO de nodo, o las versiones de Kubernetes) de forma segura y predecible. Para abordar este desafío, Azure Kubernetes Fleet Manager (Fleet) le permite organizar las actualizaciones en varios clústeres mediante ejecuciones de actualización.

Las ejecuciones de actualización constan de fases, grupos y estrategias, y pueden aplicarse manualmente para actualizaciones puntuales, o automáticamente, para actualizaciones periódicas continuas mediante perfiles de actualización automática. Todas las ejecuciones de actualización (manuales o automatizadas) respetan las ventanas de mantenimiento del clúster miembro.

En esta guía se explica cómo configurar y ejecutar manualmente las ejecuciones de actualización.

Captura de pantalla del panel de Azure Portal para un recurso de flota, en la que se muestran las versiones del clúster miembro y las imágenes de nodo de Kubernetes en uso en todos los grupos de nodos de los clústeres de miembros.

Requisitos previos

  • Siga la introducción conceptual de esta característica, que proporciona una explicación de las estrategias de actualización, las ejecuciones, las fases y los grupos a los que se hace referencia en esta guía.

  • Debes tener un recurso Fleet con uno o varios clústeres miembro. Si no es así, siga el inicio rápido para crear un recurso Fleet y combinar clústeres de Azure Kubernetes Service (AKS) como miembros.

  • Establezca estas variables de entorno:

    export GROUP=<resource-group>
    export FLEET=<fleet-name>
    
  • Si vas a seguir las instrucciones de la CLI de Azure de esta página, necesitarás tener instalada la versión 2.58.0 o posterior de la CLI de Azure. Para la instalación o la actualización, consulte Instalación de la CLI de Azure.

  • También necesitarás la extensión de la CLI de Azure fleet, que se puede instalar ejecutando el siguiente comando:

    az extension add --name fleet
    

    Ejecute el comando az extension update para actualizar a la versión más reciente de la extensión publicada:

    az extension update --name fleet
    

Crear ejecuciones de actualización

Nota:

Las ejecuciones de actualización respetan las ventanas de mantenimiento planeado que establezca en el nivel de clúster de AKS. Para obtener más información, consulte mantenimiento planeado en varios clústeres de miembros, que explica cómo las ejecuciones de actualización controlan los clústeres de miembros configurados con ventanas de mantenimiento planeado.

La ejecución de la actualización admite dos opciones para la secuencia de actualización del clúster:

  • Uno a uno: si no le importa controlar la secuencia de actualización del clúster, one-by-one proporciona un enfoque sencillo para actualizar todos los clústeres miembros de la flota en la secuencia uno a uno.
  • Secuencia de control de clústeres mediante grupos de actualizaciones y fases: si desea controlar la secuencia de actualización del clúster, puede estructurar los clústeres miembros en grupos de actualizaciones y fases de actualización. Puede almacenar esta secuencia como una plantilla en forma de estrategia de actualización. Puede crear ejecuciones de actualización más adelante mediante las estrategias de actualización en lugar de definir la secuencia cada vez que necesite crear una ejecución de actualización.

Actualizar todos los clústeres uno a uno

  1. En Azure Portal, vaya al recurso de Azure Kubernetes Fleet Manager.

  2. En el menú de servicio, en Configuración, seleccione Actualización de varios clústeres>Crear una ejecución.

  3. Escriba un nombre para la ejecución de la actualización y, a continuación, seleccione Uno por uno para el tipo de actualización.

    Captura de pantalla del panel de Azure Portal para crear ejecuciones de actualizaciones que actualizan clústeres uno por uno en Azure Kubernetes Fleet Manager.

  4. Seleccione una de las siguientes opciones para el Ámbito de actualización:

    • Versión de Kubernetes para grupos de nodos y planos de control
    • Versión de Kubernetes solo para el plano de control del clúster
    • Solo la versión de la imagen del nodo
  5. Seleccione una de las siguientes opciones para la Imagen de nodo:

    • Imagen más reciente: actualiza todos los clústeres de AKS en la ejecución de la actualización a la imagen más reciente disponible para ese clúster en su región.
    • Imagen coherente: como es posible que una ejecución de actualización tenga clústeres de AKS en varias regiones donde las imágenes de nodo disponibles más recientes pueden ser diferentes, comprueba el seguimiento de versiones para obtener más información. La ejecución de la actualización elige la imagen común más reciente en todas estas regiones para lograr la coherencia.

    Captura de pantalla del panel de Azure Portal para crear ejecuciones de actualización. Se muestra la sección ámbito de actualización.

  6. Seleccione Crear para crear la ejecución de la actualización.

Asignar clústeres para actualizar grupos y fases

Actualizar los grupos y fases proporcionan más control sobre la secuencia seguida por las ejecuciones de actualización al actualizar los clústeres. Dentro de una fase de actualización, las actualizaciones se aplican a todos los distintos grupos de actualizaciones en paralelo. Dentro de un grupo de actualizaciones, los clústeres miembro se actualizan secuencialmente.

Puede asignar un clúster de miembros a un grupo de actualizaciones específico de una de estas dos maneras:

Asigne al grupo al agregar un clúster miembro a la flota

  1. En Azure Portal, vaya al recurso de Azure Kubernetes Fleet Manager.

  2. En el menú del servicio, en Configuración, seleccione Clústeres de miembros>Agregar.

    Captura de pantalla de la página de Azure Portal para clústeres de Azure Kubernetes Fleet Manager.

  3. Seleccione el clúster que desea agregar y, a continuación, seleccione Siguiente: revisar y agregar.

  4. Escriba el nombre del grupo de actualizaciones al que desea asignar el clúster y, a continuación, seleccione Agregar.

Asignar un miembro de flota existente a un grupo de actualizaciones

  1. En Azure Portal, vaya al recurso de Azure Kubernetes Fleet Manager.

  2. En el menú del servicio, en Configuración, seleccione Clústeres de miembros.

  3. Seleccione el clúster o los clústeres que desea asignar a un grupo de actualizaciones y, a continuación, seleccione Asignar grupo de actualizaciones

    Captura de pantalla de la página de Azure Portal para asignar clústeres de miembros existentes a un grupo.

  4. Escriba el nombre del grupo de actualizaciones al que desea asignar el clúster y, a continuación, seleccione Asignar.

    Captura de pantalla de la página de Azure Portal para los clústeres de miembros que muestra el formulario para actualizar el grupo de un clúster miembro.

Nota:

Un miembro de flota solo puede formar parte de un grupo de actualizaciones, pero un grupo de actualizaciones puede tener varios miembros de la flota asignados. El propio grupo de actualizaciones no es un tipo de recurso independiente. Los grupos de actualización son solo cadenas que representan referencias de los miembros de la flota. Por lo tanto, si se eliminan todos los miembros de la flota que tienen referencias a un grupo de actualizaciones común, ese grupo de actualizaciones específico dejará de existir también.

Definir la ejecución y las fases de la actualización

Puede definir una ejecución de actualización mediante fases de actualización para ordenar secuencialmente la aplicación de actualizaciones a diferentes grupos de actualizaciones. Por ejemplo, una primera fase de actualización puede actualizar los clústeres de miembros del entorno de prueba, y una segunda fase de actualización puede actualizar más tarde los clústeres de miembros del entorno de producción. También puede especificar un tiempo de espera entre las fases de actualización.

  1. En Azure Portal, vaya al recurso de Azure Kubernetes Fleet Manager.

  2. En el menú de servicio, en Configuración, seleccione Actualización de varios clústeres>Crear una ejecución.

  3. Escriba un nombre para la ejecución de la actualización y, a continuación, seleccione Fases para el tipo de secuencia de actualización.

    Captura de pantalla de la página de Azure Portal para elegir el modo de fases dentro de la ejecución de la actualización.

  4. Seleccione Crear fase y escriba un nombre para la fase y el tiempo de espera entre las fases.

    Captura de pantalla de la página de Azure Portal para crear una fase y definir el tiempo de espera.

  5. Seleccione los grupos de actualizaciones que se desean incluir en esta fase. También puede especificar el orden de los grupos de actualizaciones si desea actualizarlos en una secuencia específica. Seleccione Crear cuando haya terminado.

    Captura de pantalla de la página de Azure Portal para la creación de fases que muestra la selección de grupos de actualización.

  6. Seleccione una de las siguientes opciones para el Ámbito de actualización:

    • Versión de Kubernetes para grupos de nodos y planos de control
    • Versión de Kubernetes solo para el plano de control del clúster
    • Solo la versión de la imagen del nodo
  7. Seleccione una de las siguientes opciones para la Imagen de nodo:

    • Imagen más reciente: actualiza todos los clústeres de AKS en la ejecución de la actualización a la imagen más reciente disponible para ese clúster en su región.
    • Imagen coherente: como es posible que una ejecución de actualización tenga clústeres de AKS en varias regiones donde las imágenes de nodo disponibles más recientes pueden ser diferentes, comprueba el seguimiento de versiones para obtener más información. La ejecución de la actualización elige la imagen común más reciente en todas estas regiones para lograr la coherencia.

    Captura de pantalla del panel de Azure Portal para crear ejecuciones de actualización. Se muestra la sección ámbito de actualización.

  8. Seleccione Crear para crear la ejecución de la actualización.

    Especificar fases y su orden cada vez que la creación de una ejecución de actualización puede resultar una tarea repetitiva y complicada. Las estrategias de actualización simplifican este proceso al permitir almacenar plantillas para ejecuciones de actualizaciones. Para obtener más información, consulte Creación y uso de la estrategia de actualización.

  9. En el menú Actualización de varios clústeres, seleccione la ejecución de actualización y, a continuación, seleccione Iniciar.

Crear una ejecución de actualización mediante estrategias de actualización

La creación de una ejecución de actualización requiere especificar las fases, los grupos y el orden cada vez. Las estrategias de actualización simplifican este proceso al permitir almacenar plantillas para ejecuciones de actualizaciones.

Nota:

Es posible crear varias ejecuciones de actualización con nombres únicos de la misma estrategia de actualización.

Puede crear una estrategia de actualización mediante uno de los métodos siguientes:

Guardar una estrategia de actualización al crear una ejecución de actualización

  • Guarde una estrategia de actualización al crear una ejecución de actualización en Azure Portal:

    Captura de pantalla de Azure Portal en la que se muestran las fases de ejecución de actualizaciones que se guardan como una estrategia de actualización.

Crear una nueva estrategia de actualización y hacer referencia a ella al crear una ejecución de actualización

  1. Vaya a la página Actualización de varios clústeres y seleccione Estrategias>Crear una estrategia:

    Captura de pantalla de Azure Portal en la que se muestra la creación de una estrategia de actualización.

  2. Configure los detalles de la estrategia de actualización y, a continuación, seleccione Crear.

  3. Haga referencia a la estrategia de actualización al crear nuevas ejecuciones de actualización posteriores:

    Captura de pantalla de Azure Portal en la que se muestra la creación de una nueva ejecución de actualización. El botón

Administrar una ejecución de actualización

En las secciones siguientes se explica cómo administrar una ejecución de actualizaciones mediante Azure Portal y la CLI de Azure.

  • En la página Actualización de varios clústeres del recurso de flota, puede Iniciar una ejecución de actualización que esté en estado No iniciado o Error:

    Captura de pantalla de Azure Portal en la que se muestra cómo iniciar una ejecución de actualización en estado

  • En la página Actualización de varios clústeres del recurso de flota, puede Detener una ejecución de actualización que actualmente esté En ejecución:

    Captura de pantalla de Azure Portal en la que se muestra cómo detener una ejecución de actualización en estado

  • Dentro de cualquier ejecución de actualización en estado No iniciado, Error o En ejecución, puede seleccionar cualquier Fase y Omitir la actualización:

    Captura de pantalla de Azure Portal en la que se muestra cómo omitir la actualización de una fase específica en una ejecución de actualización.

    También puede omitir la actualización en el nivel de grupo de actualizaciones o de clúster de miembros.

Para obtener más información, consulte Información general conceptual sobre los estados de ejecución de actualización y comportamiento de la omisión en ejecuciones, fases o grupos.

Pasos siguientes

Obtenga más información acerca de Azure Kubernetes Fleet Manager.