Connetti un ambiente a una rete VPC

Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3

Questa pagina spiega come il tuo ambiente può accedere a una rete VPC Cloud Composer 3, fornisce istruzioni per connettere un ambiente a un VPC e descrive come disattivare una connessione configurata in precedenza.

Informazioni sull'accesso alla rete VPC

In Cloud Composer 3, puoi abilitare l'accesso a una rete VPC per completamente gestito di Google Cloud.

Se abiliti l'accesso a una rete VPC per un ambiente:

  • Componenti Airflow dell'ambiente può accedere a endpoint di rete privata nella tua rete VPC. Ad esempio: il codice DAG può accedere alle risorse che si trovano nella tua rete VPC tramite configurata la connessione Airflow.

  • Se il tuo ambiente utilizza il networking IP privato, tutto il traffico interno, tranne il traffico verso l'API Google Services, viene instradato a della tua rete VPC.

  • In base a come configuri la tua rete VPC, dell'ambiente può accedere a internet attraverso la tua rete VPC.

  • Indipendentemente dallo stato di accesso alla rete VPC, l'accesso alle API dei servizi Google è sempre possibile.

  • Zone DNS private definite nel VPC sono automaticamente disponibili per il modello Airflow del tuo ambiente componenti.

  • L'ambiente prenota due indirizzi IP nella subnet VPC.

Cloud Composer utilizza un collegamento di rete per connettere a una rete VPC:

  • Se specifichi una rete VPC e una subnet, Cloud Composer crea un nuovo collegamento di rete nel tuo progetto. Questo allegato è stato eliminato dopo aver eliminato un ambiente, disabilita la connessione a una rete VPC o sovrascrivi il VPC parametri di connessione.

  • Se specifichi collegamento di rete esistente, deve trovarsi nello stesso progetto con l'ambiente. Questo il collegamento non viene eliminato dopo che hai eliminato un ambiente, disabilitato la connessione o sovrascritto i parametri di connessione VPC.

  • Nel networking VPC condiviso:

    • Assicurati di aver configurato il networking VPC condiviso per con Cloud Composer. Consulta Configura un VPC condiviso per informazioni sulla configurazione progetti e autorizzazioni per Cloud Composer.

    • Dopo aver configurato il networking VPC condiviso, puoi connettere a una rete VPC dal progetto host. Se utilizzi un collegamento di rete esistente, deve essere creato nel progetto di servizio (dove si trova l'ambiente) e collegato a un VPC condiviso in ogni rete.

Informazioni sull'intervallo IP interno dell'ambiente

Gli ambienti Cloud Composer 3 richiedono diversi indirizzi IP per in esecuzione nel progetto tenant, come il tuo e il proxy Cloud SQL. Questi indirizzi IP vengono tratto dall'intervallo IP interno dell'ambiente.

  • L'intervallo IP interno predefinito è 100.64.128.0/20.

  • Puoi specificare un intervallo IP interno diverso quando crei un completamente gestito di Google Cloud. Questo intervallo deve utilizzare una maschera /20.

  • Non puoi modificare l'intervallo IP interno di un ambiente esistente.

L'intervallo IP interno interagisce con la tua rete VPC nei seguenti modi:

  • L'intervallo IP interno non deve essere in conflitto con la subnet VPC che a cui è connesso l'ambiente Cloud Composer. Non è possibile per abilitare una connessione con una subnet VPC che si sovrappone in un intervallo IP interno.

  • Se l'intervallo IP interno di un ambiente si sovrappone a quello del VPC intervalli di rete, quindi gli endpoint della tua rete VPC che gli indirizzi IP che si sovrappongono non sono accessibili dall'ambiente.

    Ad esempio, se l'intervallo interno è 100.64.128.0/20, allora qualsiasi richiesta nell'endpoint 100.64.128.1 della tua rete VPC ha esito negativo perché non lascia il progetto tenant.

  • L'intervallo IP interno non è riservato. Puoi utilizzare lo stesso IP interno per diversi ambienti senza alcuna configurazione aggiuntiva poiché le reti VPC interne utilizzate da ambienti diversi sono separate.

  • Puoi utilizzare gli indirizzi IP dell'intervallo interno per altri scopi, a condizione che I DAG e le attività nel tuo ambiente non effettuano richieste a loro.

Connessione a una rete VPC

Console

  1. Nella console Google Cloud, vai alla pagina Ambienti.

    Vai ad Ambienti

  2. Nell'elenco degli ambienti, fai clic sul nome dell'ambiente. Si apre la pagina Dettagli ambiente.

  3. Vai alla scheda Configurazione dell'ambiente.

  4. Nella sezione Configurazione di rete, individua il file Allegato di rete e fai clic su Modifica.

  5. Nella finestra di dialogo Collegamento di rete:

    • Per creare un nuovo collegamento di rete, nella sezione Collegamento di rete seleziona Crea un nuovo collegamento di rete. Nella sezione Rete e Subnet, seleziona una rete VPC e una subnet.

    • Per utilizzare un collegamento di rete esistente, nella sezione Collegamento di rete dall'elenco, seleziona un allegato.

  6. Fai clic su Salva.

gcloud

I seguenti argomenti di Google Cloud CLI specificano la connessione di rete VPC parametri:

  • --network: ID rete VPC.
  • --subnetwork: ID subnet VPC.
  • --network-attachment: utilizza un collegamento di rete esistente.

Nuovo collegamento di rete

Per connettere il tuo ambiente a una rete VPC tramite una nuova rete allegato, esegui questo comando di Google Cloud CLI:

gcloud beta composer environments update ENVIRONMENT_NAME \
  --location LOCATION \
  --network NETWORK_ID \
  --subnetwork SUBNETWORK_ID

Sostituisci quanto segue:

  • ENVIRONMENT_NAME: il nome dell'ambiente
  • LOCATION: la regione in cui si trova l'ambiente
  • NETWORK_ID: ID rete VPC
  • SUBNETWORK_ID: ID subnet VPC

Esempio:

gcloud beta composer environments update example-environment \
  --location us-central1 \
  --network projects/example-project/global/networks/example-network \
  --subnetwork projects/example-project/regions/us-central1/subnetworks/example-subnetwork

Collegamento di rete esistente

Per connettere il tuo ambiente a una rete VPC tramite una nuova rete allegato, esegui questo comando di Google Cloud CLI:

gcloud beta composer environments update ENVIRONMENT_NAME \
  --location LOCATION \
  --network-attachment NETWORK_ATTACHMENT_ID

Sostituisci quanto segue:

  • ENVIRONMENT_NAME: il nome dell'ambiente
  • LOCATION: la regione in cui si trova l'ambiente
  • NETWORK_ATTACHMENT_ID: il collegamento di rete nella projects/{project}/regions/{region}/networkAttachments/{networkAttachment} formato.

Esempio:

gcloud beta composer environments update example-environment \
  --location us-central1 \
  --network-attachment projects/example-project/regions/us-central1/networkAttachments/example-network-attachment

API

  1. Creare una richiesta API environments.patch.

  2. In questa richiesta:

    • Per creare un nuovo collegamento di rete:

      1. Nel parametro updateMask, specifica config.node_config.network,config.node_config.subnetwork mascherato.

      2. Nel corpo della richiesta, in network e subnetwork , specifica gli ID rete VPC e subnet.

    • Per utilizzare un collegamento di rete esistente:

      1. Nel parametro updateMask, specifica config.node_config.composer_network_attachment mascherato.

      2. Nel corpo della richiesta, fornisci un valore per la rete esistente allegato nel projects/{project}/regions/{region}/networkAttachments/{networkAttachment} formato.

Esempio (nuovo collegamento di rete):

// PATCH https://composer.googleapis.com/v1beta1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.node_config.network,config.node_config.subnetwork

"config": {
  "nodeConfig": {
    "network": "projects/example-project/global/networks/example-network",
    "subnetwork": "projects/example-project/regions/us-central1/subnetworks/example-subnetwork"
  }
}

Esempio (collegamento di rete esistente):

// PATCH https://composer.googleapis.com/v1beta1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.node_config.composer_network_attachment

"config": {
  "nodeConfig": {
    "composerNetworkAttachment": "projects/example-project/regions/us-central1/networkAttachments/example-network-attachment"
  }
}

Terraform

I seguenti campi nel blocco node_config specificano la rete VPC parametri di connessione:

  • network: ID rete VPC.
  • subnetwork: ID subnet VPC.
  • composer_network_attachment: utilizza un collegamento di rete esistente.

Nuovo collegamento di rete

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "ENVIRONMENT_NAME"
  region = "LOCATION"

  config {

    node_config {
      network = NETWORK_ID
      subnetwork = SUBNETWORK_ID
    }

  }
}

Sostituisci quanto segue:

  • ENVIRONMENT_NAME: il nome dell'ambiente.
  • LOCATION: la regione in cui si trova l'ambiente.
  • NETWORK_ID: ID rete VPC
  • SUBNETWORK_ID: ID subnet VPC

Esempio (nuovo collegamento di rete):

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "example-environment"
  region = "us-central1"

  config {

    node_config {
      network = "projects/example-project/global/networks/example-network"
      subnetwork = "projects/example-project/regions/us-central1/subnetworks/example-subnetwork"
    }

    ... other configuration parameters
  }
}

Collegamento di rete esistente

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "ENVIRONMENT_NAME"
  region = "LOCATION"

  config {

    node_config {
      composer_network_attachment = NETWORK_ATTACHMENT_ID
    }

  }
}

Sostituisci quanto segue:

  • ENVIRONMENT_NAME: il nome dell'ambiente.
  • LOCATION: la regione in cui si trova l'ambiente.
  • NETWORK_ATTACHMENT_ID: l'ID del collegamento di rete.

Esempio (collegamento di rete esistente):

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "example-environment"
  region = "us-central1"

  config {

    node_config {
      composer_network_attachment = projects/example-project/regions/us-central1/networkAttachments/example-network-attachment
    }

    ... other configuration parameters
  }
}

Disabilita la connessione a una rete VPC

Console

  1. Nella console Google Cloud, vai alla pagina Ambienti.

    Vai ad Ambienti

  2. Nell'elenco degli ambienti, fai clic sul nome dell'ambiente. Si apre la pagina Dettagli ambiente.

  3. Vai alla scheda Configurazione dell'ambiente.

  4. Nella sezione Configurazione di rete, individua il file Allegato di rete e fai clic su Modifica.

  5. Nella finestra di dialogo Collegamento di rete, seleziona Nessuno e fai clic su Salva.

gcloud

Gli argomenti --disable-vpc-connectivity disattivano la rete VPC connessione del tuo ambiente:

gcloud beta composer environments update ENVIRONMENT_NAME \
  --location LOCATION \
  --disable-vpc-connectivity

Sostituisci quanto segue:

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

Esempio:

gcloud beta composer environments update example-environment \
  --location us-central1 \
  --disable-vpc-connectivity

API

  1. Creare una richiesta API environments.patch.

  2. In questa richiesta:

    1. Nel parametro updateMask, specifica config.node_config.network,config.node_config.subnetwork mascherato.

    2. Nel corpo della richiesta, nei campi network e subnetwork, specificare valori vuoti.

Esempio:

// PATCH https://composer.googleapis.com/v1beta1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.node_config.network,config.node_config.subnetwork

"config": {
  "nodeConfig": {
    "network": "",
    "subnetwork": ""
  }
}

Terraform

Non è possibile scollegare una rete VPC utilizzando Terraform. Puoi invece collega una rete VPC diversa al suo posto o scollega la rete utilizzando con altri strumenti come Google Cloud CLI.

Passaggi successivi