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 relacionados con la actualización de entornos, ver Soluciona problemas de actualizaciones y mejoras de entornos.
Cuando se crean entornos de Cloud Composer, la mayoría de pueden ocurrir problemas 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, una configuración de VPC no válida, la dirección IP conflictos 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 el Agente de servicio de Cloud Composer cuenta de servicio (
service-PROJECT_NUMBER@cloudcomposer-accounts.iam.gserviceaccount.com
) tenga asignada la función de extensión de 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
) Tiene asignado el rol de Editor.En la configuración de la VPC compartida, sigue estos pasos: Configura las instrucciones de la VPC compartida.
La cuenta de servicio del entorno no tiene permisos suficientes.
Cuando se crea un entorno de Cloud Composer, se especifica un servicio que ejecuta los nodos del clúster de GKE del entorno. Si esta La cuenta de servicio no tiene permisos suficientes para la operación solicitada. Cloud Composer genera 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 la creación de un entorno falla, Cloud Composer genera
siguiente mensaje de advertencia después de 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 comprueba los roles necesarios en las cuentas de servicio en tu proyecto y, si estos roles no están presentes, genera esta advertencia mensaje.
Solución: Comprueba que las cuentas de servicio mencionadas en el mensaje de advertencia tengan los roles necesarios. Para obtener más información sobre los roles y permisos en Cloud Composer, consulta Control de acceso.
En algunos casos, puedes ignorar esta advertencia. Cloud Composer no verificar los permisos individuales asignados a los roles. Por ejemplo, si usas roles personalizados de IAM, es posible que la cuenta que se menciona en el mensaje de advertencia ya tiene todos los permisos necesarios. En este puedes ignorar esta advertencia.
No existe una red de VPC seleccionada para el entorno
Puedes especificar una red de VPC y una subred para Cloud Composer
el entorno de ejecución
cuando lo crees. Si no especificas una red de VPC, la
El servicio de Cloud Composer selecciona la VPC default
y la default
.
subred para la región y la zona del entorno.
Si la red y subred de VPC especificadas no existen, entonces Cloud Composer genera el siguiente error:
Errors in: [GKE cluster]; Error messages:
{"ResourceType":"gcp-types/container-v1:projects.locations.clusters","R
esourceErrorCode":"400","ResourceErrorMessage":{"code":400,"message":"P
roject \"<your composer project>\" has no network named \"non-existing-
vpc\".","status":"INVALID_ARGUMENT","statusMessage":"Bad
Request","requestPath":"https://container.googleapis.com/
v1/projects/<your composer
project>/locations/<zone>/clusters","httpMethod":"POST"}}
Solución:
- En Cloud Composer 2, puedes crear entornos que usar Private Service Connect en lugar de VPC redes.
- Antes de crear un entorno, asegúrate de que la red de VPC y existe la subred de tu entorno nuevo.
Configuración de red incorrecta
Las creaciones del entorno de Cloud Composer requieren una red o un DNS adecuados configuración. Sigue estas instrucciones para configurar la conectividad a Google APIs y servicios:
Si configuras entornos de Cloud Composer en un modo de VPC compartida, también sigue las instrucciones de la VPC compartida.
Un entorno de Cloud Composer usa una subred para los rangos de IP y los nodos del clúster para Pods y Services. Para garantizar la comunicación con estos y otros rangos de IP, sigue estas instrucciones para configurar reglas de firewall:
También puedes buscar entradas de registro en GCE Networking
y
Subnetwork
de categorías de configuración en Cloud Logging para ver si hay alguna
informados durante la creación del entorno:
Cloud Logging
Problemas de cuotas encontrados cuando se crean entornos en redes a gran escala
Cuando creas entornos de Cloud Composer en redes a gran escala, puedes encontrar las siguientes limitaciones de cuota:
- Se alcanza la cantidad máxima de intercambios de tráfico de VPC por red de VPC.
- Se alcanza la cantidad máxima de rangos de IP de subred principales y secundarios.
- Se alcanza la cantidad máxima de reglas de reenvío en el grupo de intercambio de tráfico para el balanceo de cargas TCP/UDP interno.
Solución:
- En Cloud Composer 2, puedes crear entornos que usar Private Service Connect en lugar de VPC redes.
- En Cloud Composer 1, aplica el enfoque recomendado para Cloud Composer en redes a gran escala.
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á habilitado el modo nativo de la VPC (con un alias de IP). configurados |
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) | No se puede inhabilitar SERVICE_PRODUCERS para entornos de IP privada. No afecta los entornos existentes; pueden funcionar cuando esta política habilitado. | No se puede inhabilitar SERVICE_PRODUCERS para entornos de IP privada. No afecta los entornos existentes; pueden funcionar cuando esta política habilitado. |
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 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 organizaciones o proyectos pueden restringir los servicios de Google que se pueden
utilizadas en sus proyectos con la
gcp.restrictServiceUsage
restricción de la política de la organización.
Cuando usas esta política de la organización, es importante Permitir todos los servicios que requiere Cloud Composer.
Mensaje de error 400: No se pudo implementar el servidor web de Airflow.
Este error puede deberse a un error en la creación del clúster de GKE del entorno IP privado debido a la superposición de rangos de IP.
Solución: Verifica los registros de cualquier falla en el clúster del entorno y resuelve el problema según el mensaje de error de GKE.
Cloud Build no puede compilar imágenes de entorno
Se aplica a Cloud Composer 2 y Cloud Composer 1.
Si la cuenta de servicio de Cloud Build
(PROJECT_NUMBER@cloudbuild.gserviceaccount.com
) no tiene el elemento
Rol de cuenta de servicio de Cloud Build (roles/cloudbuild.builds.builder
) en
tu proyecto y, luego, los intentos de crear o actualizar un entorno podrían fallar
errores relacionados con permisos.
Por ejemplo, es posible que veas la
denied: Permission "artifactregistry.repositories.uploadArtifacts" denied
mensaje seguido de ERROR: failed to push because we ran out of retries
en
los registros de Cloud Build.
Para resolver este problema, asegúrate de que la cuenta de servicio de Cloud Build tenga Roles de cuenta de servicio de Cloud Build.