Cloud Service Mesh con gruppi di endpoint di rete internet
Puoi configurare Cloud Service Mesh in modo da utilizzare
gruppi di endpoint di rete (NEG) internet
di tipo INTERNET_FQDN_PORT
. Il servizio esterno è rappresentato dal suo
nome di dominio completo (FQDN) e numero di porta nel NEG. Il NEG può
contenere solo una coppia FQDN:Port
e il servizio di backend può contenere solo una
NEG di questo tipo. Il nome di dominio completo viene risolto utilizzando l'elemento sottostante
della rete VPC (Virtual Private Cloud)
ordine di risoluzione dei nomi.
Espandi il mesh di servizi Cloud Service Mesh utilizzando i backend FQDN
Il mesh di servizi Cloud Service Mesh può instradare il traffico a servizi privati che sono raggiungibili tramite la connettività ibrida, anche denominata on-premise, servizi internet e multi-cloud. Il servizio remoto viene fatto riferimento dal relativo FQDN.
Puoi anche indirizzare il traffico verso servizi raggiungibili tramite internet pubblico.
Risorse e architettura di Google Cloud
Questa sezione descrive le risorse e l'architettura per la configurazione di Cloud Service Mesh con un NEG su internet.
INTERNET_FQDN_PORT
gruppo di endpoint di rete
Per instradare il traffico a un servizio esterno a cui viene fatto riferimento tramite il relativo FQDN, utilizza il NEG internet globale di tipo INTERNET_FQDN_PORT
. Il NEG contiene
il nome di dominio completo e il numero di porta del servizio. Cloud Service Mesh programma la
FQDN nei proxy Envoy utilizzando la configurazione xDS.
Cloud Service Mesh non garantisce la risoluzione dei nomi e la connettività degli endpoint remoti. Il nome di dominio completo deve essere risolvibile dalla risoluzione del nome nell'ordine della rete VPC a cui sono collegati i proxy Envoy, e gli endpoint risolti devono essere raggiungibili dai proxy Envoy.
Controlli di integrità
Il comportamento dei controlli di integrità per gli endpoint di rete di tipo INTERNET_FQDN_PORT
è diverso da quello per altri tipi di endpoint di rete utilizzati
con Cloud Load Balancing e Cloud Service Mesh. Sebbene la maggior parte degli altri tipi di endpoint di rete utilizzi il sistema di controllo dell'integrità centralizzato di Google Cloud, i NEG utilizzati per gli endpoint in ambienti multi-cloud (INTERNET_FQDN_PORT
e NON_GCP_PRIVATE_IP_PORT
) utilizzano il meccanismo di controllo dell'integrità distribuito di Envoy.
Envoy supporta i seguenti protocolli per i controlli di integrità:
- HTTP
- HTTPS
- HTTP/2
- TCP
Configura i controlli di integrità utilizzando le API Compute Engine.
Considerazioni sul DNS
Ci sono due considerazioni distinte per quanto riguarda il DNS:
- Il server DNS che ospita i record di risorse del servizio esterno.
- La modalità con cui è configurato il proxy Envoy per utilizzare il DNS per la connessione gestione dei dispositivi.
Server Cloud DNS
Puoi creare una zona privata gestita Cloud DNS per ospitare i record DNS nel tuo progetto Google Cloud. Puoi anche utilizzare altre funzionalità di Cloud DNS, come le zone di inoltro, per recuperare i record da un server DNS on-premise.
Modalità DNS Envoy
La modalità DNS di Envoy, chiamata anche service discovery, specifica in che modo il proxy Envoy utilizza i record DNS per gestire le connessioni in uscita. Cloud Service Mesh configura Envoy per l'utilizzo della modalità DNS rigida. La modalità DNS rigida consente il bilanciamento del carico verso tutti gli endpoint risolti. Tiene conto dello stato del controllo di salute e scarica le connessioni agli endpoint non operativi o che non vengono più risolti utilizzando il DNS. Non puoi modificare questa modalità.
Per ulteriori informazioni sul discovery dei servizi, consulta la documentazione di Envoy.
Connettività e routing
Se stai indirizzando il traffico a un servizio privato, di seguito sono riportate le per la connettività di rete sottostante:
- Connettività ibrida tra la rete VPC e la rete on-premise o un cloud pubblico di terze parti si basa su Cloud VPN o Cloud Interconnect.
- Le regole e le route del firewall VPC sono configurate correttamente per stabilire la raggiungibilità bidirezionale da Envoy agli endpoint dei servizi privati e, se applicabile, al server DNS on-premise.
- Per un failover ad alta disponibilità a livello di regione, il routing dinamico globale deve essere abilitato. Per ulteriori dettagli, vedi modalità di routing dinamico.
Se indirizzi il traffico a un servizio esterno accessibile su internet, i requisiti sono i seguenti:
- Le istanze di macchina virtuale (VM) client nella rete VPC deve avere un indirizzo IP esterno o Cloud NAT.
- La route predefinita deve essere presente per il traffico in uscita su internet.
In entrambi i casi precedenti, il traffico utilizza il routing della rete VPC.
Sicurezza
I backend FQDN sono compatibili Funzionalità di sicurezza di Cloud Service Mesh e API. Nelle connessioni in uscita al servizio esterno, puoi configurare il FQDN nell'intestazione SNI utilizzando i criteri TLS client.
Limitazioni e considerazioni
- I NEG di internet di tipo
INTERNET_IP_PORT
non sono supportati con Cloud Service Mesh. - Con i backend FQDN è necessaria la versione 1.15.0 o successive di Envoy.
- Utilizza l'interfaccia a riga di comando Google Cloud o le API REST per configurare Cloud Service Mesh. La configurazione end-to-end tramite la console Google Cloud non è supportata.
- I backend FQDN sono supportati solo con Envoy. gRPC senza proxy non è supportato.
Quando utilizzi il tipo NEG
INTERNET_FQDN_PORT
con Cloud Service Mesh, i controlli di stato degli endpoint remoti vengono eseguiti utilizzando il meccanismo di controllo di stato distribuito di Envoy. Ogni volta che viene aggiunto un nuovo endpoint remoto, tutti i proxy Envoy avviano il controllo di integrità in modo indipendente.Analogamente, quando un nuovo proxy Envoy viene aggiunto al mesh, questo inizia a controllare per tutti gli endpoint remoti. Pertanto, a seconda del numero di proxy Envoy ed endpoint remoti deployment, il mesh di controllo di integrità risultante potrebbe causare e un carico eccessivo sugli endpoint remoti. Puoi scegliere di non configurare i controlli di integrità.
Lo stato del controllo di integrità non è visibile nella console Google Cloud per il nome di dominio completo di backend.
Il controllo di integrità che utilizza i protocolli UDP, SSL e gRPC non è supportato.
Le seguenti opzioni di controllo di integrità non sono supportate:
- Controllo di integrità HTTP/HTTP2/HTTPS
--proxy-header
--response
- controllo di integrità TCP
--proxy-header
--request
--response
- Controllo di integrità HTTP/HTTP2/HTTPS
Passaggi successivi
- Per configurare Cloud Service Mesh con NEG internet, consulta Configurare i backend esterni.
- Per informazioni sui NEG di connettività ibrida, consulta Cloud Service Mesh con NEG di connettività ibrida.