Mantieni tutto organizzato con le raccolte Salva e classifica i contenuti in base alle tue preferenze.

Preparati a configurare Traffic Director con Envoy

La configurazione di Traffic Director prevede le seguenti fasi:

  1. Concedere autorizzazioni, abilitare l'API Traffic Director e, se utilizzi Compute Engine, configurare Cloud DNS.
  2. Deployment delle applicazioni con proxy Envoy.
  3. Creazione di servizi e regole di routing che determinano il modo in cui il traffico viaggia attraverso il mesh di servizi.

Questo documento descrive la prima fase e indica se utilizzi le API meno recenti o le nuove API di routing dei servizi, che sono in anteprima. La seconda e la terza fase sono trattate dalle guide specifiche della piattaforma elencate in Continuare la procedura di configurazione più avanti in questo documento.

Prima di leggere questa guida, acquisisci familiarità con la panoramica su Traffic Director. Se utilizzi le nuove API, consulta la panoramica delle nuove API di routing dei servizi.

Prerequisiti

Se prevedi di utilizzare Traffic Director per configurare proxy Envoy in esecuzione su applicazioni affiancate su istanze di macchine virtuali (VM), container o un mix di entrambi, devi prima completare le attività seguenti:

  1. Abilitare la fatturazione.
  2. Decidi come installare Envoy.
  3. Concedi le autorizzazioni richieste.
  4. Abilita l'API Traffic Director per il tuo progetto.
  5. Se usi Compute Engine, abilita l'API Cloud DNS e configura Cloud DNS.
  6. Assicurati che l'account di servizio utilizzato dai proxy Envoy disponga di autorizzazioni sufficienti per accedere all'API Traffic Director.

Le sezioni seguenti forniscono istruzioni per ogni attività.

Abilitare la fatturazione

Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud. Per ulteriori informazioni, consulta Abilitare, disabilitare o modificare la fatturazione per un progetto.

Decidi come installare Envoy

Traffic Director semplifica l'installazione dei proxy Envoy e la gestione di questo livello di infrastruttura:

  • Su Compute Engine, puoi aggiungere automaticamente Envoy alle applicazioni in esecuzione sulle VM. Utilizzi un modello VM che installa Envoy, lo connette a Traffic Director e configura il networking della tua VM.

  • In Google Kubernetes Engine (GKE), puoi aggiungere automaticamente i proxy sidecar Envoy ai tuoi pod. Installa un iniettore sidecar Envoy nel cluster, che aggiunge i proxy sidecar Envoy, li connette a Traffic Director e configura il networking del container.

Infine, con Traffic Director puoi anche utilizzare soluzioni di deployment Envoy di provider di terze parti. Un esempio di questa offerta è GetEnvoy, che fornisce un approccio basato su gestore di pacchetti per l'installazione e l'aggiornamento dei proxy Envoy.

Informazioni sul controllo delle versioni di Envoy

Envoy per poter utilizzare Traffic Director deve utilizzare la versione 1.9.1 o una versione successiva. Consigliamo sempre di utilizzare la versione più recente di Envoy per garantire che le vulnerabilità di sicurezza note siano mitigate.

Se decidi di eseguire il deployment di Envoy utilizzando uno dei nostri metodi automatici, gestiamo questa attività per te nel seguente modo:

  • Quando utilizzi il deployment automatizzato di Envoy con le VM di Compute Engine, la versione di Envoy installata è quella che abbiamo convalidato per funzionare con Traffic Director. Quando viene creata una nuova VM utilizzando il modello di istanza, la VM riceve la versione più recente convalidata. Se hai una VM a lunga esecuzione, puoi utilizzare un aggiornamento in sequenza per sostituire le VM esistenti e scegliere la versione più recente.

  • Quando utilizzi l'iniettore sidecar Envoy con GKE, l'iniettore è configurato per utilizzare una versione recente di Envoy che abbiamo convalidato per funzionare con Traffic Director. Quando un sidecar viene inserito accanto al tuo pod di carico di lavoro, riceve questa versione di Envoy. Se vuoi scegliere una versione più recente di Envoy, aggiorna l'iniettore sidecar Envoy.

Per informazioni sulle versioni specifiche di Envoy, consulta la cronologia delle versioni. Per informazioni sulle vulnerabilità di sicurezza, consulta gli avvisi di sicurezza.

Concedi le autorizzazioni IAM richieste

Devi disporre di autorizzazioni IAM (Identity and Access Management) sufficienti per creare istanze VM e modificare una rete per configurare Traffic Director. Se hai il ruolo di Proprietario o Editor (roles/owner o roles/editor) nel progetto in cui stai attivando Traffic Director, hai automaticamente le autorizzazioni corrette.

In caso contrario, devi avere tutti i ruoli IAM di Compute Engine mostrati nella tabella seguente. Se hai questi ruoli, hai anche le autorizzazioni associate, come descritto nella documentazione IAM di Compute Engine.

Attività Ruolo richiesto
Imposta il criterio IAM per un account di servizio. Amministratore account di servizio
(roles/iam.serviceAccountAdmin)
Ottieni la risorsa della regola di forwarding globale. Visualizzatore rete Compute
(roles/compute.networkViewer)
Attiva Traffic Director. Amministratore utilizzo dei servizi
(roles/serviceusage.serviceUsageAdmin)
Crea reti, subnet e componenti del bilanciatore del carico. Amministratore rete Compute
(roles/compute.networkAdmin)
Aggiungi e rimuovi le regole firewall. Amministratore sicurezza Compute
(roles/compute.securityAdmin)
Creare istanze. Amministratore istanze Compute
(roles/compute.instanceAdmin)

Inoltre, il pool di nodi GKE o le VM di Compute Engine devono avere l'ambito https://www.googleapis.com/auth/cloud-platform. Per ulteriori informazioni, consulta la pagina sulla risoluzione dei problemi dei deployment che utilizzano Envoy.

Abilita l'API Traffic Director

console

  1. Nella console di Google Cloud, vai alla pagina Libreria API del progetto.

    Vai alla libreria di API

  2. Nel campo Cerca API e servizi, inserisci Traffic Director.

  3. Nell'elenco dei risultati di ricerca, fai clic su API Traffic Director. Se l'API Traffic Director non è elencata, significa che non disponi delle autorizzazioni necessarie per abilitare l'API Traffic Director.

  4. Nella pagina API Traffic Director, fai clic su Abilita.

gcloud

Esegui questo comando:

gcloud services enable trafficdirector.googleapis.com

Abilita l'API Cloud DNS e configura Cloud DNS

Segui queste istruzioni se stai configurando Traffic Director su Compute Engine. Devi abilitare l'API Cloud DNS e configurare Cloud DNS per la risoluzione dei nomi DNS.

Per informazioni di base su Traffic Director e sulla risoluzione DNS, consulta l'articolo su traffic Director e risoluzione dei nomi DNS.

Innanzitutto, segui le istruzioni riportate di seguito per abilitare l'API Cloud DNS.

console

  1. Nella console di Google Cloud, vai alla pagina Libreria API del progetto.

    Vai alla libreria di API

  2. Nel campo Cerca API e servizi, inserisci DNS.

  3. Nell'elenco dei risultati di ricerca, fai clic su API Cloud DNS. Se l'API Cloud DNS non è elencata, significa che non disponi delle autorizzazioni necessarie per abilitare l'API Cloud DNS.

  4. Nella pagina API Cloud DNS, fai clic su Abilita.

gcloud

Esegui questo comando:

gcloud services enable dns.googleapis.com

Successivamente, configura una zona privata gestita di Cloud DNS. Segui le istruzioni riportate in Creare una zona privata.

Abilita l'account di servizio per accedere all'API Traffic Director

Quando configuri il tuo piano dati e lo colleghi a Traffic Director, i tuoi client xDS (ad esempio i proxy Envoy) si connettono al server xDS in trafficdirector.googleapis.com. Questi client xDS presentano un'identità dell'account di servizio al server xDS per garantire che le comunicazioni tra il piano dati e il piano di controllo siano debitamente autorizzate:

  • Per una VM di Compute Engine, il client xDS utilizza l'account di servizio assegnato alla VM.
  • Per GKE, se Workload Identity non è abilitato, il client xDS utilizza l'account di servizio assegnato al nodo GKE sottostante.
  • Se Workload Identity è abilitato, il client xDS utilizza l'account di servizio Google associato all'account di servizio Kubernetes assegnato al pod.

A seconda della versione del client xDS utilizzata per configurare Envoy, devi disporre delle autorizzazioni seguenti. Ti consigliamo di configurare i nuovi deployment Envoy utilizzando xDS v3 o di eseguire la migrazione a xDS v3 se disponi già di un deployment che utilizza xDS v2. Inoltre, le nuove API di routing dei servizi richiedono xDS v3.

  • Quando utilizzi xDS v3, l'account di servizio utilizzato dai client deve avere le autorizzazioni trafficdirector.networks.reportMetrics e trafficdirector.networks.getConfigs. Puoi utilizzare il ruolo di Client Traffic Director IAM (roles/trafficdirector.client), che aggrega entrambe le autorizzazioni.

  • Quando utilizzi xDS v2, l'account di servizio utilizzato dai client deve disporre dell'autorizzazione IAM compute.globalForwardingRules.get a livello di progetto. Puoi anche concedere questa autorizzazione assegnando il ruolo Visualizzatore rete Compute (roles/compute.networkViewer) all'account di servizio.

console

  1. In Google Cloud Console, vai alla pagina IAM e amministrazione.

    Vai alla pagina Amministratore IAM e amministrazione

  2. Seleziona il progetto.

  3. Identifica l'account di servizio a cui vuoi aggiungere un ruolo:

    • Se l'account di servizio non è già presente nell'elenco Membri, non ha ruoli assegnati. Fai clic su Aggiungi e inserisci l'indirizzo email dell'account di servizio.
    • Se l'account di servizio è già presente nell'elenco Membri, i ruoli sono già esistenti. Seleziona l'account di servizio, quindi fai clic sulla scheda Ruoli.
  4. Espandi il ruolo. Fai clic su Modifica per l'account di servizio che vuoi modificare.

  5. Seleziona il ruolo Altro > Client Traffic Director.

  6. Per applicare il ruolo all'account di servizio, fai clic su Salva.

gcloud

Esegui questo comando:

gcloud projects add-iam-policy-binding PROJECT \
    --member serviceAccount:SERVICE_ACCOUNT_EMAIL \
    --role=roles/trafficdirector.client

Sostituisci quanto segue:

  • PROJECT: inserisci gcloud config get-value project
  • SERVICE_ACCOUNT_EMAIL: l'indirizzo email associato all'account di servizio

Continuare la procedura di configurazione

Ora che hai completato i passaggi preliminari, puoi iniziare a configurare il mesh di servizi. Le seguenti guide forniscono istruzioni specifiche per la piattaforma per le API meno recenti con Compute Engine e GKE:

Sebbene queste guide si concentrino ciascuna sull'implementazione dei proxy sidecar Envoy su un'unica piattaforma (Compute Engine o GKE), Traffic Director è flessibile e supporta i deployment che coprono sia Compute Engine che GKE.

Se stai eseguendo il deployment di Traffic Director con le nuove API di routing dei servizi, che sono in anteprima, consulta le guide alla configurazione del routing dei servizi di Traffic Director.