Configura il networking VPC condiviso

Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3

Questa pagina descrive i requisiti della rete VPC condivisa e del progetto host per Cloud Composer.

La rete VPC condivisa consente alle organizzazioni di stabilire confini di budgeting e controllo dell'accesso a livello di progetto, consentendo al contempo una comunicazione sicura ed efficiente utilizzando IP privati all'interno di questi confini. Nella configurazione VPC condiviso, Cloud Composer può richiamare i servizi ospitati in altri progetti Google Cloud della stessa organizzazione senza esporli alla rete internet pubblica.

Linee guida per la rete VPC condivisa

Progetti di servizio e host per Cloud Composer
Figura 1. Progetti di servizi e host per Cloud Composer
  • Il VPC condiviso richiede di designare un progetto host a cui appartengono le reti e le subnet e un progetto di servizio collegato al progetto host. Quando Cloud Composer partecipa a un VPC condiviso, l'ambiente Cloud Composer è incluso nel progetto di servizio.

  • Per configurare un VPC condiviso, seleziona i seguenti intervalli IP nel progetto host:

    • Intervallo IP principale della sottorete utilizzata dai nodi GKE che Cloud Composer utilizza come livello Compute Engine.
    • Intervallo IP secondario per i servizi GKE.
    • Intervallo IP secondario per i pod GKE.
  • Gli intervalli IP secondari non possono sovrapporsi ad altri intervalli secondari in questa VPC.

  • Assicurati che gli intervalli secondari siano sufficientemente grandi da adattarsi alle dimensioni del cluster e al ridimensionamento dell'ambiente.

    Consulta la sezione Creare un cluster nativo di VPC per le linee guida sulla configurazione degli intervalli secondari per i pod e i servizi.

  • L'intervallo di indirizzi principale della subnet deve essere in grado di soddisfare la crescita prevista e tenere conto degli indirizzi IP inutilizzabili.

  • Se utilizzi l'agente di mascheramento IP e la configurazione dell'IP privato per i tuoi ambienti, aggiungi gli intervalli IP di nodi e pod alla sezione nonMasqueradeCIDRs di il ip-masq-agent ConfigMap. Per ulteriori informazioni, vedi Configurazione di un agente di mascheramento IP.

preparazione

  1. Trova i seguenti ID progetto e numeri di progetto:

    • Progetto host: il progetto che contiene la rete VPC condiviso.
    • Progetto di servizio: il progetto che contiene l'ambiente Cloud Composer.
  2. Prepara l'organizzazione.

  3. Abilita l'API GKE nei progetti host e di servizio.

  4. Se crei un ambiente nel progetto di servizio utilizzando la console Google Cloud, il tuo account deve disporre dell'autorizzazione compute.subnetworks.use nel progetto host. In caso contrario, l'elenco delle subnet disponibili non contiene le subnet del progetto host. Se crei un ambiente utilizzando gcloud, API o Terraform, il tuo account non ha bisogno di questa autorizzazione aggiuntiva.

configura il progetto di servizio

Se non sono mai stati creati ambienti Cloud Composer nel servizio del progetto, quindi esegui il provisioning dell'account dell'agente di servizio Composer nel progetto di servizio:

gcloud beta services identity create --service=composer.googleapis.com`

Configura il progetto host

Configura il progetto host come descritto di seguito.

(IP privato) Abilita accesso privato Google

Se prevedi di utilizzare ambienti IP privati, quindi abilita l'accesso privato Google per la subnet nell'host progetto. Puoi farlo nel passaggio successivo, quando configuri il networking le risorse per una subnet nuova o già esistente.

Se prevedi di utilizzare ambienti IP pubblici, ti consigliamo comunque di abilitare l'accesso privato Google per la sottorete nel progetto dell'host. Se scegli di non utilizzare l'accesso privato Google, assicurati di avere non bloccando il traffico che altrimenti La regola firewall di autorizzazione in uscita IPv4 implicita potrebbe consentire. Questo è necessario per raggiungere correttamente gli endpoint *.googleapis.com.

Configura le risorse di rete

Scegli una delle seguenti opzioni per allocare e configurare le risorse di rete. Per ogni opzione, devi assegnare un nome agli intervalli IP secondari per i pod e servizi.

Configura un VPC condiviso e collega il progetto di servizio

  1. Se necessario, configura il VPC condiviso. Se hai già configurato un VPC condiviso, vai al passaggio successivo.

  2. Collega il progetto di servizio, che utilizzi per ospitare gli ambienti Cloud Composer.

    Quando colleghi un progetto, lascia le autorizzazioni di rete VPC predefinite in funzione.

Concedi le autorizzazioni all'account dell'agente di servizio Composer

Nel progetto host:

  1. Modifica le autorizzazioni per l'account agente di servizio Composer, service-SERVICE_PROJECT_NUMBER@cloudcomposer-accounts.iam.gserviceaccount.com

  2. Per questo account, aggiungi un altro ruolo a livello di progetto:

    • Per gli ambienti IP privato, aggiungi il ruolo Composer Shared VPC Agent.

    • Per gli ambienti IP pubblici, aggiungi il ruolo Compute Network User.

Concedi le autorizzazioni all'account agente di servizio API di Google

Nel progetto host:

  1. Modifica le autorizzazioni per l'account agente di servizio API di Google, SERVICE_PROJECT_NUMBER@cloudservices.gserviceaccount.com.

  2. Aggiungi un altro ruolo, Utente di rete Compute (compute.networkUser) a livello di progetto. Si tratta di un requisito per i gruppi di istanze gestite utilizzati con il VPC condiviso perché questo tipo di account di servizio esegue attività come la creazione di istanze.

Modifica le autorizzazioni per gli account di servizio GKE

Nel progetto host, modifica le autorizzazioni per gli account di servizio GKE.service-SERVICE_PROJECT_NUMBER@container-engine-robot.iam.gserviceaccount.com

Per ogni account di servizio, aggiungi un altro ruolo, compute.networkUser utilizzando una delle seguenti opzioni:

  • Concedi questo ruolo a livello di sottorete per consentire a un account di servizio di configurare i peering VPC richiesti da Cloud Composer. In questo caso, specifica esplicitamente la subnet da utilizzare dall'ambiente, perché il cluster dell'ambiente potrebbe non disporre delle autorizzazioni per trovare la subnet all'interno della rete.

  • Concedi questo ruolo a livello di progetto per l'intero progetto host. In questo nel caso specifico, l'account di servizio GKE del progetto di servizio le autorizzazioni per utilizzare qualsiasi subnet nel progetto host.

Modifica le autorizzazioni per l'account di servizio GKE del progetto di servizio

Nel progetto host, modifica le autorizzazioni per Account di servizio GKE del progetto di servizio.

Per questo account, aggiungi un altro ruolo a livello di progetto, Utente agente di servizio host Kubernetes Engine (roles/container.hostServiceAgentUser).

Ciò consente all'account di servizio GKE del progetto di servizio di usa l'account di servizio GKE del progetto host per configurare di risorse di rete condivise.

(IP privato, facoltativo) Configura le regole del firewall e la connettività ai domini Google

In una configurazione VPC condiviso con ambienti IP privati, come opzione, potresti voler instradare tutto il traffico verso le API e i servizi Google tramite diversi indirizzi IP appartenenti al dominio private.googleapis.com e configurare le regole del firewall corrispondenti. In questa configurazione, il tuo ambiente accede alle API e ai servizi Google tramite indirizzi IP instradabili solo da Google Cloud. Se la configurazione del VPC condiviso utilizza Controlli di servizio VPC, quindi instrada il traffico attraverso restricted.googleapis.com .

Se la configurazione del VPC condiviso utilizza ambienti IP privati:

  1. (Facoltativo) Configura la connettività alle API e ai servizi Google.
  2. (Facoltativo) Configura le regole del firewall.

Se la configurazione del VPC condiviso utilizza Controlli di servizio VPC, utilizza istruzioni per gli ambienti con Controlli di servizio VPC:

  1. Configura la connettività alle API e ai servizi Google.
  2. Configurare le regole del firewall

Conclusione

Hai completato la configurazione della rete VPC condiviso per il servizio e l'host in modo programmatico a gestire i progetti.

Ora puoi creare nuovi ambienti nel progetto di servizio che utilizzano la rete VPC del progetto host.

Passaggi successivi