Solución de problemas de creación de entornos

Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3

En esta página, se proporciona información para solucionar problemas que podrían surgir durante la creación de entornos de Cloud Composer.

Para obtener información sobre la solución de problemas de actualización de entornos, consulta Soluciona problemas de actualizaciones de entornos.

Cuando se crean entornos de Cloud Composer, la mayoría de los problemas ocurren por los siguientes motivos:

  • Problemas con los permisos de la cuenta de servicio.

  • La información de firewall, DNS o de enrutamiento es incorrecta.

  • Problemas relacionados con la red Por ejemplo, configuración de VPC no válida, conflictos de direcciones IP o rangos de IP de red demasiado estrechos.

  • Problemas relacionados con la cuota

  • Las políticas de la organización son incompatibles.

No tienes permisos suficientes para crear un entorno

Si Cloud Composer no puede crear un entorno porque tu cuenta no tiene los permisos suficientes, se mostrarán los siguientes mensajes de error:

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

o

ERROR: (gcloud.composer.environments.create) PERMISSION_DENIED: User not
authorized to act as service account <service-account-name>.
The user must be granted iam.serviceAccounts.actAs permission, included in
Owner, Editor, Service Account User role. See https://cloud.google.com/iam/docs
/understanding-service-accounts for additional details.

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

  • En Cloud Composer 2, asegúrate de que la cuenta de servicio del agente de servicio de Cloud Composer (service-PROJECT_NUMBER@cloudcomposer-accounts.iam.gserviceaccount.com) tenga asignada la función Extensión del agente de servicio de la API de Cloud Composer v2.

  • Asegúrate de que el agente de servicio de las APIs de Google (PROJECT_NUMBER@cloudservices.gserviceaccount.com) tenga asignada la función de Editor.

  • En la configuración de la VPC compartida, sigue las instrucciones para configurar la VPC compartida.

La cuenta de servicio del entorno no tiene permisos suficientes.

Cuando creas un entorno de Cloud Composer, especificas una cuenta de servicio que ejecute los nodos del clúster de GKE del entorno. Si esta cuenta de servicio no tiene permisos suficientes para la operación solicitada, Cloud Composer mostrará el siguiente error:

Errors in: [Web server]; Error messages:
  Creation of airflow web server version failed. This may be an intermittent
  issue of the App Engine service. You may retry the operation later.
{"ResourceType":"appengine.v1.version","ResourceErrorCode":"504","ResourceError
Message":"Your deployment has failed to become healthy in the allotted time
and therefore was rolled back. If you believe this was an error, try adjusting
the 'app_start_timeout_sec' setting in the 'readiness_check' section."}

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

Advertencias sobre los roles de IAM faltantes en las cuentas de servicio

Cuando falla la creación de un entorno, Cloud Composer genera el siguiente mensaje de advertencia después de que se produce un error: The issue may be caused by missing IAM roles in the following Service Accounts ....

Este mensaje de advertencia destaca las posibles causas del error. Cloud Composer verifica si existen funciones necesarias en las cuentas de servicio de tu proyecto. Si estas funciones no están presentes, genera este mensaje de advertencia.

Solución: Verifica que las cuentas de servicio mencionadas en el mensaje de advertencia tengan los roles necesarios. Para obtener más información sobre las funciones y los permisos en Cloud Composer, consulta Control de acceso.

En algunos casos, puedes ignorar esta advertencia. Cloud Composer no verifica los permisos individuales asignados a las funciones. Por ejemplo, si usas funciones personalizadas de IAM, es posible que la cuenta de servicio mencionada en el mensaje de advertencia ya tenga todos los permisos necesarios. En este caso, puedes ignorar esta advertencia.

Políticas de la organización incompatibles

Las siguientes políticas deben configurarse de forma correcta para que los entornos de Cloud Composer se puedan crear correctamente.

Política de la organización Cloud Composer 3 Cloud Composer 2 Cloud Composer 1
compute.disableSerialPortLogging (se permite cualquier valor) Debe inhabilitarse Inhabilitado para las versiones anteriores a la 1.13.0; de lo contrario, cualquier valor
compute.requireOsLogin (se permite cualquier valor) (se permite cualquier valor) Debe inhabilitarse
compute.vmCanIpForward (se permite cualquier valor) (se permite cualquier valor) Se debe permitir (obligatorio para los clústeres de GKE que son propiedad de Cloud Composer) cuando no está configurado el modo nativo de la VPC (con un alias de IP)
compute.vmExternalIpAccess (se permite cualquier valor) Se debe permitir en entornos de IP públicas Se debe permitir en entornos de IP públicas
compute.restrictVpcPeering Se puede aplicar de manera forzosa No se puede aplicar de manera forzosa No se puede aplicar de manera forzosa
compute.disablePrivateServiceConnectCreationForConsumers (se permite cualquier valor) (se permite cualquier valor) No se puede inhabilitar SERVICE_PRODUCERS si se usa Private Service Connect
compute.restrictPrivateServiceConnectProducer Cuando esté activa, incluir en la lista de entidades permitidas la organización google.com Cuando esté activa, incluir en la lista de entidades permitidas la organización google.com (se permite cualquier valor)

Para obtener más información, consulta la página Problemas conocidos y Restricciones de las políticas de la organización.

Restringe los servicios que se usan en la organización o el proyecto

Los administradores de la organización o del proyecto pueden restringir qué servicios de Google se pueden usar en sus proyectos con la restricción de la política de la organización gcp.restrictServiceUsage.

Cuando usas esta política de la organización, es importante permitir todos los servicios que requiere Cloud Composer.

¿Qué sigue?