API del piano di controllo xDS
Cloud Service Mesh e i relativi client (proxy Envoy o gRPC senza proxy librerie) utilizzano lo strumento xDS open source tramite Google Cloud per scambiare informazioni. Quando configuri Cloud Service Mesh, ad esempio utilizzando risorse come regole di forwarding e servizi di backend: Cloud Service Mesh converte a una configurazione xDS che condivide con i suoi client.
Supporto delle versioni xDS
Cloud Service Mesh supporta solo xDS 3.
Per determinare quali versioni di Envoy e gRPC supportano xDS v3, consulta la Envoy e documentazione di gRPC.
Se utilizzi ancora xDS v2, segui le istruzioni riportate di seguito per eseguire la migrazione xDS v3.
Migrazione da xDS v2 a xDS v3
Il processo di migrazione prevede due passaggi:
- Aggiorna le autorizzazioni Identity and Access Management (IAM) concesse all'account di servizio utilizzato dai tuoi client (proxy Envoy o librerie gRPC senza proxy) quando si connettono a Cloud Service Mesh.
- Aggiorna ed esegui nuovamente il deployment delle applicazioni. I passaggi specifici variano a seconda per il deployment e sono spiegati nelle sezioni seguenti.
Aggiorna le autorizzazioni IAM dell'account di servizio
Assicurati che l'account di servizio utilizzato da Cloud Service Mesh
(Envoy, gRPC senza proxy) ha lo trafficdirector.networks.reportMetrics
e trafficdirector.networks.getConfigs
autorizzazioni. Queste autorizzazioni sono
incluse nella configurazione IAM
Ruolo Client Cloud Service Mesh
(roles/trafficdirector.client
).
Se utilizzi un ruolo IAM personalizzato, puoi aggiungere queste autorizzazioni
al ruolo personalizzato. Dopo aver aggiunto le autorizzazioni, puoi rimuovere dall'account di servizio il ruolo Visualizzatore rete Compute (roles/compute.networkViewer
), il ruolo Amministratore rete Compute (roles/compute.networkAdmin
) o entrambi.
Ti consigliamo di utilizzare il ruolo Client Cloud Service Mesh anziché il ruolo Visualizzatore rete Compute (roles/compute.networkViewer
) o il ruolo Amministratore rete Compute (roles/compute.networkAdmin
). L'utilizzo del ruolo Client Cloud Service Mesh limita le autorizzazioni concesse al service account ed evita di concedere autorizzazioni eccessivamente ampie.
Aggiorna le tue applicazioni
Dopo aver aggiornato le autorizzazioni IAM nell'account di servizio, aggiornare le applicazioni.
Envoy su Compute Engine
Per aggiornare le applicazioni su Envoy con Compute Engine, esegui un riavvio o una sostituzione graduale dei gruppi di istanze gestite. È disponibile una versione di Envoy che supporta xDS v3 aggiunte automaticamente alle istanze di macchine virtuali (VM).
Envoy su GKE
Se utilizzi l'inserimento automatico di Envoy con Google Kubernetes Engine (GKE), reinstalla l'iniettore del sidecar sui cluster GKE che stai utilizzando Cloud Service Mesh. Quando viene creato un nuovo pod, viene generato un proxy sidecar Envoy che supporta xDS v3 viene inserito automaticamente insieme al pod del carico di lavoro.
Se utilizzi l'inserimento manuale di file collaterali su GKE, esegui nuovamente il deployment del proxy sidecar su ciascuno dei tuoi cluster GKE.
gRPC senza proxy
Il processo di migrazione prevede due passaggi:
Assicurati che la versione di gRPC che utilizzi supporti xDS 3. Per maggiori informazioni informazioni, consulta le funzionalità di xDS in gRPC.
Aggiorna la configurazione del bootstrap seguendo questa procedura:
- Nel campo
"xds_servers"
, aggiungi"server_features": ["xds_v3"]
come mostrato in questo esempio di file di bootstrap. L'ID nodo deve essere nel seguente formato come mostrato nella precedente esempio:
"projects/PROJECT_NUMBER/networks/NETWORK_NAME/nodes/ID"
- Nel campo
Dopo aver apportato le modifiche precedenti all'applicazione, compilala e ridistribuiscila.
Le modifiche precedenti alla configurazione del bootstrap non influiscono sulle versioni di gRPC che non supportano xDS v3. Inoltre, se le modifiche precedenti non sono presenti nella configurazione di bootstrap, le versioni gRPC che supportano la versione 3 di xDS utilizzano la versione 2 di xDS.
Per praticità, puoi utilizzare il generatore di bootstrap gRPC di Cloud Service Mesh versione 0.16.0 per generare una configurazione bootstrap compatibile con xDS v3.
Verifica che i client Cloud Service Mesh utilizzino xDS 3
Per ispezionare la configurazione generata da Cloud Service Mesh per i suoi clienti, puoi utilizzare lo strumento di stato del client. Questo strumento indica se la configurazione è xDS v2 o xDS v3.
Passaggi successivi
- Per trovare informazioni generali sulla risoluzione dei problemi di Cloud Service Mesh, consulta Risolvi i problemi relativi ai deployment di Envoy.
- Per risolvere i problemi di configurazione quando esegui il deployment di servizi gRPC senza proxy, consulta Risolvi i problemi relativi ai deployment gRPC senza proxy.