Se usó la API de Cloud Translation para traducir esta página.
Switch to English

Restricciones de ubicación de recursos

En esta página, se muestra cómo configurar restricciones de ubicación de recursos para garantizar que tus datos almacenados en Cloud Composer se mantengan dentro de las ubicaciones que especifiques.

Regiones en las que no se admiten las restricciones de ubicación de recursos

Cloud Composer no admite restricciones de ubicación de recursos en las siguientes regiones:

  • Seúl (asia-northeast3)
  • Salt Lake City (us-west3)
  • Las Vegas (us-west4)

Cómo funcionan las restricciones de ubicación

Las restricciones de ubicación para Cloud Composer se determinan según la política de la organización que se aplica al proyecto en el que se crea el entorno de Cloud Composer. Esta política se asigna dentro del proyecto o se heredó de la organización.

Cuando las restricciones de ubicación están habilitadas, no es posible crear un entorno en una región que está prohibida por la política. Si una región aparece en la lista de rechazo o no se encuentra en la lista de Permitir, no puedes crear entornos en esta región.

Cloud Composer se basa en regiones. Para habilitar la creación de entornos, la política debe permitir toda la región y no una zona específica dentro de esta región. Por ejemplo, la política europe-west3 debe permitir la política para crear entornos de Cloud Composer en esta región.

Las restricciones de ubicación se comprueban en:

  • Creación de entornos
  • Actualización del entorno, si se crean recursos adicionales durante la operación.
  • Actualización del entorno, para entornos anteriores que no aplican restricciones de ubicación en las dependencias de Cloud Composer.

Además de las restricciones descritas anteriormente, Cloud Composer realiza lo siguiente:

  • Almacena imágenes de Airflow personalizadas por el usuario en repositorios de Artifact Registry.
  • Si la política está habilitada de forma explícita en la multirregión US, el uso de Cloud Build está inhabilitado. En este caso, las imágenes de Airflow personalizadas por el usuario se compilan en tu clúster de GKE.

Instala una dependencia de Python en un entorno de IP privada con restricciones de ubicación de recursos

Las restricciones de ubicación de tu proyecto prohíben el uso de algunas herramientas. En particular, Cloud Build no se puede usar para instalar paquetes de Python, por lo que el acceso directo a repositorios en la Internet pública está inhabilitado.

Si quieres instalar dependencias de Python para un entorno de IP privada de las IP cuando tus restricciones de ubicación no permiten la multirregión US, usa una de las siguientes opciones:

  • Usa un repositorio de PyPI privado alojado en tu red de VPC.
  • Usa un servidor proxy en tu red de VPC para conectarte a un repositorio de PyPI en la Internet pública. Especifica la dirección de proxy en el archivo /config/pip/pip.conf en el depósito de Cloud Storage.
  • Si tu política de seguridad permite el acceso a tu red de VPC desde direcciones IP externas, puedes configurar Cloud NAT.
  • Proveedora las dependencias de Python en la carpeta dags en el depósito de Cloud Storage para instalarlas como bibliotecas locales. Esta no es una buena opción si el árbol de dependencias es grande.

Restringe ubicaciones para registros de Cloud Composer

Si tus registros contienen datos sensibles, es posible que desees redireccionar los registros de Cloud Composer a un depósito de Cloud Storage regional con el enrutador de registros. Esto evita que tus registros se envíen a Cloud Logging. Para obtener asistencia de Cloud Customer Care, es posible que debas otorgarle acceso a los Cloud Composer a los ingenieros de asistencia de Google en Cloud Storage.

gcloud

  1. Crea un depósito de Cloud Storage nuevo (por ejemplo, composer-logs-us-central1-example-environment).

    gsutil mb -l LOCATION gs://ENVIRONMENT_NAME
    
  2. Crea un receptor de registros nuevo.

    gcloud logging sinks create \
    composer-log-sink-ENVIRONMENT_NAME \
    storage.googleapis.com/BUCKET_NAME \
    --log-filter "resource.type=cloud_composer_environment AND \
    resource.labels.environment_name=ENVIRONMENT_NAME AND \
    resource.labels.location=LOCATION"
    
  3. Otorga la función adecuada a la cuenta de servicio para este depósito (que se muestra en el resultado del comando anterior).

    gcloud projects add-iam-policy-binding PROJECT \
    --member="serviceAccount:serviceAccountNumber@gcp-sa-logging.iam.gserviceaccount.com" \
    --role='roles/storage.objectCreator' --condition=None
    
  4. Excluye los registros de tu entorno nuevo en Monitoring.

    gcloud logging sinks update _Default \
    --add-exclusion name=ENVIRONMENT_NAME-exclusion, \
    filter="resource.type=cloud_composer_environment AND \
    resource.labels.environment_name=ENVIRONMENT_NAME AND \
    resource.labels.location=LOCATION"