Regole di forwarding per Cloud Service Mesh
Questo documento riguarda solo Cloud Service Mesh con le API di bilanciamento del carico. Ti consigliamo vivamente di utilizzare le API di routing dei servizi per eseguire il deployment di Cloud Service Mesh.
Cloud Service Mesh utilizza la regola di forwarding per determinare il proxy di destinazione quale traffico nel mesh viene instradato.
Ogni regola di forwarding fornisce un singolo indirizzo IPv4 globale per un servizio. Puoi utilizzare questo indirizzo per creare record DNS interni per il tuo servizio (ad esempio utilizzando una zona privata gestita da Cloud DNS). I filtri di metadati nella regola di forwarding specificano i criteri per cui Il proxy sidecar compatibile con xDS riceve la configurazione.
Per il piano di controllo di Cloud Service Mesh, la regola di inoltro interna, autogestita e globale instrada il traffico in base all'indirizzo IP, alla porta e al protocollo a un proxy di destinazione. Il proxy di destinazione rimanda a una mappa URL contenente regole che determinare la destinazione del traffico. La mappa URL specifica anche il valore predefinito di servizio di backend. Questo servizio di backend specifica un controllo di integrità e determina il backend appropriato, ad esempio un gruppo di istanze gestite che contiene di macchine virtuali (VM) o un Gruppo di endpoint di rete (NEG) che contiene i pod di backend di Google Kubernetes Engine (GKE).
Il seguente diagramma mostra come una regola di inoltro si inserisce nell'architettura di Cloud Service Mesh.
Proprietà delle regole di forwarding
Una risorsa della regola di forwarding contiene le seguenti proprietà che si applicano a Cloud Service Mesh. La regola di inoltro gestisce il traffico che corrisponde all'indirizzo IP, al protocollo e al numero di porta di destinazione.
Un indirizzo IP 0.0.0.0
in una regola di inoltro è una delle opzioni disponibili quando si utilizza Cloud Service Mesh. Un indirizzo IP 0.0.0.0
indica qualsiasi indirizzo IP.
Con un deployment di proxy, un indirizzo IP
0.0.0.0
consente al proxy di trovare qualsiasi traffico in entrata se non viene trovata un'altra corrispondenza specifica.Con un deployment senza proxy, un indirizzo IP
0.0.0.0
fornisce un modo per specificare non è necessario specificare un indirizzo IP. Di seguito sono riportati ulteriori dettagli sull'utilizzo0.0.0.0
indirizzi IP con un proxy gRPC di destinazione.
La tabella seguente descrive in modo più dettagliato le proprietà regola di forwarding.
Proprietà | Obbligatorio | Descrizione |
---|---|---|
name |
✔ | Il nome della regola di forwarding. Il nome deve essere univoco
in questo progetto, da 1 a 63 caratteri e deve corrispondere all'espressione regolare:
Ciò significa che il primo carattere deve essere una lettera minuscola e tutti i caratteri successivi devono essere trattini, lettere minuscole o cifre, tranne l'ultimo carattere, che non può essere un trattino. |
IPAddress |
✔ | Uno dei seguenti: Non è necessario specificare gli indirizzi IP per le regole di forwarding di Cloud Service Mesh corrispondono agli intervalli di indirizzi IP delle subnet una rete VPC (Virtual Private Cloud). Per una determinata rete VPC, indirizzo IP e porta, puoi avere una sola regola di inoltro interno autogestito. Ad esempio, nella stessa rete VPC non puoi creare
due regole di inoltro che utilizzano l'indirizzo IP |
IPAddress con un proxy gRPC di destinazione |
Una regola di inoltro che fa riferimento a un proxy gRPC di destinazione con il
campo Un client gRPC che utilizza
Lo schema Di conseguenza, Cloud Service Mesh utilizza l'indirizzo IP |
|
target |
✔ |
Il proxy target a cui questa regola di inoltro indirizza il traffico.
Cloud Service Mesh supporta Quando utilizzi la console Google Cloud per configurare la regola di inoltro, il proxy di destinazione viene configurato automaticamente. Quando utilizzi Google Cloud CLI o l'API, il proxy di destinazione deve esistere prima di creare la regola di inoltro. Puoi utilizzare più di una regola di forwarding con un determinato proxy. |
IPProtocol |
✔ | Il tipo di protocollo a cui corrisponde questa regola di inoltro. L'unico
il valore supportato è TCP . |
loadBalancingScheme |
✔ | Specifica come viene utilizzata la regola di forwarding. Il valore valido per
Cloud Service Mesh è INTERNAL_SELF_MANAGED . |
portRange |
✔ |
Una porta o un intervallo di porte uniti da un trattino. Pacchetti del numero specificato
il protocollo inviato a queste porte viene inoltrato al backend appropriato.
Puoi specificare un singolo numero di un intervallo, ad esempio
Per una determinata rete VPC, indirizzo IP e porta, puoi avere un'unica regola di inoltro interna autogestita. Ad esempio, nel
sulla stessa rete VPC, non puoi creare due
regole che utilizzano l'indirizzo IP e la porta Con i servizi gRPC proxyless, la porta nella regola di inoltro viene associata alla porta specificata nell'URI utilizzata da un'applicazione gRPC per connettersi a un servizio. Se nell'URI non è specificata una porta,
|
network |
✔ |
Specifica la rete VPC in cui si trovano le VM Google Cloud su cui vengono eseguiti i proxy Envoy. I proxy Envoy leggono la configurazione di Cloud Service Mesh che definisci per la stessa rete in cui sono di stanza. Puoi utilizzare il VPC
una rete denominata Cloud Service Mesh supporta il bilanciamento del carico per i client solo all'interno rete Google Cloud. Specifica il nome della rete nella regola di inoltro. Il peering di rete VPC non è supportato. |
Aggiungere una regola di forwarding globale
Per scoprire come configurare una regola di inoltro all'interno della configurazione complessiva di Cloud Service Mesh con le API di bilanciamento del carico, consulta quanto segue:
- Configura Cloud Service Mesh per le VM di Compute Engine con deployment Envoy automatico
- Configura Cloud Service Mesh per le VM di Compute Engine con deployment manuale di Envoy
- Configura Cloud Service Mesh per i pod GKE con inserimento Envoy automatico
- Configura Cloud Service Mesh per i pod GKE con inserimento manuale di Envoy
- Configurare Cloud Service Mesh per le VM Compute Engine e i servizi gRPC proxyless
- Configura Cloud Service Mesh per i pod GKE e i servizi gRPC senza proxy
Passaggi successivi
- Per utilizzare i filtri dei metadati per controllare quali proxy sidecar ricevono la configurazione associata alla regola di inoltro, consulta Configurare il filtro della configurazione in base alla corrispondenza
MetadataFilter
. - Per instradare il traffico, consulta la panoramica delle mappe di regole di routing di Cloud Service Mesh.
- Per saperne di più su Cloud Service Mesh, consulta Panoramica di Cloud Service Mesh.