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.
Se vuoi abilitare o disabilitare l'accesso a internet per l'ambiente per i componenti Airflow, consulta Modifica il tipo di rete dell'ambiente (IP privato o pubblico).
Se vuoi disattivare o attivare l'accesso a internet solo durante l'installazione di PyPI pacchi, consulta Configurare l'accesso a internet durante l'installazione dei pacchetti PyPI.
Se vuoi configurare la rete VPC condivisa, consulta la pagina Configurare il VPC condiviso per informazioni sulla configurazione di progetti e autorizzazioni.
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 attivi 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 la networking IP privato, tutto il traffico interno viene indirizzato alla tua rete VPC, tranne il traffico verso API, servizi e domini Google che sono disponibili per gli ambienti IP privato tramite l'accesso privato Google.
In base a come configuri la tua rete VPC, dell'ambiente può accedere a internet attraverso la tua rete VPC.
Zone DNS private definite nel VPC sono automaticamente disponibili per il modello Airflow del tuo ambiente componenti.
L'ambiente riserva due indirizzi IP nella subnet VPC.
Cloud Composer utilizza un collegamento di rete per connettere il tuo ambiente a una rete VPC:
Se specifichi una rete e una subnet VPC, Cloud Composer crea un nuovo allegato di rete nel 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 collegamento non viene eliminato dopo aver eliminato un ambiente, disattivato la connessione o sovrascritto i parametri di connessione VPC.
Nel networking VPC condiviso:
Assicurati di aver configurato la rete VPC condivisa per Cloud Composer. Consulta la pagina Configurare la rete VPC condivisa per informazioni sulla configurazione dei progetti e delle autorizzazioni per Cloud Composer.
Dopo aver configurato la rete VPC condivisa, puoi collegare il tuo ambiente a una rete VPC dal progetto host. Se utilizzi un collegamento di rete esistente, questo deve essere creato nel progetto di servizio (dove si trova l'ambiente) e collegato a una rete VPC condivisa.
Informazioni sull'intervallo IP interno dell'ambiente
Gli ambienti Cloud Composer 3 richiedono diversi indirizzi IP per i relativi componenti in esecuzione nel progetto tenant, ad esempio il cluster e il proxy Cloud SQL dell'ambiente. 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 di indirizzi IP interno interagisce con la 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 nell'intervallo IP interno.
Se l'intervallo IP interno di un ambiente si sovrappone agli intervalli della rete VPC, gli endpoint della rete VPC con indirizzi IP sovrapposti non sono accessibili dall'ambiente.
Ad esempio, se l'intervallo interno è
100.64.128.0/20
, allora qualsiasi richiesta nell'endpoint100.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
Nella console Google Cloud, vai alla pagina Ambienti.
Nell'elenco degli ambienti, fai clic sul nome dell'ambiente. Viene visualizzata la pagina Dettagli dell'ambiente.
Vai alla scheda Configurazione dell'ambiente.
Nella sezione Configurazione di rete, individua l'elemento Allegato di rete e fai clic su Modifica.
Nella finestra di dialogo Collegamento di rete:
Per creare un nuovo collegamento di rete, nell'elenco Collegamento di rete, seleziona Crea un nuovo collegamento di rete. Negli elenchi Rete e Subnet, seleziona una rete VPC e una subnet.
Per utilizzare un collegamento di rete esistente, selezionane uno nell'elenco Collegamento di rete.
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 collegare il tuo ambiente a una rete VPC tramite un nuovo collegamento di rete, esegui il seguente comando della CLI Google Cloud:
gcloud beta composer environments update ENVIRONMENT_NAME \
--location LOCATION \
--network NETWORK_ID \
--subnetwork SUBNETWORK_ID
Sostituisci quanto segue:
ENVIRONMENT_NAME
: il nome dell'ambienteLOCATION
: la regione in cui si trova l'ambienteNETWORK_ID
: ID rete VPCSUBNETWORK_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 collegare il tuo ambiente a una rete VPC tramite un nuovo collegamento di rete, esegui il seguente comando della CLI Google Cloud:
gcloud beta composer environments update ENVIRONMENT_NAME \
--location LOCATION \
--network-attachment NETWORK_ATTACHMENT_ID
Sostituisci quanto segue:
ENVIRONMENT_NAME
: il nome dell'ambienteLOCATION
: la regione in cui si trova l'ambienteNETWORK_ATTACHMENT_ID
: il collegamento di rete nellaprojects/{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
Creare una richiesta API
environments.patch
.In questa richiesta:
Per creare un nuovo collegamento di rete:
Nel parametro
updateMask
, specificaconfig.node_config.network,config.node_config.subnetwork
mascherato.Nel corpo della richiesta, nei campi
network
esubnetwork
, specifica gli ID della rete VPC e della subnet.
Per utilizzare un collegamento di rete esistente:
Nel parametro
updateMask
, specifica la mascheraconfig.node_config.composer_network_attachment
.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 i parametri di connessione della rete VPC:
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 del tuo ambiente.LOCATION
: la regione in cui si trova l'ambiente.NETWORK_ID
: ID rete VPCSUBNETWORK_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 del tuo 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
Nella console Google Cloud, vai alla pagina Ambienti.
Nell'elenco degli ambienti, fai clic sul nome dell'ambiente. Viene visualizzata la pagina Dettagli dell'ambiente.
Vai alla scheda Configurazione dell'ambiente.
Nella sezione Configurazione di rete, individua l'elemento Allegato di rete e fai clic su Modifica.
Nella finestra di dialogo Allegato 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'ambienteLOCATION
: la regione in cui si trova l'ambiente
Esempio:
gcloud beta composer environments update example-environment \
--location us-central1 \
--disable-vpc-connectivity
API
Creare una richiesta API
environments.patch
.In questa richiesta:
Nel parametro
updateMask
, specifica la mascheraconfig.node_config.network,config.node_config.subnetwork
.Nel corpo della richiesta, nei campi
network
esubnetwork
, 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. In alternativa, puoi collegare una rete VPC diversa o scollegare la rete utilizzando altri strumenti come Google Cloud CLI.
Passaggi successivi
- Modifica il tipo di rete dell'ambiente (IP privato o pubblico)
- Configurare l'accesso a internet durante l'installazione di pacchetti PyPI