Limitazioni di Cloud Service Mesh con Envoy

Questo documento descrive le limitazioni che si applicano a Cloud Service Mesh con le API Google Cloud, incluse le limitazioni avanzate per la gestione del traffico. Non si applica a Cloud Service Mesh con le API Istio.

Per informazioni sui limiti, consulta Quote e limiti.

Limitazioni generali

Le limitazioni di Cloud Service Mesh includono quanto segue:

  • Cloud Service Mesh con le API di routing dei servizi supporta solo le API Google Cloud.
  • Puoi utilizzare Cloud Service Mesh per configurare i seguenti protocolli delle richieste: HTTP (HTTP/1.1 o HTTP/2), HTTPS, TCP e gRPC.
  • Quando utilizzi Envoy come proxy del piano dati, il valore stream_idle_timeout è di 5 minuti per impostazione predefinita. Non è possibile configurare questa funzionalità tramite Cloud Service Mesh.
  • Quando utilizzi la risorsa TCPRoute per configurare il protocollo di richiesta TCP, non puoi utilizzare le funzionalità di gestione avanzata del traffico. La gestione avanzata del traffico è disponibile solo quando configuri il piano dati per gestire le richieste HTTP o gRPC.
  • Cloud Service Mesh supporta il peering di rete VPC con le API di routing dei servizi.
  • Cloud Service Mesh non supporta i protocolli server-first.
  • Non puoi utilizzare Cloud Service Mesh con servizi in esecuzione in Knative o Google Cloud Serverless Computing.
  • Questo documento illustra i proxy Envoy, ma puoi utilizzare qualsiasi proxy API standard (xDS) aperto con Cloud Service Mesh. Tuttavia, Google ha testato Cloud Service Mesh solo con il proxy Envoy.
  • Per garantire che tutte le vulnerabilità di sicurezza note siano ridotte, ti consigliamo di utilizzare la versione più recente di Envoy. Per informazioni sugli avvisi di sicurezza di Envoy, consulta Avvisi di sicurezza di Envoy.
  • La console Google Cloud non supporta i gruppi di endpoint di rete (NEG) con connettività ibrida. Per creare o eliminare i NEG di connettività ibrida, utilizza Google Cloud CLI.
  • Poiché il tuo piano dati gestisce i controlli di integrità, non puoi utilizzare la console Google Cloud, l'API o gcloud CLI per recuperare lo stato del controllo di integrità.
  • Controlla iptables e assicurati che sia configurato correttamente. Per ulteriori informazioni su come configurare iptables, consulta le note di Envoy sulla configurazione del filtro HTTP.

    • Se utilizzi la console Google Cloud per creare istanze di macchine virtuali (VM), alcuni moduli relativi a ipv6 non vengono installati e disponibili prima di un riavvio. Di conseguenza, iptables.sh non riesce a causa di dipendenze mancanti. In questo caso, riavvia la VM ed esegui nuovamente lo script run.sh.
    • Se utilizzi gcloud CLI per creare VM di Compute Engine, non dovresti avere questo problema.

Limitazioni per la gestione avanzata del traffico

I limiti della gestione avanzata del traffico includono quanto segue:

  • Se il valore di BackendService.sessionAffinity non è NONE e BackendService.localityLbPolicy è impostato su un criterio di bilanciamento del carico diverso da MAGLEV o RING_HASH, le impostazioni di affinità sessione non vengono applicate.
  • Il comando gcloud import non elimina i campi di primo livello della risorsa, come il servizio di backend e la mappa URL. Ad esempio, se viene creato un servizio di backend con le impostazioni per circuitBreakers, puoi utilizzare un comando gcloud import successivo per aggiornare queste impostazioni. Tuttavia, non puoi eliminare queste impostazioni dal servizio di backend. Puoi eliminare e ricreare la risorsa senza le impostazioni circuitBreakers.

Limitazioni con Service Directory

  • Service Directory e Cloud Service Mesh non garantiscono la connettività della rete per i clienti.
  • Un servizio di backend può fare riferimento solo a uno dei seguenti elementi:

    • Gruppo di istanze gestite o non gestite
    • Gruppo di endpoint di rete
    • Associazioni dei servizi
  • I servizi Service Directory possono essere utilizzati solo con i servizi di backend globali con load-balancing-scheme=INTERNAL_SELF_MANAGED.

  • Un servizio Service Directory a cui fa riferimento un'associazione di servizi può essere eliminato. Se il servizio Service Directory sottostante a cui è collegato il servizio di backend viene eliminato, le applicazioni che utilizzano Cloud Service Mesh non possono inviare traffico a questo servizio, di conseguenza le richieste non vanno a buon fine. Per le best practice, consulta Osservabilità e debug.

  • Quando associ un servizio Service Directory a un servizio di backend, non puoi configurare un controllo di integrità su quel servizio.

Passaggi successivi