API del control plane xDS
Cloud Service Mesh e i relativi client (proxy Envoy o librerie gRPC senza proxy) utilizzano l'API xDS open source per scambiare informazioni. Quando configuri Cloud Service Mesh, ad esempio utilizzando risorse come regole di forwarding e servizi di backend, Cloud Service Mesh converte queste risorse in una configurazione xDS, che condivide con i suoi client.
Supporto delle versioni di xDS
Cloud Service Mesh supporta solo xDS v3.
Per determinare quali versioni di Envoy e gRPC supportano xDS v3, consulta la documentazione di Envoy e gRPC.
Se utilizzi ancora xDS v2, segui queste istruzioni per eseguire la migrazione a xDS v3.
Esegui la migrazione da xDS v2 a xDS v3
Il processo di migrazione prevede due passaggi:
- Aggiorna le autorizzazioni Identity and Access Management (IAM) concesse al service account utilizzato dai client (proxy Envoy o librerie gRPC senza proxy) quando si connettono a Cloud Service Mesh.
- Aggiorna e riesegui il deployment delle applicazioni. I passaggi specifici variano a seconda del deployment e sono spiegati nelle sezioni seguenti.
Aggiorna le autorizzazioni IAM del account di servizio
Assicurati che il account di servizio utilizzato dai client Cloud Service Mesh (Envoy, gRPC senza proxy) disponga delle autorizzazioni trafficdirector.networks.reportMetrics e trafficdirector.networks.getConfigs. Queste autorizzazioni sono
incluse nel ruolo IAM
Client Traffic Director
(roles/trafficdirector.client).
Se utilizzi un ruolo IAM personalizzato, puoi aggiungere queste autorizzazioni
al ruolo personalizzato. Dopo aver aggiunto le autorizzazioni, puoi rimuovere il ruolo Visualizzatore rete Compute (roles/compute.networkViewer), il ruolo Amministratore rete Compute (roles/compute.networkAdmin) o entrambi dal account di servizio.
Ti consigliamo di utilizzare il ruolo Cloud Service Mesh Client anziché il ruolo Compute Network Viewer (roles/compute.networkViewer) o il ruolo Compute Network Admin (roles/compute.networkAdmin). L'utilizzo del ruolo Cloud Service Mesh Client limita le autorizzazioni concesse al account di servizio ed evita di concedere autorizzazioni eccessivamente ampie.
Aggiornare le applicazioni
Dopo aver aggiornato le autorizzazioni IAM sul account di servizio, aggiorna le applicazioni.
Envoy su Compute Engine
Per aggiornare le applicazioni su Envoy con Compute Engine, esegui un riavvio o una sostituzione in sequenza dei gruppi di istanze gestite. Una versione di Envoy che supporta xDS v3 viene aggiunta 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 sidecar sui cluster GKE che utilizzi con Cloud Service Mesh. Quando viene creato un nuovo pod, viene inserito automaticamente un proxy sidecar Envoy che supporta xDS v3 insieme al pod del workload.
Se utilizzi l'injection manuale del file collaterale 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 v3. Per saperne di più, consulta Funzionalità xDS in gRPC.
Aggiorna la configurazione di bootstrap seguendo questi passaggi:
- Nel campo
"xds_servers", aggiungi"server_features": ["xds_v3"]come mostrato in questo esempio di file bootstrap. L'ID nodo deve avere il seguente formato, come mostrato nell'esempio precedente:
"projects/PROJECT_NUMBER/networks/NETWORK_NAME/nodes/ID"
- Nel campo
Dopo aver apportato le modifiche precedenti all'applicazione, compilala ed esegui nuovamente il deployment.
Le modifiche precedenti alla configurazione di bootstrap non influiscono sulle versioni gRPC che non supportano xDS v3. Inoltre, se le modifiche precedenti non sono presenti nella configurazione di bootstrap, le versioni gRPC che supportano xDS v3 utilizzano xDS v2.
Per comodità, puoi utilizzare Cloud Service Mesh gRPC bootstrap generator versione 0.16.0 o successive per generare una configurazione di bootstrap compatibile con xDS v3.
Verifica che i client Cloud Service Mesh utilizzino xDS v3
Per esaminare la configurazione generata da Cloud Service Mesh per i suoi client, 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 la pagina Risolvere i problemi relativi ai deployment di Envoy.
- Per risolvere i problemi di configurazione durante il deployment dei servizi gRPC senza proxy, consulta Risoluzione dei problemi dei deployment gRPC senza proxy.