Configurazione delle restrizioni sulla località delle risorse

Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1

Questa pagina mostra come configurare le limitazioni della località delle risorse in modo che i dati archiviati da Cloud Composer vengano conservati nelle località specificate.

Come funzionano le limitazioni relative alla località

Le limitazioni della località per Cloud Composer sono determinate in base al criterio dell'organizzazione applicato al progetto in cui viene creato l'ambiente Cloud Composer. Questo criterio è assegnato all'interno del progetto o è ereditato dall'organizzazione.

Con le limitazioni della località abilitate, non è possibile creare un ambiente in una regione vietata dalle norme. Se una regione è elencata nell'elenco Nega o non è elencata nell'elenco Consenti, non puoi creare ambienti in questa regione.

Per consentire la creazione di ambienti, il criterio deve consentire l'intera regione e non una zona specifica all'interno di questa regione. Ad esempio, la regione europe-west3 deve essere consentita dal criterio per creare ambienti Cloud Composer in questa regione.

Cloud Composer controlla le limitazioni della località in:

  • Creazione dell'ambiente.
  • Upgrade dell'ambiente, se vengono create risorse aggiuntive durante l'operazione.
  • Aggiornamento dell'ambiente, per gli ambienti precedenti che non applicano restrizioni di località alle dipendenze di Cloud Composer.

Oltre a verificare le limitazioni relative alla località, Cloud Composer esegue le seguenti operazioni:

  • Archivia le immagini Airflow personalizzate dall'utente nei repository Artifact Registry regionali. Ad esempio, queste immagini vengono create quando installi immagini PyPI personalizzate nel tuo ambiente.
  • Se la US multiregionale è esplicitamente vietata dal criterio, l'utilizzo di Cloud Build è disattivato. In questo caso, le immagini Airflow personalizzate dall'utente vengono create nel cluster dell'ambiente.

Installa una dipendenza Python in un ambiente IP privato con limitazioni di località delle risorse

Se imposti limitazioni alla località delle risorse per il tuo progetto, non puoi utilizzare Cloud Build per installare pacchetti Python. Di conseguenza, l'accesso diretto ai repository sulla rete internet pubblica è disabilitato.

Per installare le dipendenze Python in un ambiente con IP privato quando le limitazioni di località non consentono la US multiregionale, utilizza una delle seguenti opzioni:

Limitare le località per i log di Cloud Composer

Se i log di Cloud Composer contengono dati sensibili, ti consigliamo di reindirizzarli a un bucket Cloud Storage regionale. Per farlo, utilizza un sink di log. Dopo aver reindirizzato i log a un bucket Cloud Storage, i log non vengono inviati a Cloud Logging.

gcloud

  1. Crea un nuovo bucket Cloud Storage.

    gcloud storage buckets create gs://BUCKET_NAME --location=LOCATION
    

    Sostituisci:

    • LOCATION con la regione in cui si trova l'ambiente.
    • BUCKET_NAME con il nome del bucket. Ad esempio, composer-logs-us-central1-example-environment.
  2. Crea un nuovo sink di log.

    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"
    

    Sostituisci:

    • ENVIRONMENT_NAME con il nome dell'ambiente.
    • BUCKET_NAME con il nome del bucket.
    • LOCATION con la regione in cui si trova l'ambiente.
  3. L'output del comando precedente contiene il numero del service account. Concedi il ruolo Storage Object Creator a questo account di servizio:

    gcloud projects add-iam-policy-binding PROJECT_ID \
    --member="serviceAccount:SA_NUMBER@gcp-sa-logging.iam.gserviceaccount.com" \
    --role='roles/storage.objectCreator' \
    --condition=None
    

    Sostituisci:

    • PROJECT_ID con l'ID progetto.
    • SA_NUMBER con il numero del account di servizio fornito dal comando gcloud logging sinks create nel passaggio precedente.
  4. Escludi i log per il tuo ambiente da Logging.

    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"
    

    Sostituisci:

    • ENVIRONMENT_NAME con il nome dell'ambiente.
    • LOCATION con la regione in cui si trova l'ambiente.

Passaggi successivi