API del piano di controllo xDS

Cloud Service Mesh e i suoi 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 della versione xDS

Cloud Service Mesh supporta xDS v3 (vivamente consigliato) e xDS v2. Il supporto di xDS v2 terminerà il 20 giugno 2024. Se è la prima volta che esegui il deployment di Cloud Service Mesh, ti consigliamo vivamente di utilizzare xDS v3.

Per determinare quali versioni di Envoy e gRPC supportano xDS v3, consulta la documentazione di Envoy e gRPC.

Migrazione da xDS v2 a xDS v3

Il processo di migrazione prevede due passaggi:

  1. Aggiorna le autorizzazioni di Identity and Access Management (IAM) concesse all'account di servizio che i client (proxy Envoy o librerie gRPC senza proxy) utilizzano durante la connessione a Cloud Service Mesh.
  2. Aggiorna ed esegui nuovamente il deployment delle applicazioni. I passaggi specifici variano a seconda del deployment e sono spiegati nelle sezioni seguenti.

Aggiorna le autorizzazioni IAM dell'account di servizio

Assicurati che l'account di servizio utilizzato dai client Cloud Service Mesh (Envoy, gRPC senza proxy) abbia le autorizzazioni trafficdirector.networks.reportMetrics e trafficdirector.networks.getConfigs. Queste autorizzazioni sono incluse nel ruolo client Cloud Service Mesh (roles/trafficdirector.client) di IAM.

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 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 all'account di servizio ed evita di concedere autorizzazioni troppo ampie.

Aggiorna le tue applicazioni

Dopo aver aggiornato le autorizzazioni IAM nell'account di servizio, aggiorna le applicazioni.

Envoy su Compute Engine

Per aggiornare le applicazioni su Envoy con Compute Engine, esegui un riavvio in sequenza o una sostituzione dei gruppi di istanze gestite. Alle istanze di macchine virtuali (VM) viene aggiunta automaticamente una versione di Envoy che supporta xDS v3.

Envoy su GKE

Se utilizzi l'inserimento di Envoy automatico 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 insieme al pod del carico di lavoro un proxy sidecar Envoy che supporta xDS v3.

Se utilizzi l'inserimento manuale del file collaterale su GKE, esegui nuovamente il deployment del proxy collaterale in ciascuno dei tuoi cluster GKE.

gRPC senza proxy

Il processo di migrazione prevede due passaggi:

  1. Assicurati che la versione di gRPC che utilizzi supporti xDS v3. Per ulteriori informazioni, consulta la pagina relativa alle funzionalità xDS in gRPC.

  2. Aggiorna la configurazione del bootstrap seguendo questa procedura:

    1. Nel campo "xds_servers", aggiungi "server_features": ["xds_v3"] come mostrato in questo esempio di file di bootstrap.
    2. L'ID nodo deve essere nel seguente formato, come mostrato nell'esempio precedente:
      "projects/PROJECT_NUMBER/networks/NETWORK_NAME/nodes/ID"
      

Dopo aver apportato le modifiche precedenti all'applicazione, creala ed eseguine nuovamente il deployment.

Le modifiche precedenti alla configurazione di bootstrap non interessano le 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 la versione del generatore di bootstrap gRPC di Cloud Service Mesh 0.11.0 o successiva 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 Stato client. Questo strumento indica se la configurazione è xDS v2 o xDS v3.

Passaggi successivi