Questo documento introduce i concetti che devi comprendere per configurare un bilanciatore del carico di rete proxy esterno di Google Cloud.
Il bilanciatore del carico di rete proxy esterno è un bilanciatore del carico proxy inverso che distribuisce TCP del traffico proveniente da internet alle istanze di macchine virtuali (VM) nel tuo Rete VPC (Virtual Private Cloud) di Google Cloud. Quando utilizzi un bilanciatore del carico di rete proxy esterno, il traffico TCPo SSL in entrata viene terminato al bilanciatore del carico. Una nuova connessione inoltra quindi il traffico all'oggetto più vicino backend disponibileutilizzando TCP o SSL (opzione consigliata). Per altri casi d'uso, consulta la panoramica del bilanciatore del carico di rete proxy.
I bilanciatori del carico di rete proxy esterni consentono di utilizzare un singolo indirizzo IP per per tutti gli utenti nel mondo. Il bilanciatore del carico indirizza automaticamente il traffico ai backend più vicini all'utente.
In questo esempio, il traffico SSL proveniente dagli utenti delle città A e B viene terminato a livello di bilanciamento del carico e viene stabilita una connessione separata al backend selezionato.
Modalità di funzionamento
Puoi configurare un bilanciatore del carico di rete proxy esterno nelle seguenti modalità:
- Un bilanciatore del carico di rete proxy classico è implementato su Google Front End (GFE) distribuiti a livello globale. Questo bilanciatore del carico può essere configurato per gestire il traffico TCP o SSL utilizzando rispettivamente un proxy TCP o un proxy SSL di destinazione. Con il livello Premium, questo bilanciatore del carico può essere configurato come servizio di bilanciamento del carico globale. Con il livello Standard, questo bilanciatore del carico viene configurato come servizio di bilanciamento del carico a livello di regione. I bilanciatori del carico di rete proxy classici possono essere utilizzati anche per altri protocolli che utilizzano SSL, ad esempio WebSocket e IMAP su SSL.
- Un bilanciatore del carico di rete proxy esterno globale è implementato su GFE distribuiti a livello globale e supporta funzionalità di gestione avanzata del traffico. Questo bilanciatore del carico puoi essere configurato per gestire il traffico TCP o SSL utilizzando rispettivamente un proxy TCP target o un proxy SSL target. Questo bilanciatore del carico è configurato come servizio di bilanciamento del carico globale al livello Premium. È possibile utilizzare anche i bilanciatori del carico di rete proxy esterni globali altri protocolli che utilizzano SSL, come WebSocket e IMAP su SSL.
- Su Envoy open source è implementato un bilanciatore del carico di rete proxy esterno regionale lo stack software proxy. Può gestire solo il traffico TCP. Questo bilanciatore del carico è configurato come servizio di bilanciamento del carico a livello di regione che può utilizzare il livello Premium o Standard.
Identifica la modalità
Per determinare la modalità di un bilanciatore del carico, completa i seguenti passaggi.
Console
Nella console Google Cloud, vai alla pagina Bilanciamento del carico.
Nella scheda Bilanciatori del carico sono indicati il tipo di bilanciatore del carico, il protocollo regione. Se la regione è vuota, il bilanciatore del carico è globale.
La tabella seguente riassume come identificare la modalità del bilanciatore del carico.
Modalità del bilanciatore del carico Tipo di bilanciatore del carico Tipo di accesso Regione Bilanciatore del carico di rete proxy classico Rete (versione classica del proxy) Esterno Bilanciatore del carico di rete proxy esterno globale Rete (proxy) Esterno Bilanciatore del carico di rete proxy esterno regionale Rete (proxy) Esterno Specifica una regione
gcloud
Utilizza il comando
gcloud compute forwarding-rules describe
:gcloud compute forwarding-rules describe FORWARDING_RULE_NAME
Nell'output comando, controlla lo schema di bilanciamento del carico, la regione e la rete livello. La tabella seguente riassume come identificare la modalità del bilanciatore del carico.
Modalità del bilanciatore del carico Schema di bilanciamento del carico Regola di forwarding Livello di rete Bilanciatore del carico di rete proxy classico EXTERNAL Globale Standard o Premium Bilanciatore del carico di rete proxy esterno globale EXTERNAL_MANAGED Globale Premium Bilanciatore del carico di rete proxy esterno regionale EXTERNAL_MANAGED Regionale Standard o Premium
Architettura
I seguenti diagrammi mostrano i componenti dei bilanciatori del carico di rete proxy esterni.
Globale
Questo diagramma mostra i componenti di un deployment del bilanciatore del carico di rete proxy esterno globale. Questa architettura si applica sia al bilanciatore del carico di rete proxy esterno globale che il bilanciatore del carico di rete proxy classico nel livello Premium.
Regionale
Questo diagramma mostra i componenti di un bilanciatore del carico di rete proxy esterno regionale e deployment continuo.
Di seguito sono riportati i componenti dei bilanciatori del carico di rete proxy esterni.
Subnet solo proxy
Nota: le subnet solo proxy sono necessarie solo per i bilanciatori del carico di rete proxy esterni regionali.La subnet solo proxy fornisce un insieme di indirizzi IP
che Google utilizza per eseguire proxy Envoy per tuo conto. Devi crearne uno
una subnet solo proxy in ogni regione di una rete VPC in cui utilizzi
bilanciatori del carico. Il flag --purpose
per questa subnet solo proxy è
impostato su REGIONAL_MANAGED_PROXY
. Tutto il carico basato su Envoy a livello di regione
bilanciatori del carico
la regione e la rete VPC condividono un pool di proxy Envoy
la stessa subnet solo proxy.
Le VM di backend o gli endpoint di tutti i bilanciatori del carico in una regione e in una rete VPC ricevono connessioni dalla subnet solo proxy.
Punti da ricordare:
- Le subnet solo proxy vengono utilizzate solo per i proxy Envoy, non per i tuoi backend.
- L'indirizzo IP del bilanciatore del carico non si trova nella subnet solo proxy. L'indirizzo IP del bilanciatore del carico è definito dalla sua una regola di forwarding gestito esterna.
Regole di inoltro e indirizzi IP
Le regole di forwarding instradano il traffico per indirizzo IP, porta e protocollo a una configurazione di bilanciamento del carico che è composto da un proxy di destinazione e da un servizio di backend.
Specifica dell'indirizzo IP. Ogni regola di inoltro fa riferimento a un singolo indirizzo IP che puoi utilizzare nei record DNS per la tua applicazione. Puoi scegliere di prenotare un indirizzo IP statico da utilizzare o lasciare che sia Cloud Load Balancing ad assegnarne uno. Ti consigliamo di prenotare un indirizzo IP statico. In caso contrario, devi aggiornare il record DNS con l'IP temporaneo assegnato indirizzo IP ogni volta che elimini una regola di forwarding e ne crei una nuova.
Specifica della porta. Le regole di inoltro esterno utilizzate nella definizione di questo bilanciatore del carico possono fare riferimento a esattamente una porta compresa tra 1 e 65535. Se vuoi supporta più porte consecutive, devi configurare le regole del caso. È possibile configurare più regole di forwarding con lo stesso IP virtuale e porte diverse; puoi quindi eseguire il proxy di più applicazioni separate porte personalizzate allo stesso indirizzo IP virtuale del proxy TCP. Per maggiori dettagli, consulta le specifiche delle porte per le regole di inoltro.
Per supportare più porte consecutive, devi configurare più regole di inoltro. È possibile configurare più regole di forwarding con lo stesso IP virtuale e porte diverse. Di conseguenza, puoi eseguire il proxy di più applicazioni con porte personalizzate separate allo stesso indirizzo IP virtuale del proxy TCP.
La tabella seguente mostra i requisiti delle regole di inoltro per i bilanciatori del carico di rete proxy esterni.
Modalità bilanciatore del carico | Livello di servizio di rete | Regola di inoltro, indirizzo IP e schema di bilanciamento del carico | Routing da internet al frontend del bilanciatore del carico |
---|---|---|---|
Bilanciatore del carico di rete proxy classico | Livello Premium | Regola di forwarding external globale Schema di bilanciamento del carico: |
Richieste indirizzate ai GFE più vicini ai su internet. |
Livello Standard | Regola di inoltro esterno regionale Indirizzo IP esterno regionale Schema di bilanciamento del carico: |
Richieste instradate a un GFE nella regione del bilanciatore del carico. | |
Bilanciatore del carico di rete proxy esterno globale | Livello Premium | Globale regola di forwarding esterno Schema di bilanciamento del carico: |
Le richieste instradate ai GFE più vicini al client su internet. |
Bilanciatore del carico di rete proxy esterno regionale | Livello Premiume Standard | Regola di inoltro esterno regionale Indirizzo IP esterno regionale Schema di bilanciamento del carico: |
Richieste indirizzate ai proxy Envoy nella stessa regione del bilanciatore del carico. |
Regole di forwarding e reti VPC
Questa sezione descrive come vengono le regole di forwarding utilizzate dai bilanciatori del carico delle applicazioni esterni associate alle reti VPC.
Modalità bilanciatore del carico | Associazione della rete VPC |
---|---|
Bilanciatore del carico di rete proxy esterno globale Bilanciatore del carico di rete proxy classico |
Nessuna rete VPC associata. La regola di inoltro utilizza sempre un indirizzo IP che si trova al di fuori della rete VPC. Pertanto, la regola di inoltro non ha una rete VPC associata. |
Bilanciatore del carico di rete proxy esterno regionale | La rete VPC della regola di forwarding è in cui è stata creata la subnet solo proxy. Puoi specificare la rete quando crei la regola di inoltro. |
Proxy di destinazione
I bilanciatori del carico di rete proxy esterni terminano le connessioni dal client e creano nuove connessioni ai backend. Il target proxy instrada queste nuove connessioni a il servizio di backend.
A seconda del tipo di traffico che la tua applicazione deve gestire, puoi configura un bilanciatore del carico di rete proxy esterno con un proxy TCP di destinazione o SSL di destinazione proxy.
- Proxy TCP di destinazione: configura il bilanciatore del carico con un proxy TCP di destinazione se prevedi traffico TCP.
- Proxy SSL di destinazione: configura il bilanciatore del carico con un proxy SSL di destinazione se prevedi traffico client criptato. Questo tipo di bilanciatore del carico solo per il traffico non HTTP(S). Per il traffico HTTP(S), ti consigliamo di utilizzare un bilanciatore del carico delle applicazioni esterno.
Per impostazione predefinita, il proxy di destinazione non conserva le informazioni sull'indirizzo IP e sulla porta del client originale. Puoi conservare queste informazioni attivando il protocollo PROXY sul proxy di destinazione.
La tabella seguente mostra i requisiti del proxy di destinazione per i bilanciatori del carico di rete proxy esterni.
Modalità del bilanciatore del carico | Livello di servizio di rete | Proxy di destinazione |
---|---|---|
Bilanciatore del carico di rete proxy classico | Livello Premium | targetTcpProxies o targetSslProxies |
Livello Standard | targetTcpProxies o targetSslProxies |
|
Bilanciatore del carico di rete proxy esterno globale | Livello Premium | targetTcpProxies o targetSslProxies |
Bilanciatore del carico di rete proxy esterno regionale | Livello Premium e Standard | regionTargetTcpProxies |
Certificati SSL
I certificati SSL sono obbligatori solo se esegui il deployment di un bilanciatore del carico di rete del proxy esterno globale e di un bilanciatore del carico di rete del proxy classico con un proxy SSL di destinazione.
I bilanciatori del carico di rete proxy esterni che utilizzano proxy SSL di destinazione richiedono chiavi private e certificati SSL come parte della configurazione del bilanciatore del carico:
Google Cloud fornisce due metodi di configurazione per l'assegnazione chiavi e certificati SSL per scegliere come target i proxy SSL: SSL di Compute Engine certificati e Gestore certificati. Per una descrizione di ciascuna configurazione, consulta Metodi di configurazione dei certificati nella panoramica dei certificati SSL.
Google Cloud offre due tipi di certificati: autogestito e Gestita da Google. Per una descrizione di ogni tipo, vedi Certificato standard nel protocollo Panoramica dei certificati.
Servizi di backend
I servizi di backend indirizzano il traffico in ingresso a uno o più backend collegati. Ogni backend è composto da un gruppo di istanze o da un gruppo di endpoint di rete e da informazioni sulla capacità di distribuzione del backend. La capacità di gestione del backend può essere basata sulla CPU o sulle richieste al secondo (RPS).
Ogni bilanciatore del carico ha una singola risorsa di servizio di backend che specifica il controllo di integrità da eseguire per i backend disponibili.
Le modifiche apportate al servizio di backend non sono istantanee. Può la propagazione delle modifiche ai GFE richiede diversi minuti. Per garantire interruzioni minime ai tuoi utenti, puoi attivare la connessione lo svuotamento dei servizi di backend. Queste interruzioni possono verificarsi quando viene interrotto, rimosso manualmente o rimosso da un gestore della scalabilità automatica. Per scoprire di più sull'utilizzo dello svuotamento della connessione per ridurre al minimo le interruzioni del servizio, consulta Attivare lo svuotamento della connessione.
Per ulteriori informazioni sulla risorsa del servizio di backend, consulta Panoramica dei servizi di backend.
La tabella seguente specifica i diversi backend supportati nel servizio di backend dei bilanciatori del carico di rete proxy esterni.
Modalità del bilanciatore del carico | Backend supportati in un servizio di backend | ||||||
---|---|---|---|---|---|---|---|
Gruppi di istanze | NEG a livello di zona | NEG internet | NEG serverless | NEG ibridi | NEG Private Service Connect | GKE | |
Bilanciatore del carico di rete proxy classico | Utilizzare NEG autonomi a livello di zona | ||||||
Bilanciatore del carico di rete proxy esterno globale | * | Endpoint di tipoGCE_VM_IP_PORT * |
|||||
Bilanciatore del carico di rete proxy esterno regionale | Endpoint di tipo GCE_VM_IP_PORT |
Solo NEG a livello di regione | Aggiungi un NEG Private Service Connect |
* Supporto dei bilanciatori del carico di rete proxy esterni globali
Gruppi di istanze IPv4 e IPv6 (doppio stack) e backend NEG a livello di zona con GCE_VM_IP_PORT
endpoint.
Backend e reti VPC
Le restrizioni sulla posizione dei backend dipendono dal tipo con il bilanciatore del carico di rete passthrough esterno regionale.
Per il bilanciatore del carico di rete proxy esterno globale e il bilanciatore del carico di rete proxy classico, tutte le istanze di backend dei backend del gruppo di istanze e tutti gli endpoint di backend dei backend del gruppo di istanze devono trovarsi nello stesso progetto. Tuttavia, un backend del gruppo di istanze o un gruppo di negazioni può utilizzare una rete VPC diversa in quel progetto. Le diverse reti VPC non devono essere connesse utilizzando il peering di rete VPC perché le istanze GFE comunicano direttamente con i backend nelle rispettive reti VPC.
Per il bilanciatore del carico di rete proxy esterno regionale, dipende dal tipo di di un backend cloud.
Ad esempio gruppi di istanze, NEG a livello di zona e NEG di connettività ibrida, tutti i backend deve trovarsi nello stesso progetto e nella stessa regione del servizio di backend. Tuttavia, un bilanciatore del carico può fare riferimento a un backend che utilizza una rete VPC diversa nello stesso progetto del servizio di backend (questa funzionalità è in anteprima). La connettività tra la rete VPC del bilanciatore del carico e la rete VPC di backend può essere configurata utilizzando il peering di rete VPC, i tunnel VPN Cloud, i collegamenti VLAN Cloud Interconnect o un framework Network Connectivity Center.
Definizione della rete di backend
- Per i NEG zonali e i NEG ibridi, devi specificare esplicitamente la rete VPC quando crei il NEG.
- Per i gruppi di istanze gestite, la rete VPC è definita il modello di istanza.
- Per i gruppi di istanze non gestiti, la rete VPC del gruppo di istanze è impostata in modo da corrispondere alla rete VPC dell'interfaccia
nic0
per la prima VM aggiunta al gruppo di istanze.
Requisiti di rete di backend
La rete del tuo backend deve soddisfare uno dei seguenti requisiti di rete:
La rete VPC del backend deve corrispondere esattamente alla rete rete VPC della regola di forwarding.
La rete VPC del backend deve essere connessa alla rete VPC della regola di forwarding peering di rete VPC. Devi configurare gli scambi di route subnet consente la comunicazione tra la subnet solo proxy nella regola di forwarding Rete VPC e subnet utilizzate dalle istanze di backend o endpoint.
- Sia la rete VPC del backend che la rete VPC della regola di forwarding, La rete VPC deve essere VPC spoke sullo stesso Network Connectivity Center . I filtri di importazione ed esportazione devono consentire la comunicazione solo tra proxy nella rete VPC della regola di forwarding e nelle subnet utilizzate dalle istanze di backend o dagli endpoint.
- Per tutti gli altri tipi di backend, tutti i backend devono trovarsi nella stessa rete VPC e nella stessa regione.
Backend e interfacce di rete
Se utilizzi backend di gruppi di istanze, i pacchetti vengono sempre inviati a nic0
. Se
Se vuoi inviare pacchetti a NIC diverse, usa i backend NEG.
Se utilizzi backend NEG a livello di zona, i pacchetti vengono inviati a qualsiasi interfaccia di rete rappresentato dall'endpoint nel NEG. Gli endpoint NEG devono trovarsi nella stessa rete VPC della rete VPC definita esplicitamente del NEG.
Protocollo per la comunicazione con i backend
Quando configuri un servizio di backend per un bilanciatore del carico di rete proxy esterno, imposti utilizzato dal servizio di backend per comunicare con i backend.
- Per i bilanciatori del carico di rete proxy classici, puoi scegliere TCP o SSL.
- Per i bilanciatori del carico di rete proxy esterni globali, puoi scegliere TCP o SSL.
- Per i bilanciatori del carico di rete proxy esterni regionali, puoi utilizzare TCP.
Il bilanciatore del carico utilizza solo il protocollo specificato e non tenta di negoziare una connessione con l'altro protocollo.
Regole firewall
Le seguenti regole firewall sono obbligatorie:
Per i bilanciatori del carico di rete proxy classici, una regola firewall
allow
in entrata per consentire al traffico proveniente dai GFE di raggiungere i backend.Per i bilanciatori del carico di rete proxy esterni globali, è necessaria una regola firewall in entrata
allow
per consentire il traffico proveniente dai GFE per raggiungere i backend.
Per i bilanciatori del carico di rete proxy esterni regionali, una regola firewall di autorizzazione in entrata per consentire al traffico proveniente dalla subnet solo proxy di raggiungere i tuoi backend.
Una regola firewall
allow
in entrata per consentire al traffico proveniente dagli intervalli di probe del controllo di integrità di raggiungere i tuoi backend. Per saperne di più sui probe del controllo di integrità e perché è necessario consentire il traffico proveniente da questi ultimi, consulta Esegui test per intervalli IP e regole firewall.
Le regole firewall vengono implementate a livello di istanza VM, non a livello di proxy GFE livello. Non puoi utilizzare le regole firewall per impedire il traffico da raggiungendo il bilanciatore del carico.
Le porte per queste regole firewall devono essere configurate come segue:
- Consenti il traffico verso la porta di destinazione per il controllo di integrità di ciascun servizio di backend.
- Per i backend di gruppi di istanze: determina le porte che devono essere configurate il mapping tra named port e la porta numeri associati a quella porta denominata su ciascun gruppo di istanze. Numeri di porta può variare tra i gruppi di istanze assegnati allo stesso servizio di backend.
- Per
GCE_VM_IP_PORT NEG
backend NEG a livello di zona: consenti il traffico ai numeri di porta degli endpoint.
La tabella seguente riassume gli intervalli di indirizzi IP di origine richiesti per le regole firewall.
Modalità bilanciatore del carico | Intervalli di origine del controllo di integrità | Intervalli di origine della richiesta |
---|---|---|
Bilanciatore del carico di rete proxy esterno globale |
Per il traffico IPv6 verso i backend:
|
La sorgente del traffico GFE dipende dal tipo di backend:
|
Bilanciatore del carico di rete proxy classico |
|
Questi intervalli si applicano ai probe del controllo di integrità e alle richieste dal GFE. |
Bilanciatore del carico di rete proxy esterno regionale *, † |
Per il traffico IPv6 verso i backend:
|
Questi intervalli si applicano ai probe dei controlli di integrità. |
* Non è necessario inserire nella lista consentita gli intervalli di probe del controllo di integrità di Google per il modello ibrido NEG. Tuttavia, se utilizzi una combinazione di NEG ibridi e a livello di zona un unico servizio di backend, devi inserire nella lista consentita intervalli di probe del controllo di integrità per i NEG a livello di zona.
† Per i NEG internet a livello di regione, i controlli di integrità sono facoltativi. Traffico proveniente dal caricamento I bilanciatori che utilizzano NEG internet regionali provengono dalla subnet solo proxy e poi Tradotto da NAT (utilizzando Cloud NAT) in manuale o allocato automaticamente indirizzi IP NAT. Questo traffico include sia i probe del controllo di integrità sia le richieste degli utenti dal bilanciatore del carico ai backend. Per maggiori dettagli, consulta NEG regionali: utilizzare Cloud NAT per l'egress.
Indirizzi IP di origine
L'indirizzo IP di origine dei pacchetti, come visto dai backend, non è Indirizzo IP esterno Google Cloud del bilanciatore del carico. In altre parole, esistono due connessioni TCP.
Per i bilanciatori del carico di rete proxy classici e i bilanciatori del carico di rete proxy esterni globali:Connessione 1, dal client originale al bilanciatore del carico (GFE):
- Indirizzo IP di origine: il client originale (o l'indirizzo IP esterno se è protetto da NAT o un proxy di inoltro).
- Indirizzo IP di destinazione: l'indirizzo IP del bilanciatore del carico.
Connessione 2, dal bilanciatore del carico (GFE) all'endpoint o alla VM di backend:
Indirizzo IP di origine: un indirizzo IP in uno degli intervalli specificati in Regole firewall.
Indirizzo IP di destinazione:l'indirizzo IP interno della VM di backend o container nella rete VPC.
Connessione 1, dal client originale al bilanciatore del carico (subnet solo proxy):
- Indirizzo IP di origine: il client originale (o indirizzo IP esterno se il client si trova dietro NAT o un proxy in avanti).
- Indirizzo IP di destinazione: l'indirizzo IP del bilanciatore del carico.
Connessione 2, dal bilanciatore del carico (subnet solo proxy) alla VM backend oppure endpoint:
Indirizzo IP di origine: un indirizzo IP nella subnet solo proxy condiviso tra tutti i bilanciatori del carico basati su Envoy di cui è stato eseguito il deployment nella stessa regione e nella stessa rete del bilanciatore del carico.
Indirizzo IP di destinazione: l'indirizzo IP interno della VM o del contenitore di backend nella rete VPC.
Porte aperte
I bilanciatori del carico di rete proxy esterni sono bilanciatori del carico di reverse proxy. Il carico termina le connessioni in entrata e poi ne apre di nuove il bilanciatore del carico ai backend. Questi bilanciatori del carico vengono implementati utilizzando proxy Google Front End (GFE) in tutto il mondo.
I GFE hanno diverse porte aperte per supportare altri servizi Google che funzionano sulla stessa architettura. Quando esegui una scansione delle porte, potresti vedere altre porte aperte per altri servizi Google in esecuzione su GFEs.
Eseguire una scansione delle porte sull'indirizzo IP di un bilanciatore del carico basato su GFE non è utile dal punto di vista del controllo per i seguenti motivi:
Una scansione delle porte (ad esempio, con
nmap
) in genere non prevede alcun pacchetto di risposta o un pacchetto TCP RST durante l'esecuzione del probing TCP SYN. I GFE invieranno SYN-ACK pacchetti in risposta ai probe SYN solo per le porte su cui hai configurato una regola di forwarding. I GFE inviano pacchetti ai tuoi backend solo in risposta a pacchetti inviati all'indirizzo IP del bilanciatore del carico e alla porta di destinazione configurato nella rispettiva regola di forwarding. I pacchetti inviati a un indirizzo IP o a una porta diversa non vengono inviati ai tuoi backend.I GFE implementano funzionalità di sicurezza come Google Cloud Armor. Con Standard Google Cloud Armor, GFE forniscono protezione sempre attiva dagli attacchi DDoS volumetrici e basati su protocollo e inondazioni SYN. Questa protezione è disponibile anche se non hai configurato esplicitamente Google Cloud Armor. Ti verranno addebitati dei costi solo se configuri criteri di sicurezza o se ti registri a Managed Protection Plus.
I pacchetti inviati all'indirizzo IP del bilanciatore del carico possono essere gestiti da qualsiasi GFE nel parco di Google. Tuttavia, la scansione di un indirizzo IP del bilanciatore del carico e di una combinazione di porta di destinazione interroga solo un singolo GFE per connessione TCP. L'indirizzo IP del bilanciatore del carico non è assegnato a un singolo dispositivo o sistema. Analizzando quindi l'indirizzo IP di un carico basato su GFE non esegue la scansione di tutti i GFE nel parco risorse Google.
Tenendo presente questo, di seguito sono riportati alcuni modi più efficaci per eseguire la verifica della sicurezza delle istanze di backend:
Un revisore della sicurezza deve ispezionare la configurazione delle regole di inoltro per la configurazione del bilanciatore del carico. Le regole di inoltro definiscono la porta di destinazione per la quale il bilanciatore del carico accetta i pacchetti e li inoltra ai backend. Per i bilanciatori del carico basati su GFE, ogni forwarding esterno può fare riferimento a un solo TCP di destinazione predefinita.
Un revisore della sicurezza deve esaminare la configurazione della regola firewall applicabile alle VM di backend. Le regole del firewall che imposti bloccano il traffico dalle GFE alle VM di backend, ma non bloccano il traffico in entrata verso le GFE. Per il meglio consulta la sezione sulle regole firewall.
Architettura VPC condivisa
Supporto dei bilanciatori del carico di rete proxy esterni e dei bilanciatori del carico di rete proxy classici di deployment che usano reti VPC condiviso. Un VPC condiviso consente di mantenere una chiara separazione delle responsabilità tra amministratori di rete e sviluppatori di servizi. I team di sviluppo possono concentrarsi sulla creazione di servizi nei progetti di servizi, mentre i team di infrastruttura di rete possono eseguire il provisioning e amministrare il bilanciamento del carico. In caso contrario hai già familiarità con il VPC condiviso, Documentazione di panoramica sul VPC condiviso.
Indirizzo IP | Regola di forwarding | Proxy di destinazione | Componenti di backend |
---|---|---|---|
Un indirizzo IP esterno deve essere definito nello stesso progetto del bilanciatore del carico. | La regola di forwarding esterno deve essere definita nello stesso progetto del di backend (il progetto di servizio). | Il proxy TCP o SSL di destinazione deve essere definito nello stesso progetto delle istanze di backend. |
Per i bilanciatori del carico di rete proxy classici, viene eseguito il servizio di backend deve essere definito nello stesso progetto del backend di Compute Engine. Queste istanze devono trovarsi in gruppi di istanze collegati al servizio di backend come backend. Controlli di integrità associati ai servizi di backend deve essere definito nello stesso progetto del servizio di backend. Per i bilanciatori del carico di rete proxy esterni regionali, le VM di backend si trovano in genere in un progetto di servizio. È necessario definire un servizio di backend regionale e un controllo di integrità nel progetto di servizio. |
Distribuzione del traffico
Quando aggiungi un gruppo di istanze di backend o un NEG a un servizio di backend, specifichi una modalità di bilanciamento del carico che definisce un metodo per misurare il carico del backend e la capacità target.
Per i bilanciatori del carico di rete proxy esterni, la modalità di bilanciamento può essere CONNECTION
o UTILIZATION
:
- Se la modalità di bilanciamento del carico è
CONNECTION
, il carico viene distribuito in base a il numero totale di connessioni che il backend può gestire. - Se la modalità di bilanciamento del carico è
UTILIZATION
, il carico viene distribuito in base all'utilizzo delle istanze in un gruppo di istanze. Questo bilanciamento si applica solo ai backend di gruppi di istanze VM.
La distribuzione del traffico tra i backend è determinata dalla modalità di bilanciamento del bilanciatore del carico.
Bilanciatore del carico di rete proxy classico
Per il bilanciatore del carico di rete proxy classico, viene utilizzata la modalità di bilanciamento per selezionare più favorevole (gruppo di istanze o NEG). Il traffico viene poi distribuito in modo metodico tra le istanze o gli endpoint all'interno del backend.
Come vengono distribuite le connessioni
Un bilanciatore del carico di rete proxy classico può essere configurato come servizio di bilanciamento del carico globale con il livello Premium e come servizio regionale nel livello Standard.
La modalità di bilanciamento e la scelta della destinazione determinano la pienezza del backend dall'
di ogni NEG GCE_VM_IP_PORT
, gruppo di istanze a livello di zona o zona
un gruppo di istanze a livello di regione. Il traffico viene quindi distribuito all'interno di una zona utilizzando
e l'hashing coerente.
Per il livello Premium:
Puoi avere un solo servizio di backend, che può avere backend in più regioni. Per il bilanciamento del carico globale, esegui il deployment in più regioni e il bilanciatore del carico indirizza automaticamente verso la regione più vicina a quest'ultimo. Se una regione ha raggiunto la capacità massima, il bilanciatore del carico indirizza automaticamente le nuove connessioni a un'altra regione con capacità massima disponibile. Le connessioni degli utenti esistenti rimangono nella regione corrente.
Google pubblicizza l'indirizzo IP del bilanciatore del carico da tutti i punti di Google, in tutto il mondo. Ogni indirizzo IP del bilanciatore del carico è anycast globale.
Se configuri un servizio di backend con backend in più regioni, i front-end di Google (GFEs) tentano di indirizzare le richieste a gruppi di istanze di backend o NEG sani nella regione più vicina all'utente.
Per il livello Standard:
Google pubblicizza l'indirizzo IP del bilanciatore del carico dai punti di presenza associati alla regione della regola di inoltro. Il bilanciatore del carico utilizza un indirizzo IP esterno regionale.
Puoi configurare solo i backend nella stessa regione della regola di forwarding. Il bilanciatore del carico indirizza le richieste solo ai backend integri in quel regione.
Bilanciatore del carico di rete proxy esterno globale
Per il bilanciatore del carico di rete proxy esterno globale, la distribuzione del traffico si basa sulla modalità di bilanciamento del carico e sul criterio di bilanciamento del carico per le località.
La modalità di bilanciamento determina la ponderazione e la frazione di traffico da
inviati a ciascun gruppo (gruppo di istanze o NEG). Criterio per le località di bilanciamento del carico
(LocalityLbPolicy
) determina il bilanciamento del carico dei backend all'interno del gruppo.
Quando un servizio di backend riceve traffico, indirizza innanzitutto il traffico a un backend (gruppo di istanze o NEG) in base alla modalità di bilanciamento del backend. Dopo aver selezionato un backend, il traffico viene distribuito tra le istanze o gli endpoint del gruppo di backend in base al criterio di località del bilanciamento del carico.
Per ulteriori informazioni, consulta le seguenti risorse:
- Modalità di bilanciamento.
- Criterio della località di bilanciamento del carico (API del servizio di backend globale documentazione).
Come vengono distribuite le connessioni
Un bilanciatore del carico di rete proxy esterno globale può essere configurato come bilanciamento del carico globale servizio con il livello Premium
La modalità di bilanciamento e la scelta del target determinano la completezza del backend dal punto di vista di ogni NEG GCE_VM_IP_PORT
zonale o gruppo di istanze zonali.
Il traffico viene poi distribuito all'interno di una zona utilizzando l'hashing coerente.
Puoi avere un solo servizio di backend, che può avere backend in più regioni. Per il bilanciamento del carico globale, esegui il deployment in più regioni e il bilanciatore del carico indirizza automaticamente verso la regione più vicina a quest'ultimo. Se una regione ha raggiunto la capacità massima, il bilanciatore del carico indirizza automaticamente le nuove connessioni a un'altra regione con capacità massima disponibile. Le connessioni degli utenti esistenti rimangono nella regione corrente.
Google pubblicizza l'indirizzo IP del bilanciatore del carico da tutti i punti di Google, in tutto il mondo. Ogni indirizzo IP del bilanciatore del carico è anycast globale.
Se configuri un servizio di backend con backend in più regioni, i front-end di Google (GFEs) tentano di indirizzare le richieste a gruppi di istanze di backend o NEG integri nella regione più vicina all'utente.
Bilanciatore del carico di rete proxy esterno regionale
Per i bilanciatori del carico di rete proxy esterni regionali, la distribuzione del traffico si basa sulla modalità di bilanciamento del carico e sul criterio di località del bilanciamento del carico.
La modalità di bilanciamento determina la ponderazione e la frazione di traffico che devono essere
inviati a ciascun backend (gruppo di istanze o NEG). Criterio per le località di bilanciamento del carico
(LocalityLbPolicy
) determina il bilanciamento del carico dei backend all'interno del gruppo.
Quando un servizio di backend riceve traffico, indirizza innanzitutto il traffico a un backend (gruppo di istanze o NEG) in base alla modalità di bilanciamento. Dopo un backend è selezionato, il traffico viene quindi distribuito tra istanze o endpoint in del gruppo di backend in base al criterio della località di bilanciamento del carico.
Per ulteriori informazioni, consulta le seguenti risorse:
- Modalità di bilanciamento
- Criterio della località di bilanciamento del carico (API del servizio di backend regionale documentazione)
Affinità sessione
Affinità sessione invia tutte le richieste dallo stesso client allo stesso backend se il backend è in stato integro e ha capacità.
I bilanciatori del carico di rete proxy esterni offrono i seguenti tipi di affinità sessione:
NONE
. L'affinità sessione non è impostata per il bilanciatore del carico.- Affinità IP client, che inoltra tutte le richieste dallo stesso indirizzo IP client allo stesso backend.
Failover
Il failover per i bilanciatori del carico di rete proxy esterni funziona nel seguente modo:
- Se un backend non è integro, il traffico viene reindirizzato automaticamente a uno stato integro all'interno della stessa regione.
- Se tutti i backend all'interno di una regione non sono integri, il traffico viene distribuito backend in stato integro in altre regioni (solo modalità globale e classica).
- Se tutti i backend sono in stato non integro, il bilanciatore del carico elimina il traffico.
Bilanciamento del carico per le applicazioni GKE
Se crei applicazioni in Google Kubernetes Engine, puoi utilizzare la versione NEG per bilanciare il carico del traffico direttamente ai container. Con i NEG autonomi, responsabili della creazione Oggetto Service che crea il NEG, e poi associare il NEG al servizio di backend in modo che il bilanciatore del carico possono connettersi ai pod.
Per la documentazione correlata, consulta Bilanciamento del carico nativo del container tramite NEG.
Limitazioni
- Non puoi creare un bilanciatore del carico di rete del proxy esterno regionale nel livello Premium utilizzando la console Google Cloud. Inoltre, solo le regioni che supportano il livello Standard sono disponibili per questi bilanciatori del carico nella console Google Cloud. Utilizza invece la CLI gcloud o l'API.
Le seguenti limitazioni si applicano solo ai bilanciatori del carico di rete proxy classici e Network Load Balancer proxy esterno globale di cui è stato eseguito il deployment con un proxy di destinazione SSL:
I bilanciatori del carico di rete proxy classici e i bilanciatori del carico di rete proxy esterno globale non supportano l'autenticazione client basata su certificato, nota anche come autenticazione TLS mutuale.
Supporto dei bilanciatori del carico di rete proxy classici e dei bilanciatori del carico di rete proxy esterni globali solo caratteri minuscoli nei domini in un attributo nome comune (
CN
) o in un dell'attributo nome alternativo del soggetto (SAN
) del certificato. I certificati con caratteri maiuscoli nei domini vengono restituiti solo se impostati come certificato principale nel proxy di destinazione.
Passaggi successivi
- Configura un bilanciatore del carico di rete proxy classico (proxy TCP).
- Configura un bilanciatore del carico di rete proxy classico (proxy SSL).
- Configura un bilanciatore del carico di rete proxy esterno globale (proxy TCP).
- Configura un bilanciatore del carico di rete proxy esterno globale (proxy SSL).
- Configura un bilanciatore del carico di rete proxy esterno regionale (proxy TCP).
- Logging e monitoraggio del bilanciatore del carico di rete proxy.