Actualizar entornos

Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3

En esta página, se explica cómo se puede actualizar un entorno.

Información acerca de las operaciones de actualización

Cuando cambias los parámetros de tu entorno, como especificar un escalamiento nuevo y parámetros de rendimiento, o instalar paquetes PyPI personalizados, actualizaciones del entorno.

Una vez finalizada esta operación, los cambios estarán disponibles en tu en un entorno de nube.

Para un solo entorno de Cloud Composer, puedes iniciar solo una operación de actualización a la vez. Debes esperar a que se complete una operación de actualización antes de iniciar otra operación de entorno.

Cómo afectan las actualizaciones a las tareas de Airflow en ejecución

Cuando ejecutas una operación de actualización, es posible que los programadores y trabajadores de Airflow de tu entorno requieran un reinicio. En este caso, se finalizan todas las tareas que se están ejecutando. Después de que se complete la operación de actualización, Airflow programa estas tareas para que se vuelvan a intentar, según la forma en que configures las reintentos para tus DAG.

Los siguientes cambios causan la finalización de la tarea de Airflow:

  • Actualizar el entorno a una versión nueva
  • Agregar, cambiar o borrar paquetes de PyPI personalizados
  • Cambiar las variables de entorno de Cloud Composer
  • Agregar o quitar anulaciones de opciones de configuración de Airflow, o cambiar sus valores
  • Cambiar la CPU, la memoria o el almacenamiento de los trabajadores de Airflow
  • Reducir la cantidad máxima de trabajadores de Airflow, si el valor nuevo es inferior a la cantidad de trabajadores que se están ejecutando actualmente Por ejemplo, si un actualmente ejecuta tres trabajadores, y el máximo se reduce a dos.
  • Cambiar el modo de resiliencia del entorno

Los siguientes cambios no causan la finalización de la tarea de Airflow:

  • Crear, actualizar o borrar un DAG (no una operación de actualización)
  • Pausar o reanudar DAGs (no es una operación de actualización)
  • Cambiar las variables de Airflow (no una operación de actualización).
  • Cambiar las conexiones de Airflow (no es una operación de actualización)
  • Habilita o inhabilita la integración del linaje de datos de Dataplex.
  • Cambiar el tamaño del entorno
  • Cambiar la cantidad de programadores
  • Cambiar la CPU, la memoria o el almacenamiento de los programadores de Airflow
  • Cambiar la cantidad de activadores
  • Cambiar la CPU, la memoria o el almacenamiento de los activadores de Airflow
  • Cambiar la CPU, la memoria o el almacenamiento del servidor web de Airflow
  • Aumentar o disminuir la cantidad mínima de trabajadores
  • Reduce la cantidad máxima de trabajadores de Airflow. Por ejemplo, si un en la actualidad, ejecuta dos trabajadores y el máximo se reduce a tres.
  • Cambiar los períodos de mantenimiento
  • Cambiando la configuración de las instantáneas programadas.
  • Cambiar las etiquetas de entorno

Actualiza con Terraform

Ejecuta terraform plan antes del terraform apply para ver si Terraform crea una en lugar de actualizarlo.

Antes de comenzar

Actualizar entornos

Para obtener más información sobre la actualización de tu entorno, consulta otras páginas de la documentación sobre operaciones de actualización específicas. Por ejemplo:

Consulta los detalles del entorno

Console

  1. En la consola de Google Cloud, ve a la página Entornos.

    Ir a Entornos

  2. En la lista de entornos, haz clic en el nombre de tu entorno. Se abrirá la página Detalles del entorno.

gcloud

Ejecuta el siguiente comando gcloud:

gcloud composer environments describe ENVIRONMENT_NAME \
  --location LOCATION

Reemplaza lo siguiente:

  • ENVIRONMENT_NAME por el nombre del entorno.
  • LOCATION por la región en la que se encuentra el entorno

API

Realiza una solicitud a la API de environments.get.

Ejemplo:

GET https://composer.googleapis.com/v1/projects/example-project/
locations/us-central1/environments/example-environment

Terraform

Ejecuta el comando terraform state show del recurso de tu entorno.

Es posible que el nombre del recurso Terraform de tu entorno sea diferente del de tu entorno.

terraform state show google_composer_environment.RESOURCE_NAME

Reemplaza lo siguiente:

  • RESOURCE_NAME por el nombre del recurso de tu entorno.

Cómo revertir cambios de actualizaciones

En algunas situaciones excepcionales, es posible que se interrumpa una operación de actualización (por ejemplo, debido a un tiempo de espera) y que los cambios solicitados no se reviertan en todos los componentes del entorno (como el servidor web de Airflow).

Por ejemplo, una operación de actualización podría ser instalar o quitar módulos de PyPI adicionales, redefinir o definir una nueva variable de entorno de Airflow o Cloud Composer, o cambiar algunos parámetros relacionados con Airflow.

Esto puede ocurrir si se activa una operación de actualización cuando otros operaciones están en curso, por ejemplo, la del clúster de Cloud ajuste de escala automático o una operación de mantenimiento.

En ese caso, se recomienda repetir la operación.

Duración de las operaciones de actualización

La mayoría de las operaciones de actualización o actualización requieren reiniciar los componentes de Airflow como programadores, trabajadores y servidores web de Airflow.

Una vez que se reinicia un componente, se debe inicializar. Durante la inicialización, los programadores y trabajadores de Airflow descargan el contenido de las carpetas /dags y /plugins del bucket del entorno. El proceso de sincronización archivos a los programadores y trabajadores de Airflow no es instantáneo y depende el tamaño y la cantidad totales de todos los objetos en estas carpetas.

Te recomendamos que solo conserves los archivos DAG y de complementos en las carpetas /dags y /plugins (respectivamente) y que quites todos los demás archivos. Demasiados datos en las carpetas /dags y /plugins podría ralentizar la inicialización de Airflow y, en ciertos casos, puede hacer que la inicialización no sea posible.

Te recomendamos que conserves menos de 30 MB de datos en las carpetas /dags y /plugins, y que no superes los 100 MB de tamaño de datos.

Para obtener más información, consulta también los siguientes vínculos:

Actualiza el tipo de máquina para nodos de GKE

Puedes actualizar manualmente el tipo de máquina según la configuración clúster de GKE borrando los default-pool y Crea un default-pool nuevo con el tipo de máquina deseado.

Se recomienda especificar un tipo de máquina adecuado para el tipo el procesamiento que se produce en tu entorno de Cloud Composer cuando crear un entorno.

Si ejecutas tareas que realizan cálculos intensivos en recursos, te recomendamos que uses los operadores de GKE.

Después de una actualización, el tipo de máquina anterior sigue apareciendo en tu los detalles del entorno. Por ejemplo, la página de detalles Entorno no refleja el nuevo tipo de máquina.

Console

Para actualizar el tipo de máquina, sigue estos pasos:

  1. En la consola de Google Cloud, ve a la página Entornos.

    Ir a Entornos

  2. En la lista de entornos, haz clic en el nombre de tu entorno. Se abrirá la página Detalles del entorno.

  3. Obtén información sobre el grupo de nodos predeterminado:

    1. Ve a la pestaña Configuración del entorno.

    2. Haz clic en el vínculo Ver detalles del clúster.

    3. En la página Clústeres, en la sección Nodos, haz clic en default-pool.

    4. Observa toda la información de default-pool en la página Detalles del grupo de nodos. Usarás esta información para crear un grupo de nodos predeterminado nuevo para tu entorno.

  4. Para borrar default-pool, sigue estos pasos:

    1. En la página Detalles del grupo de nodos, haz clic en la flecha hacia atrás para volver a la página Clústeres de tu entorno.

    2. En la sección Grupos de nodos, haz clic en el ícono de papelera para default-pool. Luego, haz clic en Borrar para confirmar la operación.

  5. Para crear el default-pool nuevo, sigue estos pasos:

    1. En la página Clústeres, haz clic en Agregar grupo de nodos.

    2. En Nombre, ingresa default-pool. Debes usar el nombre default-pool para que los flujos de trabajo de tu entorno puedan ejecutarse en este grupo.

    3. Ingresa la configuración para Tamaño y Nodos.

    4. (Solo para cuentas de servicio predeterminadas de Compute Engine) Para acceder selecciona Permitir el acceso total a todas las APIs de Cloud.

    5. Haz clic en Guardar.

  6. Si observas que las cargas de trabajo se distribuyen de manera desigual, reduce la implementación de airflow-worker a cero y vuelve a escalar.

¿Qué sigue?