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 nuevos parámetros de escalamiento y rendimiento, o instalar paquetes de PyPI personalizados, se actualiza tu entorno.
Una vez que se complete esta operación, los cambios estarán disponibles en tu entorno.
Para un único entorno de Cloud Composer, puedes iniciar solo uno 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.
Límites de CPU del activador
Cloud Composer en la versión 2.4.4 presenta un rendimiento diferente enfoque de escalamiento para el activador de Airflow que se aplica a todas las versiones de Cloud Composer 2.
Antes de la versión 2.4.4, los entornos de Cloud Composer podían usar un máximo de 1 o 2 activadores. Después del cambio, puedes tener hasta 10 activadores por entorno, pero cada activador está limitado a un máximo de 1 vCPU.
Las operaciones de actualización del entorno fallan si tu entorno está configurado con más de 1 CPU virtual por activador. Debes ajustar la configuración para cumplir con el límite de 1 vCPU para realizar actualizaciones en otros componentes.
Para obtener más información, consulte:
- Configura la asignación de recursos del activador
- Ajusta el recuento de activadores
- Solución de problemas de actualización del entorno: se superó la CPU del activador
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, todas finalizan las tareas en ejecución. Una vez finalizada la operación de actualización completo, Airflow programa estas tareas para un reintento, según configurar reintentos para tus DAG.
Los siguientes cambios provocan la finalización de la tarea de Airflow:
- Actualizar el entorno a una versión nueva
- Agregar, cambiar o borrar paquetes PyPI personalizados
- Cambiar las variables de entorno de Cloud Composer
- Agregar o quitar anulaciones de opciones de configuración de Airflow o cambiar sus de salida.
- 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 menor que la cantidad de trabajadores en ejecución actualmente. Por ejemplo, si un entorno ejecuta tres trabajadores y el máximo se reduce a dos.
- Cambiar el modo de resiliencia del entorno
Los siguientes cambios no provocan 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
- Cambia los programadores de Airflow CPU, memoria o almacenamiento.
- 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
- Reducir 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.
- Cambios en los períodos de mantenimiento
- Cambiar la configuración de las instantáneas programadas
- Cambiar las etiquetas de entorno
Actualiza con Terraform
Ejecuta terraform plan
antes de terraform apply
para ver si Terraform crea un entorno nuevo en lugar de actualizarlo.
Antes de comenzar
Verifica que tu cuenta, la cuenta de servicio de tu entorno y la cuenta del agente de servicio de Cloud Composer de tu proyecto tengan los permisos necesarios:
Tu cuenta debe tener un rol que pueda activar operaciones de actualización del entorno.
La cuenta de servicio de tu entorno debe tener un rol que tener permisos suficientes para realizar operaciones de actualización
La cuenta del agente de servicio de Cloud Composer permisos para crear vinculaciones la cuenta de servicio de tu entorno y la de Kubernetes del en el clúster de tu entorno.
El comando
gcloud composer environments update
finaliza cuando el finalice la operación. Puedes usar la marca--async
para evitar esperar a que se complete la operación.
Actualizar entornos
Si necesitas más información para actualizar tu entorno, consulta otra documentación páginas sobre operaciones de actualización específicas. Por ejemplo:
- Anula las opciones de configuración de Airflow
- Configure las variables de entorno
- Instala dependencias de Python
- Escalar entornos
- Configurar redes autorizadas
- Actualiza los entornos a alta resiliencia
Consulta los detalles del entorno
Console
En la consola de Google Cloud, ve a la página Entornos.
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
para el recurso de tu entorno.
Es posible que el nombre del recurso de Terraform de tu entorno sea diferente del nombre del 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, redefinir o definir un nuevo Airflow o Cloud Composer variable de entorno o cambiar algunos parámetros relacionados con Airflow.
Esta situación puede ocurrir si se activa una operación de actualización cuando hay otras operaciones en curso, por ejemplo, el escalamiento automático del clúster de Cloud Composer 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.
Recomendamos mantener solo los archivos de DAG y de complementos en /dags
y /plugins
de forma respectiva) y quita todos los demás archivos. Demasiados datos en las carpetas /dags
y /plugins
pueden ralentizar la inicialización de los componentes de Airflow y, en algunos casos, impedir que se inicialicen.
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 lo siguiente: