Un bilanciatore del carico distribuisce il traffico degli utenti su più istanze delle tue applicazioni. Distribuendo il carico, il bilanciamento del carico riduce il rischio che le applicazioni presentino problemi di prestazioni. Cloud Load Balancing di Google è basato su tecnologie affidabili e ad alte prestazioni come Maglev, Andromeda, Google Front Ends ed Envoy, le stesse tecnologie alla base dei prodotti Google.
Cloud Load Balancing offre un portafoglio completo di bilanciatori del carico di rete e delle applicazioni. Utilizza i nostri bilanciatori del carico proxy globali per distribuire milioni di richieste al secondo tra i backend in più regioni con la nostra flotta Google Front End (GFE) in oltre 80 località distinte in tutto il mondo, il tutto con un unico indirizzo IP anycast. Implementa un controllo giurisdizionale rigoroso con i nostri bilanciatori del carico proxy regionali, mantenendo i backend e i proxy in una regione a tua scelta senza preoccuparti dell'offload TLS/SSL. Utilizza i nostri bilanciatori del carico passthrough per instradare rapidamente più protocolli ai backend con le prestazioni elevate del ritorno diretto del server (DSR).
Funzionalità chiave di Cloud Load Balancing
Cloud Load Balancing offre le seguenti funzionalità del bilanciatore del carico:
Un singolo indirizzo IP anycast. Con Cloud Load Balancing, un singolo indirizzo IP anycast è il frontend per tutte le tue istanze di backend nelle regioni di tutto il mondo. Fornisce il bilanciamento del carico tra diverse regioni, compreso il failover automatico multiregione, che trasferisce il traffico ai backend di failover se i backend principali sono in stato non integro. Cloud Load Balancing reagisce istantaneamente alle variazioni di utenti, traffico, rete, stato dei backend e altre condizioni correlate.
Scalabilità automatica senza interruzioni. Cloud Load Balancing è in grado di scalare con l'aumentare degli utenti e del traffico e gestisce in modo semplice picchi istantanei imprevisti ed estremamente elevati deviando il traffico verso altre aree geografiche nel mondo che sono in grado di supportarlo. La scalabilità automatica non richiede operazioni preliminari ed è possibile aumentare la capacità da zero al massimo in pochi secondi.
Bilanciamento del carico software-defined. Cloud Load Balancing è un servizio completamente gestito, distribuito e software-defined, progettato per amministrare tutto il tuo traffico. Non si tratta di una soluzione basata su istanze o dispositivi, quindi non si è vincolati a un'infrastruttura di bilanciamento del carico fisica e non si è costretti a gestire le problematiche correlate a disponibilità elevata, scalabilità e gestione tipiche delle soluzioni di bilanciamento del carico basate sulle istanze.
Bilanciamento del carico di livello 4 e livello 7. Utilizza il bilanciamento del carico basato sul livello 4 per indirizzare il traffico in base ai dati dei protocolli di rete e di trasporto, ad esempio TCP, UDP, ESP, GRE, ICMP e ICMPv6 . Utilizza il bilanciamento del carico basato sul livello 7 per aggiungere decisioni di routing delle richieste in base ad attributi come l'intestazione HTTP e l'identificatore di risorse uniforme.
Bilanciamento del carico esterno e interno. Definisce se il bilanciatore del carico può essere utilizzato per l'accesso esterno o interno. Puoi utilizzare un bilanciatore del carico esterno quando i client devono raggiungere la tua applicazione da internet. Puoi utilizzare un bilanciatore del carico interno quando i client si trovano all'interno di Google Cloud. Per saperne di più, consulta Bilanciamento del carico esterno e interno.
Bilanciamento del carico globale e regionale. Definisce l'ambito del bilanciatore del carico. Un bilanciatore del carico globale supporta i backend in più regioni, mentre un bilanciatore del carico regionale supporta i backend in una sola regione. Anche se l'indirizzo IP di un bilanciatore del carico regionale si trova in una regione, un bilanciatore del carico regionale è accessibile a livello globale. Puoi distribuire i backend in una o più regioni per terminare le connessioni in prossimità degli utenti e soddisfare i requisiti di alta disponibilità. Per saperne di più, consulta Bilanciamento del carico globale e a livello di regione.
Routing del traffico nei livelli Premium e Standard. I servizi di bilanciamento del carico in Google Cloud sono disponibili in diverse versioni a seconda del livello di rete scelto, ovvero Premium o Standard, con il primo più costoso del secondo. Il livello Premium sfrutta il backbone globale di alta qualità di Google, mentre il livello Standard utilizza la rete internet pubblica per instradare il traffico nella rete. Il livello di rete che scegli dipende dal fatto che tu dia la priorità al costo o alle prestazioni del tuo carico di lavoro aziendale. Alcuni servizi di bilanciamento del carico sono disponibili solo nel livello Premium e non nel livello Standard. Per saperne di più, consulta Livelli di servizio di rete Premium e Standard.
Supporto di funzionalità avanzate. Cloud Load Balancing supporta funzionalità come il bilanciamento del carico IPv6, lo steering del traffico basato sull'IP di origine, il bilanciamento del carico ponderato, WebSockets, intestazioni delle richieste definite dall'utente e forwarding del protocollo per indirizzi IP virtuali (VIP) privati.
Include anche le seguenti integrazioni:
- Integrazione con Cloud CDN per la distribuzione dei contenuti memorizzati nella cache. Cloud CDN è supportato con il bilanciatore del carico delle applicazioni esterno globale e il bilanciatore del carico delle applicazioni classico.
- Integrazione con Google Cloud Armor per proteggere la tua infrastruttura da attacchi DDoS (Distributed Denial of Service) e altri attacchi mirati alle applicazioni. La protezione DDoS sempre attiva è disponibile per il bilanciatore del carico delle applicazioni esterno globale, il bilanciatore del carico delle applicazioni classico, il bilanciatore del carico di rete proxy esterno e il bilanciatore del carico di rete passthrough esterno. Inoltre, Google Cloud Armor supporta la protezione DDoS avanzata della rete solo per i bilanciatori del carico di rete passthrough esterni. Per ulteriori informazioni, vedi Configurare la protezione DDoS di rete avanzata.
Tipi di Google Cloud bilanciatori del carico
Cloud Load Balancing offre due tipi di bilanciatori del carico: bilanciatori del carico delle applicazioni e bilanciatori del carico di rete. Sceglierai un bilanciatore del carico delle applicazioni quando hai bisogno di un bilanciatore del carico di livello 7 per le tue applicazioni con traffico HTTP(S). Sceglierai un bilanciatore del carico di rete quando hai bisogno di un bilanciatore del carico di livello 4 che supporti l'offload TLS (con un bilanciatore del carico proxy) o se hai bisogno del supporto per protocolli IP come UDP, ESP e ICMP (con un bilanciatore del carico passthrough).
La tabella seguente fornisce una panoramica di alto livello dei diversi tipi di bilanciatori del caricoGoogle Cloud classificati in base al livello OSI su cui operano e se vengono utilizzati per l'accesso esterno o interno.
lan Cloud Load Balancing | Esterno (accetta il traffico internet) |
Interno (accetta il traffico Google Cloud interno) |
---|---|---|
Bilanciatori del carico delle applicazioni HTTPS Bilanciamento del carico di livello 7 |
|
|
Bilanciatori del carico di rete TCP/SSL/Altro Bilanciamento del carico di livello 4 |
||
Bilanciatori del carico di rete proxy | ||
|
|
|
Bilanciatori del carico di rete passthrough | ||
|
|
Bilanciatori del carico delle applicazioni
I bilanciatori del carico delle applicazioni sono bilanciatori del carico di livello 7 basati su proxy che ti consentono di eseguire e scalare i servizi dietro un indirizzo IP anycast. Il bilanciatore del carico delle applicazioni distribuisce il traffico HTTP e HTTPS ai backend ospitati su una serie di piattaforme, come Compute Engine e Google Kubernetes Engine (GKE), nonché ai backend esterni al di fuori diGoogle Cloud. Google Cloud
Il seguente diagramma fornisce una panoramica di alto livello dei diversi tipi di bilanciatori del carico delle applicazioni che possono essere implementati esternamente o internamente a seconda che la tua applicazione sia rivolta a internet o interna.
I bilanciatori del carico delle applicazioni esterni sono implementati come servizi gestiti su Google Front End (GFE) o su proxy Envoy. I client possono connettersi a questi bilanciatori del carico da qualsiasi punto di internet. Nota quanto segue:
- Questi bilanciatori del carico possono essere implementati nelle seguenti modalità: globale, regionale o classica.
- I bilanciatori del carico delle applicazioni esterni globali supportano i backend in più regioni.
- I bilanciatori del carico delle applicazioni esterni regionali supportano i backend solo in una singola regione.
- I bilanciatori del carico delle applicazioni classici sono globali nel livello Premium. Nel livello Standard, possono distribuire il traffico ai backend in una sola regione.
- I bilanciatori del carico delle applicazioni utilizzano il proxy open source Envoy per abilitare le funzionalità di gestione avanzata del traffico.
I bilanciatori del carico delle applicazioni interni sono basati sullo stack di virtualizzazione di rete Andromeda e sul proxy Envoy open source. Questo bilanciatore del carico fornisce il bilanciamento del carico interno basato su proxy dei dati delle applicazioni di livello 7. Il bilanciatore del carico utilizza un indirizzo IP interno accessibile solo ai client nella stessa rete VPC o ai client connessi alla tua rete VPC. Tieni presente quanto segue:
- Questi bilanciatori del carico possono essere implementati nelle seguenti modalità: regionale o interregionale.
- I bilanciatori del carico delle applicazioni interni regionali supportano i backend solo in una singola regione.
- I bilanciatori del carico delle applicazioni interni tra regioni supportano i backend in più regioni e sono sempre accessibili a livello globale. I client di qualsiasi regioneGoogle Cloud possono inviare traffico al bilanciatore del carico.
Per saperne di più sui bilanciatori del carico delle applicazioni, consulta la Panoramica del bilanciatore del carico delle applicazioni.
Bilanciatori del carico di rete
I bilanciatori del carico di rete sono bilanciatori del carico di livello 4 che possono gestire il traffico TCP, UDP o di altri protocolli IP. Questi bilanciatori del carico sono disponibili come bilanciatori del carico proxy o bilanciatori del carico passthrough. Puoi scegliere un bilanciatore del carico in base alle esigenze della tua applicazione e al tipo di traffico che deve gestire. Scegli un bilanciatore del carico di rete proxy se vuoi configurare un bilanciatore del carico proxy inverso con supporto per controlli avanzati del traffico e backend on-premise e in altri ambienti cloud. Scegli un bilanciatore del carico di rete passthrough se vuoi preservare l'indirizzo IP di origine dei pacchetti client, preferisci il ritorno diretto del server per le risposte o vuoi gestire una serie di protocolli IP come TCP, UDP, ESP, GRE, ICMP e ICMPv6.
Bilanciatori del carico di rete proxy
I bilanciatori del carico di rete proxy sono bilanciatori del carico proxy inverso di livello 4 che distribuiscono il traffico TCP alle istanze di macchine virtuali (VM) nella tua rete VPC. Google CloudIl traffico viene terminato al livello di bilanciamento del carico e poi inoltrato al backend disponibile più vicino utilizzando TCP.
Il seguente diagramma fornisce una panoramica di alto livello dei diversi tipi di bilanciatori del carico di rete proxy che possono essere implementati esternamente o internamente a seconda che la tua applicazione sia rivolta a internet o interna.
I bilanciatori del carico di rete proxy esterni sono bilanciatori del carico di livello 4 che distribuiscono il traffico proveniente da internet ai backend nella tua rete VPC Google Cloud , on-premise o in altri ambienti cloud. Questi bilanciatori del carico sono basati su Google Front End (GFE) o su proxy Envoy.
Questi bilanciatori del carico possono essere implementati nelle seguenti modalità: globale, regionale o classica.
- I bilanciatori del carico di rete proxy esterni globali supportano i backend in più regioni.
- I bilanciatori del carico di rete proxy esterni regionali supportano i backend in una singola regione.
- I bilanciatori del carico di rete proxy classici sono globali nel livello Premium. Nel livello Standard, possono distribuire il traffico ai backend in una sola regione.
I bilanciatori del carico di rete proxy interni sono bilanciatori del carico di livello 4 regionali basati su proxy Envoy che ti consentono di eseguire e scalare il traffico di servizio TCP utilizzando un indirizzo IP interno accessibile solo ai client nella stessa rete VPC o ai client connessi alla tua rete VPC.
Questi bilanciatori del carico possono essere implementati in una delle seguenti modalità: regionale o cross-region.
- I bilanciatori del carico di rete proxy interni regionali supportano i backend solo in una singola regione.
- I bilanciatori del carico di rete proxy interni tra regioni supportano i backend in più regioni e sono sempre accessibili a livello globale. I client di qualsiasi regioneGoogle Cloud possono inviare traffico al bilanciatore del carico.
Per saperne di più sui bilanciatori del carico di rete proxy, consulta la panoramica del bilanciatore del carico di rete proxy.
Bilanciatori del carico di rete passthrough
I bilanciatori del carico di rete passthrough sono bilanciatori del carico passthrough regionali di livello 4. Questi bilanciatori del carico distribuiscono il traffico tra i backend nella stessa regione del bilanciatore del carico. Sono implementati utilizzando il networking virtuale Andromeda e Google Maglev.
Come suggerisce il nome, questi bilanciatori del carico non sono proxy. I pacchetti bilanciati vengono ricevuti dalle VM di backend con gli indirizzi IP di origine e destinazione, il protocollo e, se il protocollo è basato su porta, le porte di origine e destinazione invariati. Le connessioni con bilanciamento del carico terminano sui backend. Le risposte delle VM di backend vanno direttamente ai client, non di nuovo attraverso il bilanciatore del carico. Il termine del settore per questa operazione è ritorno diretto al server (DSR).
Questi bilanciatori del carico, come illustrato nell'immagine seguente, vengono implementati in due modalità, a seconda che il bilanciatore del carico sia rivolto a internet o interno.
I bilanciatori del carico di rete passthrough esterni sono basati su Maglev. I client possono connettersi a questi bilanciatori del carico da qualsiasi luogo su internet, indipendentemente dai loro Network Service Tiers. Il bilanciatore del carico può ricevere traffico anche da VM con indirizzi IP esterni o da VM che hanno accesso a internet tramite Cloud NAT o NAT basata su istanza. Google Cloud Google Cloud
I backend per i bilanciatori del carico di rete passthrough esterni possono essere implementati utilizzando un servizio di backend o un pool di destinazione. Per i nuovi deployment, ti consigliamo di utilizzare i servizi di backend.
I bilanciatori del carico di rete passthrough interni sono basati sullo stack di virtualizzazione di rete Andromeda. Un bilanciatore del carico di rete passthrough interno ti consente di bilanciare il carico del traffico TCP/UDP con un indirizzo IP di bilanciamento del carico interno accessibile solo ai sistemi nella stessa rete VPC o ai sistemi connessi alla tua rete VPC. Questo bilanciatore del carico può essere configurato solo nel livello Premium.
Per saperne di più sui bilanciatori del carico di rete passthrough, consulta Bilanciatore del carico di rete passthrough.
Tecnologie sottostanti dei Google Cloud bilanciatori del carico
La tabella seguente elenca la tecnologia sottostante su cui è basato ogni bilanciatore del caricoGoogle Cloud .
- I Google Front End (GFE) sono sistemi distribuiti e software-defined che si trovano nei punti di presenza (POP) di Google ed eseguono il bilanciamento del carico globale in combinazione con altri sistemi e control plane.
- Andromeda è lo stack di virtualizzazione di rete software-defined di Google Cloud.
- Maglev è un sistema distribuito per il bilanciamento del carico di rete.
- Envoy è un proxy di servizio e perimetrale open source, progettato per applicazioni cloud-native.
Bilanciatore del carico | Tecnologia |
---|---|
Bilanciatore del carico delle applicazioni esterno globale | Google Front End (GFE) basato su Envoy |
Bilanciatore del carico delle applicazioni classico | GFE |
Bilanciatore del carico delle applicazioni esterno regionale | Envoy |
Bilanciatore del carico delle applicazioni interno tra regioni | Envoy |
Bilanciatore del carico delle applicazioni interno regionale | Envoy |
Bilanciatore del carico di rete proxy esterno globale | GFE basato su Envoy |
Bilanciatore del carico di rete proxy classico | GFE |
Bilanciatore del carico di rete proxy esterno regionale | Envoy |
Bilanciatore del carico di rete proxy interno regionale | Envoy |
Bilanciatore del carico di rete proxy interno tra regioni | Envoy |
Bilanciatore del carico di rete passthrough esterno | Maglev |
Bilanciatore del carico di rete passthrough interno | Andromeda |
Scelta di un bilanciatore del carico
Per determinare quale prodotto Cloud Load Balancing utilizzare, devi innanzitutto determinare il tipo di traffico che i bilanciatori del carico devono gestire. Come regola generale, sceglierai un bilanciatore del carico delle applicazioni quando hai bisogno di un set di funzionalità flessibili per le tue applicazioni con traffico HTTP(S). Sceglierai un bilanciatore del carico di rete se hai bisogno di offloading TLS su larga scala o supporto per UDP, oppure se devi esporre gli indirizzi IP client alle applicazioni.
Puoi restringere ulteriormente le scelte in base ai requisiti dell'applicazione: se la tua applicazione è esterna (per internet) o interna, se hai bisogno di backend su cui è stato eseguito il deployment a livello globale o regionale e se hai bisogno del livello Premium o Standard di Network Service Tiers.
Il seguente diagramma mostra tutte le modalità di deployment disponibili per Cloud Load Balancing. Per maggiori dettagli, consulta la guida Scegliere un bilanciatore del carico.
1. I bilanciatori del carico delle applicazioni esterni globali supportano due modalità di funzionamento: globale e classica.
2. I bilanciatori del carico di rete proxy esterni globali supportano due modalità di funzionamento: globale e classica.
3. I bilanciatori del carico di rete passthrough conservano gli indirizzi IP di origine dei client. I bilanciatori del carico di rete passthrough supportano anche protocolli aggiuntivi come UDP, ESP e ICMP.
Riepilogo dei tipi di bilanciatori del carico Google Cloud
La tabella seguente fornisce dettagli, ad esempio il livello del servizio di rete su cui opera ogni bilanciatore del carico, insieme al relativo schema di bilanciamento del carico.
Bilanciatore del carico | Modalità di deployment | Tipo di traffico | Livello di servizio di rete | Schema di bilanciamento del carico1 |
---|---|---|---|---|
Bilanciatori del carico delle applicazioni | Globale esterno | HTTP o HTTPS | Livello Premium | EXTERNAL_MANAGED |
Esterno regionale | HTTP o HTTPS | Livello Premium o Standard | EXTERNAL_MANAGED | |
Classic | HTTP o HTTPS | Globale nel livello Premium Regionale nel livello Standard |
ESTERNO2 | |
Interno a livello di regione3 | HTTP o HTTPS | Livello Premium | INTERNAL_MANAGED | |
Interno tra regioni | HTTP o HTTPS | Livello Premium | INTERNAL_MANAGED | |
Bilanciatori del carico di rete proxy | Globale esterno | TCP con offload SSL facoltativo | Livello Premium | EXTERNAL_MANAGED |
Esterno regionale | TCP | Livello Premium o Standard | EXTERNAL_MANAGED | |
Classic | TCP con offload SSL facoltativo | Globale nel livello Premium Regionale nel livello Standard |
EXTERNAL | |
Interno a livello di regione3 | TCP senza offload SSL | Livello Premium | INTERNAL_MANAGED | |
Interno tra regioni | TCP senza offload SSL | Livello Premium | INTERNAL_MANAGED | |
Bilanciatori del carico di rete passthrough | Esterno Sempre regionale |
TCP, UDP, ESP, GRE, ICMP, e ICMPv6 | Livello Premium o Standard | EXTERNAL |
Interno3 Sempre regionale |
TCP, UDP, ICMP, ICMPv6, SCTP, ESP, AH e GRE | Livello Premium | INTERNAL |
1 Lo schema di bilanciamento del carico è un attributo della regola di forwarding e del servizio di backend di un bilanciatore del carico e indica se quest'ultimo può essere utilizzato per il traffico interno o esterno.
Il termine gestito in EXTERNAL_MANAGED
o INTERNAL_MANAGED
indica
che il bilanciatore del carico è implementato come un servizio gestito su un Google Front
End (GFE) o sul proxy
Envoy open source. In uno schema di bilanciamento del carico di tipo gestito, le richieste vengono
indirizzate a GFE o al proxy Envoy.
EXTERNAL_MANAGED
servizi di backend a
EXTERNAL
regole di forwarding. Tuttavia, i servizi di backend EXTERNAL
non possono essere collegati alle regole di forwarding EXTERNAL_MANAGED
.
Per usufruire delle nuove funzionalità disponibili
solo con il bilanciatore del carico delle applicazioni esterno globale, ti
consigliamo di eseguire la migrazione delle risorse EXTERNAL
esistenti a
EXTERNAL_MANAGED
utilizzando la procedura di migrazione descritta in
Eseguire la migrazione
delle risorse dal bilanciatore del carico delle applicazioni esterno classico a quello globale.
3 Per impostazione predefinita, i bilanciatori del carico interni regionali consentono solo il traffico proveniente da client nella stessa regione del bilanciatore del carico. Tuttavia, puoi consentire il traffico dai client di altre regioni abilitando l'accesso globale nella regola di forwarding.
Interfacce
Puoi configurare e aggiornare i bilanciatori del carico utilizzando le seguenti interfacce:
Google Cloud CLI: uno strumento a riga di comando incluso in Google Cloud CLI; la documentazione fa spesso riferimento a questo strumento per svolgere le attività. Per una panoramica completa dello strumento, consulta la guida di gcloud CLI. Puoi trovare i comandi relativi al bilanciamento del carico nel gruppo di comandi
gcloud compute
.Puoi anche ottenere assistenza dettagliata per qualsiasi comando
gcloud
utilizzando il flag--help
.gcloud compute http-health-checks create --help
La Google Cloud console: le attività di bilanciamento del carico possono essere eseguite utilizzando la Google Cloud console.
L'API REST: tutte le attività di bilanciamento del carico possono essere eseguite utilizzando l'API Cloud Load Balancing. La documentazione di riferimento dell'API descrive le risorse e i metodi a tua disposizione.
Terraform: puoi eseguire il provisioning, l'aggiornamento e l'eliminazione dell'infrastruttura di bilanciamento del carico Google Cloudutilizzando uno strumento Infrastructure as Code open source come Terraform.
Passaggi successivi
- Per aiutarti a determinare quale bilanciatore del carico Google Cloud soddisfa meglio le tue esigenze, consulta Scegliere un bilanciatore del carico.
- Per comprendere i componenti dei diversi tipi di bilanciatori del carico Google Cloud , consulta Modello di risorse di Cloud Load Balancing.
- Per visualizzare una panoramica comparativa delle funzionalità di bilanciamento del carico offerte da Cloud Load Balancing, consulta Confronto delle funzionalità dei bilanciatori del carico.
- Per utilizzare i modelli Terraform predefiniti per semplificare la configurazione e la gestione dell'infrastruttura di rete di Google Cloud, esplora il repository GitHub Simplified Cloud Networking Configuration Solutions.