Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1
En esta página se enumeran los problemas conocidos de Cloud Composer. Para obtener información sobre las correcciones de problemas, consulta las notas de la versión.
La primera ejecución de un archivo DAG subido tiene varias tareas fallidas
Cuando subes un archivo DAG, a veces las primeras tareas del primer DAG que se ejecuta fallan y se produce el error Unable to read remote log...
. Este problema se produce porque el archivo DAG se sincroniza entre el bucket de tu entorno, los trabajadores de Airflow y los programadores de Airflow de tu entorno. Si el programador obtiene el archivo DAG y programa su ejecución por parte de un trabajador, y si el trabajador aún no tiene el archivo DAG, la ejecución de la tarea falla.
Para mitigar este problema, los entornos con Airflow 2 están configurados para realizar dos reintentos de una tarea fallida de forma predeterminada. Si una tarea falla, se vuelve a intentar dos veces con intervalos de 5 minutos.
Cloud Composer no debería verse afectado por la vulnerabilidad de Apache Log4j 2 (CVE-2021-44228)
En respuesta a la vulnerabilidad de Apache Log4j 2 (CVE-2021-44228), Cloud Composer ha llevado a cabo una investigación detallada y creemos que Cloud Composer no es vulnerable a este exploit.
Es posible que la interfaz de usuario de Airflow no vuelva a cargar un complemento una vez que se haya cambiado
Si un complemento consta de muchos archivos que importan otros módulos, es posible que la interfaz de usuario de Airflow no pueda reconocer que se debe volver a cargar un complemento. En ese caso, reinicia el servidor web de Airflow de tu entorno.
Error 504 al acceder a la interfaz de usuario de Airflow
Puedes recibir el error 504 Gateway Timeout
al acceder a la interfaz de usuario de Airflow. Este error puede deberse a varios motivos:
Problema de comunicación transitorio. En ese caso, intenta acceder a la interfaz de usuario de Airflow más tarde. También puedes reiniciar el servidor web de Airflow.
(Solo Cloud Composer 3) Problema de conectividad. Si la interfaz de usuario de Airflow no está disponible de forma permanente y se generan errores de tiempo de espera o 504, asegúrate de que tu entorno pueda acceder a
*.composer.googleusercontent.com
.(Solo Cloud Composer 2) Problema de conectividad. Si la interfaz de usuario de Airflow no está disponible de forma permanente y se generan errores de tiempo de espera o 504, asegúrate de que tu entorno pueda acceder a
*.composer.cloud.google.com
. Si usas Acceso privado a Google y envías tráfico a través de IPs virtualesprivate.googleapis.com
o Controles de Servicio de VPC y envías tráfico a través de IPs virtualesrestricted.googleapis.com
, asegúrate de que tu Cloud DNS también esté configurado para los nombres de dominio*.composer.cloud.google.com
.El servidor web de Airflow no responde. Si el error 504 persiste, pero sigues pudiendo acceder a la interfaz de usuario de Airflow en determinados momentos, es posible que el servidor web de Airflow no responda porque está sobrecargado. Intenta aumentar los parámetros de escala y rendimiento del servidor web.
Error 502 al acceder a la interfaz de usuario de Airflow
El error 502 Internal server exception
indica que la interfaz de Airflow no puede
servir solicitudes entrantes. Este error puede deberse a varios motivos:
Problema de comunicación transitorio. Intenta acceder a la interfaz de usuario de Airflow más tarde.
No se ha podido iniciar el servidor web. Para empezar, el servidor web requiere que se sincronicen los archivos de configuración. Comprueba si en los registros del servidor web hay entradas de registro similares a las siguientes:
GCS sync exited with 1: gcloud storage cp gs://<bucket-name>/airflow.cfg /home/airflow/gcs/airflow.cfg.tmp
oGCS sync exited with 1: gcloud storage cp gs://<bucket-name>/env_var.json.cfg /home/airflow/gcs/env_var.json.tmp
. Si ves estos errores, comprueba si los archivos mencionados en los mensajes de error siguen presentes en el bucket del entorno.Si se eliminan por error (por ejemplo, porque se ha configurado una política de conservación), puedes restaurarlos:
Define una nueva variable de entorno en tu entorno. Puedes usar cualquier nombre y valor de variable.
Anula una opción de configuración de Airflow. Puedes usar una opción de configuración de Airflow que no exista.
Al colocar el cursor sobre una instancia de tarea en la vista de árbol, se produce un error TypeError no detectado
En Airflow 2, es posible que la vista de árbol de la interfaz de usuario de Airflow no funcione correctamente en ocasiones cuando se usa una zona horaria no predeterminada. Para solucionar este problema, configura la zona horaria explícitamente en la interfaz de usuario de Airflow.
Carpetas vacías en el programador y los trabajadores
Cloud Composer no elimina de forma activa las carpetas vacías de los workers y los programadores de Airflow. Estas entidades se pueden crear como resultado del proceso de sincronización de contenedores de entorno cuando estas carpetas existían en el contenedor y se eliminaron posteriormente.
Recomendación: Ajusta tus DAGs para que estén preparados para omitir esas carpetas vacías.
Estas entidades se eliminan de los almacenamientos locales de los programadores y los trabajadores de Airflow cuando se reinician estos componentes (por ejemplo, como resultado de operaciones de reducción de escala o de mantenimiento en el clúster de tu entorno).
Compatibilidad con Kerberos
Cloud Composer no admite la configuración de Kerberos de Airflow.
Compatibilidad con clases de computación en Cloud Composer 2 y Cloud Composer 3
Cloud Composer 3 y Cloud Composer 2 solo admiten la clase de computación de uso general. Esto significa que no se pueden ejecutar pods que soliciten otras clases de computación (como Balanced o Scale-Out).
La clase general-purpose permite ejecutar pods que soliciten hasta 110 GB de memoria y hasta 30 CPUs (tal como se describe en Solicitudes máximas de clase de computación).
Si quieres usar una arquitectura basada en ARM o necesitas más CPU y memoria, debes usar otra clase de computación, que no es compatible con los clústeres de Cloud Composer 3 y Cloud Composer 2.
Recomendación: Usa GKEStartPodOperator
para ejecutar pods de Kubernetes en otro clúster que admita la clase de computación seleccionada. Si ejecutas pods personalizados que requieren una clase de computación diferente, también deben ejecutarse en un clúster que no sea de Cloud Composer.
No es posible reducir el almacenamiento de Cloud SQL
Cloud Composer usa Cloud SQL para ejecutar la base de datos de Airflow. Con el tiempo, el almacenamiento en disco de la instancia de Cloud SQL puede aumentar porque el disco se amplía para adaptarse a los datos almacenados por las operaciones de Cloud SQL cuando crece la base de datos de Airflow.
No es posible reducir el tamaño del disco de Cloud SQL.
Como solución alternativa, si quieres usar el tamaño de disco más pequeño de Cloud SQL, puedes volver a crear entornos de Cloud Composer con capturas.
La métrica Uso de disco de la base de datos no se reduce después de eliminar registros de Cloud SQL
Las bases de datos relacionales, como Postgres o MySQL, no eliminan físicamente las filas cuando se eliminan o actualizan. En su lugar, las marca como "tuplas inactivas" para mantener la coherencia de los datos y evitar que se bloqueen las transacciones simultáneas.
Tanto MySQL como PostgreSQL implementan mecanismos para recuperar espacio después de eliminar registros.
Aunque es posible forzar a la base de datos a reclamar el espacio en disco no utilizado, se trata de una operación que consume muchos recursos y que, además, bloquea la base de datos, lo que hace que Cloud Composer no esté disponible. Por lo tanto, se recomienda usar los mecanismos integrados para recuperar el espacio no utilizado.
Acceso bloqueado: error de autorización
Si este problema afecta a un usuario, el cuadro de diálogo Acceso bloqueado: error de autorización contiene el mensaje Error 400: admin_policy_enforced
.
Si la opción Controles de API > Aplicaciones de terceros no configuradas > No permitir que los usuarios accedan a aplicaciones de terceros está habilitada en Google Workspace y la aplicación Apache Airflow en Cloud Composer no está permitida de forma explícita, los usuarios no podrán acceder a la interfaz de usuario de Airflow a menos que permitan la aplicación de forma explícita.
Para permitir el acceso, sigue los pasos que se indican en Permitir el acceso a la interfaz de Airflow en Google Workspace.
Bucle de inicio de sesión al acceder a la interfaz de usuario de Airflow
Este problema puede deberse a los siguientes motivos:
Si se usan enlaces de acceso contextual de Chrome Enterprise Premium con niveles de acceso que dependen de atributos de dispositivo y no se excluye la aplicación Apache Airflow en Cloud Composer, no se podrá acceder a la interfaz de usuario de Airflow debido a un bucle de inicio de sesión. Para permitir el acceso, sigue los pasos que se indican en Permitir el acceso a la interfaz de usuario de Airflow en las vinculaciones de acceso contextual.
Si se configuran reglas de entrada en un perímetro de Controles de Servicio de VPC que protege el proyecto y la regla de entrada que permite el acceso al servicio Cloud Composer usa el tipo de identidad
ANY_SERVICE_ACCOUNT
oANY_USER_ACCOUNT
, los usuarios no podrán acceder a la interfaz de usuario de Airflow y se quedarán en un bucle de inicio de sesión. Para obtener más información sobre cómo abordar esta situación, consulta Permitir el acceso a la interfaz de usuario de Airflow en las reglas de entrada de Controles de Servicio de VPC.
La carpeta /data no está disponible en el servidor web de Airflow
En Cloud Composer 2 y Cloud Composer 3, el servidor web de Airflow es un componente de solo lectura y Cloud Composer no sincroniza la carpeta data/
con este componente.
En ocasiones, es posible que quieras compartir archivos comunes entre todos los componentes de Airflow, incluido el servidor web de Airflow.
Solución:
Envuelve los archivos que quieras compartir con el servidor web en un módulo PYPI e instálalo como un paquete PYPI normal. Una vez instalado el módulo PYPI en el entorno, los archivos se añaden a las imágenes de los componentes de Airflow y están disponibles para ellos.
Añade archivos a la carpeta
plugins/
. Esta carpeta se sincroniza con el servidor web de Airflow.
Diagramas de tiempos de análisis de DAG no continuos y de tamaño de bolsa de DAG en la monitorización
Los diagramas de tiempos de análisis de DAGs no continuos y de tamaño de bolsa de DAGs del panel de control de monitorización indican problemas con tiempos de análisis de DAGs largos (más de 5 minutos).

Solución: Te recomendamos que el tiempo total de análisis de los DAGs no supere los 5 minutos. Para reducir el tiempo de análisis de los DAGs, sigue las directrices de escritura de DAGs.
Los registros de tareas aparecen con retraso
Síntoma:
- En Cloud Composer 3, los registros de tareas de Airflow no aparecen inmediatamente y se retrasan unos minutos.
- Es posible que encuentres mensajes
Logs not found for Cloud Logging filter
en los registros de Airflow
Causa:
Si tu entorno ejecuta un gran número de tareas al mismo tiempo, los registros de tareas pueden retrasarse porque el tamaño de la infraestructura del entorno no es suficiente para procesar todos los registros con la rapidez necesaria.
Soluciones:
- Te recomendamos que aumentes el tamaño de la infraestructura del entorno para mejorar el rendimiento.
- Distribuye las ejecuciones de DAG a lo largo del tiempo para que las tareas no se ejecuten al mismo tiempo.
Aumento de los tiempos de inicio de KubernetesPodOperator y KubernetesExecutor
Los pods creados con KubernetesPodOperator y las tareas ejecutadas con KubernetesExecutor experimentan tiempos de inicio más largos. El equipo de Cloud Composer está trabajando para encontrar una solución y anunciará cuando se haya resuelto el problema.
Soluciones alternativas:
- Lanza pods con más CPU.
- Si es posible, optimiza las imágenes (menos capas y tamaño más pequeño).
El entorno está en estado ERROR después de que se haya eliminado o desactivado la cuenta de facturación del proyecto, o bien se haya inhabilitado la API de Cloud Composer
Los entornos de Cloud Composer afectados por estos problemas no se pueden recuperar:
- Después de que se eliminara o desactivara la cuenta de facturación del proyecto, aunque se vinculara otra cuenta más adelante.
- Después de que la API Cloud Composer se inhabilitara en el proyecto, aunque se habilitara más adelante.
Para solucionar el problema, puedes hacer lo siguiente:
Puedes seguir accediendo a los datos almacenados en los contenedores de tu entorno, pero los entornos en sí ya no se pueden usar. Puedes crear un entorno de Cloud Composer y, a continuación, transferir tus DAGs y datos.
Si quieres realizar alguna de las operaciones que hacen que tus entornos sean irrecuperables, asegúrate de crear una copia de seguridad de tus datos. Por ejemplo, puedes crear una instantánea del entorno. De esta forma, puedes crear otro entorno y transferir sus datos cargando esta instantánea.
Los registros de las tareas de Airflow no se recogen si [core]execute_tasks_new_python_interpreter se define como True
Cloud Composer no recoge registros de tareas de Airflow si la opción de configuración de Airflow [core]execute_tasks_new_python_interpreter
está definida como True
.
Solución posible:
- Elimine la anulación de esta opción de configuración o asigne el valor
False
.
Error al quitar un archivo adjunto de red cuando se elimina un entorno
Si se eliminan varios entornos que comparten el mismo archivo adjunto de red al mismo tiempo, algunas operaciones de eliminación fallarán y se producirá un error.
Síntomas:
Se genera el siguiente error:
Got error while removing Network Attachment: <error code>
El código de error notificado puede ser Bad request: <resource> is not ready
o Precondition failed: Invalid fingerprint
.
Posibles soluciones alternativas:
Elimina los entornos que usen el mismo adjunto de red uno por uno.
Inhabilita la conexión a una red de VPC de tus entornos antes de eliminarlos. Recomendamos esta solución alternativa para eliminar entornos automáticamente.
Siguientes pasos
- Solucionar problemas de creación de entornos
- Solucionar problemas de DAGs
- Solucionar problemas del programador de Airflow