Solucionar problemas de actualizaciones del entorno

Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1

En esta página se proporciona información para solucionar problemas que pueden surgir al actualizar o cambiar a una versión superior los entornos de Cloud Composer.

Para obtener información sobre cómo solucionar problemas relacionados con la creación de entornos, consulta el artículo Solucionar problemas de creación de entornos.

Cuando se actualizan los entornos de Cloud Composer, la mayoría de los problemas se deben a los siguientes motivos:

  • Problemas con los permisos de la cuenta de servicio
  • Problemas de dependencias de PyPI
  • Tamaño de la base de datos de Airflow

Permisos insuficientes para actualizar o mejorar un entorno

Si Cloud Composer no puede actualizar o mejorar un entorno debido a que no tiene suficientes permisos, muestra el siguiente mensaje de error:

ERROR: (gcloud.composer.environments.update) PERMISSION_DENIED: The caller does not have permission

Solución: Asigna roles tanto a tu cuenta como a la cuenta de servicio de tu entorno, tal como se describe en Control de acceso.

La cuenta de servicio del entorno no tiene permisos suficientes

Cuando creas un entorno de Cloud Composer, especificas una cuenta de servicio que realiza la mayoría de las operaciones del entorno. Si esta cuenta de servicio no tiene suficientes permisos para la operación solicitada, Cloud Composer mostrará un error:

    UPDATE operation on this environment failed 3 minutes ago with the
    following error message:
    Composer Backend timed out. Currently running tasks are [stage:
    CP_COMPOSER_AGENT_RUNNING
    description: "No agent response published."
    response_timestamp {
      seconds: 1618203503
      nanos: 291000000
    }
    ].

Solución: Asigna roles a tu cuenta de Google y a la cuenta de servicio de tu entorno tal como se describe en Control de acceso.

El tamaño de la base de datos de Airflow es demasiado grande para realizar la operación

Es posible que no se pueda realizar una operación de actualización porque el tamaño de la base de datos de Airflow sea demasiado grande.

Si el tamaño de la base de datos de Airflow es superior a 16 GB, Cloud Composer muestra el siguiente error:

Airflow database uses more than 16 GB. Please clean the database before upgrading.

Solución: limpia la base de datos de Airflow tal como se describe en Limpiar la base de datos de Airflow.

No se puede actualizar a una nueva versión de Cloud Composer debido a conflictos de paquetes de PyPI

Cuando actualizas un entorno con paquetes PyPI personalizados instalados, es posible que se produzcan errores relacionados con conflictos de paquetes PyPI. Esto puede ocurrir porque la nueva imagen de Cloud Composer contiene versiones posteriores de los paquetes preinstalados. Esto puede provocar conflictos de dependencias con los paquetes de PyPI que hayas instalado en tu entorno.

Solución:

  • Para obtener información detallada sobre los conflictos de paquetes, ejecuta una comprobación de actualización.
  • Relaja las restricciones de versión de los paquetes PyPI personalizados instalados. Por ejemplo, en lugar de especificar una versión como ==1.0.1, especifícala como >=1.0.1.
  • Para obtener más información sobre cómo cambiar los requisitos de versión para resolver dependencias conflictivas, consulta la documentación de pip.

No se puede actualizar un entorno a una versión que aún se admite

Los entornos de Cloud Composer solo se pueden actualizar a varias versiones anteriores y más recientes.

Las limitaciones de las versiones para crear entornos nuevos y actualizar los entornos que ya tengas son diferentes. Es posible que la versión de Cloud Composer que elijas al crear un entorno nuevo no esté disponible al actualizar entornos ya creados.

Puedes realizar la operación de actualización con la CLI de Google Cloud, la API o Terraform. En la consola, solo están disponibles las versiones más recientes como opciones de actualización. Google Cloud

El entorno no está en buen estado (la comprobación de actividad ha fallado)

Solo se puede actualizar un entorno si su estado es correcto.

Una de las causas más habituales de que el estado no sea correcto es que los componentes del entorno se acerquen a los límites de recursos configurados y funcionen constantemente con la carga máxima. Como algunos componentes del entorno no pueden informar de su estado, el DAG de comprobación de actividad informa de que el estado del entorno no es correcto.

Para solucionar este problema, le recomendamos que aumente los límites de recursos. Aunque te recomendamos que evites que tu entorno se acerque a los límites en todo momento, también puedes hacerlo solo durante el periodo en el que se actualice tu entorno.

La falta de conectividad con el DNS puede provocar problemas al realizar actualizaciones

Estos problemas de conectividad pueden dar lugar a entradas de registro como esta:

WARNING - Compute Engine Metadata server unavailable attempt 1 of 5. Reason: [Errno -3] Temporary failure in name resolution Error

Normalmente, significa que no hay ninguna ruta a DNS, así que asegúrate de que el nombre DNS metadata.google.internal se pueda resolver en una dirección IP desde las redes de clústeres, pods y servicios. Comprueba si tienes activado el acceso privado a Google en la VPC (en el proyecto host o de servicio) en la que se ha creado tu entorno.

Siguientes pasos