Configurazione delle restrizioni sulla località delle risorse

Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3

Questa pagina mostra come configurare restrizioni sulla località delle risorse per assicurarti che i dati archiviati da Cloud Composer vengano conservati le località specificate.

Come funzionano le limitazioni di località

Le limitazioni relative alla 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 ereditati dall'organizzazione.

Con le limitazioni di località attivate, non è possibile creare un ambiente in una regione vietato dai criteri. Se una regione se è presente nell'elenco Nega impossibile creare ambienti in questa regione.

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

Cloud Composer controlla le limitazioni di località all'indirizzo:

  • Creazione dell'ambiente.
  • Upgrade dell'ambiente, se durante l'operazione vengono create risorse aggiuntive operativa.
  • Aggiornamento dell'ambiente, per gli ambienti meno recenti che non applicano l'applicazione della posizione limitazioni alle dipendenze di Cloud Composer.

Oltre a controllare le limitazioni relative alla località, Cloud Composer svolge le seguenti operazioni:

  • Archivia immagini Airflow personalizzate dall'utente in Artifact Registry regionale repository.
  • Se la US (più regioni) è espressamente vietata dal l'utilizzo di Cloud Build è disabilitato. In questo caso, le creatività personalizzate Le immagini Airflow vengono create nel tuo cluster GKE.

Installa una dipendenza Python in un ambiente IP privato con restrizioni sulla località delle risorse

Se imposti restrizioni sulla località delle risorse per il tuo progetto, Non è possibile 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 IP privato quando le limitazioni di località non consentono US più regioni; utilizza una delle seguenti opzioni:

  • Utilizza un profilo privato Repository PyPI ospitato nella tua rete VPC.

  • Utilizza un server proxy della tua rete VPC per connetterti a un repository PyPI sulla rete internet. Specifica l'indirizzo proxy nel file /config/pip/pip.conf in nel bucket Cloud Storage.

  • Se il criterio di sicurezza consente l'accesso alla rete VPC da server Indirizzi IP, puoi configurare Cloud NAT.

  • Archivia le dipendenze Python nella cartella dags in del bucket Cloud Storage, installarle come librerie locali. Potrebbe non essere una buona opzione se l'albero delle dipendenze è di grandi dimensioni.

Limita le località per i log di Cloud Composer

Se i log di Cloud Composer contengono dati sensibili, ti consigliamo per reindirizzare i log di Cloud Composer a un'istanza nel bucket Cloud Storage. A questo scopo, utilizza in un sink di log. Dopo aver reindirizzato i log a un bucket Cloud Storage, i tuoi log non vengono inviati a Cloud Logging.

gcloud

  1. Creare un nuovo bucket Cloud Storage.

    gsutil mb -l LOCATION gs://BUCKET_NAME
    

    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 servizio numero di conto bancario. Concedi a questo componente il ruolo Creatore oggetti Storage 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 ID progetto.
    • SA_NUMBER con il numero dell'account di servizio fornito da il comando gcloud logging sinks create nel passaggio precedente.
  4. Escludere i log per il tuo ambiente da 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"
    

    Sostituisci:

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

Passaggi successivi