API del piano di controllo xDS
Cloud Service Mesh e i relativi client (proxy Envoy o librerie gRPC senza proxy) utilizzano l'API open source xDS 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 della versione di xDS
Cloud Service Mesh supporta solo xDS v3.
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:
- Aggiornare le autorizzazioni di Identity and Access Management (IAM) concesse al servizio utilizzato dai tuoi client (proxy Envoy o librerie gRPC senza proxy) quando ti connetti 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 l'account Compute
Ruolo Visualizzatore rete (roles/compute.networkViewer
), Amministratore rete Compute
(roles/compute.networkAdmin
) o entrambi dall'account di servizio.
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 tue applicazioni su Envoy con Compute Engine, esegui una riavvio in sequenza o sostituzione 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'iniezione automatica 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 generato un proxy sidecar Envoy che supporta xDS v3 viene inserito automaticamente insieme al pod del carico di lavoro.
Se utilizzi l'iniezione di file collaterali manuale su GKE, ridistribuisci il proxy del file collaterale 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 ulteriori informazioni, consulta le 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 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, creala ed eseguine nuovamente il deployment.
Le modifiche precedenti alla configurazione di bootstrap non influiscono sulle versioni gRPC che non supportano xDS 3. 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 comodità, puoi utilizzare il generatore di bootstrap gRPC di Cloud Service Mesh 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
ispezionare la configurazione che Cloud Service Mesh genera per la sua puoi utilizzare strumento per la verifica dello stato del cliente. Questo strumento indica se la configurazione è xDS v2 o xDS v3.
Passaggi successivi
- Per informazioni generali sulla risoluzione dei problemi di Cloud Service Mesh, consulta Risolvere i problemi di implementazione 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.