Panoramica di Cloud Load Balancing

Mantieni tutto organizzato con le raccolte Salva e classifica i contenuti in base alle tue preferenze.

Un bilanciatore del carico distribuisce il traffico degli utenti tra più istanze delle tue applicazioni. Distribuendo il carico, il bilanciamento del carico riduce il rischio che le applicazioni riscontrino problemi di prestazioni.

Panoramica semplice del bilanciamento del carico (fai clic per ingrandire)
Semplicità di panoramica del bilanciamento del carico (fai clic per ingrandire)

Informazioni su Cloud Load Balancing

Cloud Load Balancing è un servizio gestito completamente distribuito e software-defined. Non è basato su hardware, quindi non hai bisogno di gestire un'infrastruttura fisica di bilanciamento del carico.

Cloud Load Balancing è basato sulla stessa infrastruttura di pubblicazione frontend di Google. Supporta oltre un milione di query al secondo con prestazioni costanti e a bassa latenza. Con Cloud Load Balancing, puoi distribuire i contenuti nelle aree più vicine possibile ai tuoi utenti. Il traffico entra in Cloud Load Balancing tramite oltre 80 località di bilanciamento del carico globali distinte e rimane sulla spina dorsale della rete privata veloce di Google per la maggior parte del suo percorso. Se necessario, il traffico viene assegnato alla rete Internet pubblica il più vicino possibile agli utenti.

Google Cloud offre le seguenti funzionalità di bilanciamento del carico:

  • 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 primari non sono integri. Cloud Load Balancing reagisce istantaneamente alle variazioni di utenti, traffico, rete, stato dei backend e altre condizioni correlate.

  • Bilanciamento del carico software-defined. Cloud Load Balancing è un servizio gestito completamente 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 è in grado di affrontare problemi di HA, scalabilità e gestione inerenti ai bilanciatori del carico basati su istanze.

  • Scalabilità automatica senza interruzioni. Cloud Load Balancing è in grado di scalare con l'aumentare degli utenti e del traffico, gestendo facilmente picchi elevati, imprevisti e istantanei deviando il traffico verso altre aree geografiche nel mondo che sono in grado di supportarlo. La scalabilità automatica non richiede operazioni preliminari: puoi scalare da zero al traffico completo in pochi secondi.

  • Bilanciamento del carico di livello 4 e 7. Utilizza il bilanciamento del carico basato su livello 4 per indirizzare il traffico in base ai dati provenienti dai protocolli del livello di rete e di trasporto, come TCP, UDP, ESP, GRE, ICMP e ICMPv6. Utilizza il bilanciamento del carico basato su livello 7 per aggiungere decisioni di routing delle richieste in base ad attributi come l'intestazione HTTP e l'identificatore uniforme di risorse.

  • Bilanciamento del carico interno ed esterno. Puoi utilizzare il bilanciamento del carico esterno quando gli utenti raggiungono le tue applicazioni da Internet e il bilanciamento del carico interno quando i client si trovano all'interno di Google Cloud.

  • Bilanciamento del carico globale e a livello di area geografica. Distribuisci le tue risorse con bilanciamento del carico in una o più aree geografiche, in modo da terminare le connessioni vicine ai tuoi utenti e soddisfare i tuoi requisiti di alta disponibilità.

  • Assistenza per funzionalità avanzate. Cloud Load Balancing supporta funzionalità quali bilanciamento del carico globale IPv6, sterzo del traffico basato su IP di origine, WebSocket, intestazioni delle richieste definite dall'utente e forwarding del protocollo per i VIP privati.

    Inoltre, include le seguenti integrazioni:

    • Integrazione con Cloud CDN per la distribuzione dei contenuti memorizzati nella cache. Cloud CDN è supportato con il bilanciatore del carico HTTP(S) esterno globale e il bilanciatore del carico HTTP(S) esterno globale (versione classica).
    • Integrazione con Google Cloud Armor per proteggere la tua infrastruttura dagli attacchi DDoS (Distributed Denial-of-Service) e da altri attacchi mirati alle applicazioni. La protezione DDoS sempre attiva è disponibile per il bilanciatore del carico HTTP(S) esterno globale, il bilanciatore del carico HTTP(S) esterno globale (classico), il bilanciatore del carico del proxy TCP esterno, il bilanciatore del carico del proxy SSL esterno e del bilanciatore del carico di rete. Inoltre, Google Cloud Armor supporta la protezione DDoS di rete avanzata solo per i bilanciatori del carico di rete. Per ulteriori informazioni, consulta la pagina Configurare la protezione avanzata dagli attacchi di rete DDoS.

Riepilogo dei bilanciatori del carico Google Cloud

Il seguente diagramma riassume i prodotti disponibili di Cloud Load Balancing.

Panoramica di Cloud Load Balancing (fai clic per ingrandire)
Panoramica di Cloud Load Balancing (fai clic per ingrandire)

La tabella seguente fornisce informazioni più specifiche su ciascun bilanciatore del carico.

Tipo di bilanciatore del carico Tipo di traffico Indirizzo IP Globale o a livello di regione Livello di servizio di rete Schema di bilanciamento del carico Porte frontend del bilanciatore del carico Proxy o passthrough
Bilanciatore del carico HTTP(S) esterno globale HTTP o HTTPS IPv4, IPv6 Globale Solo con Premium ESTERNO_GESTITO HTTP su 80 o 8080; HTTPS su 443 Proxy
Bilanciatore del carico HTTP(S) esterno globale (versione classica) HTTP o HTTPS IPv4, IPv6 (IPv6 solo nel livello Premium) Globale nel livello Premium. A livello di area geografica nel livello Standard. Premium o Standard PER USO ESTERNO HTTP su 80 o 8080; HTTPS su 443 Proxy
Bilanciatore del carico HTTP(S) esterno a livello di area geografica HTTP o HTTPS Solo IPv4 Regionale Solo standard ESTERNO_GESTITO HTTP su 80 o 8080; HTTPS su 443 Proxy
Bilanciatore del carico HTTP(S) interno HTTP o HTTPS Solo IPv4 Regionale Solo con Premium INTERNI_GESTITI HTTP su 80 o 8080; HTTPS su 443 Proxy
Bilanciatore del carico del proxy SSL esterno TCP con offload SSL IPv4, IPv6 (IPv6 solo nel livello Premium) Globale nel livello Premium. A livello di area geografica nel livello Standard. Premium o Standard PER USO ESTERNO Esattamente una porta da 1-65535 Proxy
Bilanciatore del carico del proxy TCP esterno TCP senza offload SSL IPv4, IPv6 (IPv6 solo nel livello Premium) Globale nel livello Premium. A livello di area geografica nel livello Standard. Premium o Standard PER USO ESTERNO Esattamente una porta da 1-65535 Proxy
Bilanciatore del carico proxy TCP a livello di regione interno TCP senza offload SSL Solo IPv4 Regionale Premium INTERNI_GESTITI Qualsiasi Proxy
Bilanciatore del carico di rete TCP/UDP esterno TCP, UDP, ESP, GRE, ICMP e ICMPv6 IPv4, IPv6 (IPv6 solo nel livello Premium) Regionale Premium o Standard PER USO ESTERNO Qualsiasi Passthrough
Bilanciatore del carico TCP/UDP interno TCP o UDP IPv4, IPv6 Backend regionali, frontend regionali (accesso globale supportato) Solo con Premium PER USO INTERNO Qualsiasi Passthrough

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 il bilanciatore del carico può essere utilizzato per il traffico interno o esterno. I valori possibili sono EXTERNAL, EXTERNAL_MANAGED, INTERNAL e INTERNAL_MANAGED.

Il termine *_MANAGED nello schema di bilanciamento del carico indica che il bilanciatore del carico è implementato come servizio gestito nei Google Front End (GFE) o come servizio gestito nel proxy Envoy open source. In uno schema di bilanciamento del carico che è *_MANAGED, le richieste vengono instradate al GFE o al proxy Envoy.

Scelta di un bilanciatore del carico

Per determinare quale prodotto Cloud Load Balancing utilizzare, devi prima determinare quale tipo di traffico deve essere gestito dai bilanciatori del carico e se è necessario un bilanciamento del carico globale o a livello di area geografica, bilanciamento del carico esterno o interno e bilanciamento del carico proxy o passthrough. Per maggiori dettagli su ciascuna di queste decisioni, consulta Scelta di un bilanciatore del carico.

Quindi usa questa struttura delle decisioni per determinare quali bilanciatori del carico sono disponibili per il tuo client, protocollo e configurazione di rete.

Struttura decisionale per la scelta di un bilanciatore del carico (fai clic per ingrandire)
Albero decisionale per la scelta di un bilanciatore del carico (fai clic per ingrandire)

La tecnologia di base dei bilanciatori del carico Google Cloud

Questa sezione fornisce ulteriori informazioni su ogni tipo di bilanciatore del carico Google Cloud, inclusi link alla documentazione di panoramica per una comprensione più approfondita.

  • 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 piani di controllo.
  • Andromeda è lo stack di virtualizzazione di rete software-defined di Google Cloud.
  • Maglev è un sistema distribuito per il bilanciamento del carico di rete.
  • Proxy Envoy è un proxy di servizio e periferico open source, progettato per le applicazioni cloud-native.
Bilanciatore del carico Tecnologia sottostante
Bilanciatore del carico HTTP(S) esterno globale GFE, Envoy
Bilanciatore del carico HTTP(S) esterno globale (versione classica) GFE
Bilanciatore del carico HTTP(S) esterno a livello di area geografica Envoy, Maglev
Bilanciatore del carico HTTP(S) interno Andromeda, Envoy
Bilanciatore del carico del proxy TCP esterno GFE
Bilanciatore del carico del proxy SSL esterno GFE
Bilanciatore del carico del proxy TCP regionale interno Andromeda, Envoy
Bilanciatore del carico di rete TCP/UDP esterno Maglev
Bilanciatore del carico TCP/UDP interno Andromeda

Bilanciamento del carico HTTP(S) interno

Il bilanciamento del carico HTTP(S) interno è basato sullo stack di virtualizzazione della rete Andromeda ed è un servizio gestito basato sul proxy Envoy open source. Questo bilanciatore del carico fornisce il bilanciamento del carico interno basato su proxy per i dati dell'applicazione di livello 7. Specifica il modo in cui il traffico viene instradato con le mappe URL. Il bilanciatore del carico utilizza un indirizzo IP interno che funge da frontend per i backend.

Bilanciamento del carico HTTP(S) esterno

L'implementazione del bilanciamento del carico HTTP(S) varia in base alla modalità del bilanciatore del carico.

Il bilanciatore del carico HTTP(S) esterno globale con funzionalità di gestione avanzata del traffico è implementato nei GFE. I GFE vengono distribuiti a livello globale e operano insieme utilizzando la rete globale e il piano di controllo di Google. I GFE offrono un bilanciamento del carico a più aree geografiche, indirizzando il traffico al backend integro più vicino che ha capacità e terminando il traffico HTTP(S) il più vicino possibile ai tuoi utenti. Inoltre, il bilanciatore del carico HTTP(S) esterno globale utilizza il proxy Envoy open source per abilitare funzionalità avanzate di gestione del traffico. Il bilanciatore del carico HTTP(S) esterno globale è supportato solo nel livello Premium.

Anche il bilanciatore del carico HTTP(S) esterno globale (classico) è implementato nei GFE. Si tratta di un bilanciatore del carico globale nel livello Premium, ma può essere configurato per essere effettivamente a livello di area geografica nel livello Standard. Con "effettivamente" a livello regionale si intende che, mentre il servizio di backend è sempre globale, quando scegli il livello Standard, la regola di forwarding esterno e l'indirizzo IP esterno devono essere a livello di area geografica e che i backend associati al servizio di backend globale devono trovarsi nella stessa area geografica della regola di forwarding e dell'indirizzo IP.

Il bilanciatore del carico HTTP(S) esterno a livello di area geografica è un servizio gestito basato sul proxy Envoy open source che consente funzionalità avanzate di gestione del traffico. Questo è un bilanciatore del carico HTTP(S) a livello di area geografica supportato solo nel livello standard.

Bilanciamento del carico TCP/UDP interno

Il bilanciamento del carico TCP/UDP interno è basato sullo stack di virtualizzazione della rete Andromeda. Il bilanciamento del carico TCP/UDP interno ti consente di eseguire il bilanciamento del carico del traffico TCP/UDP con un indirizzo IP interno di bilanciamento del carico accessibile solo alle istanze di macchine virtuali (VM) interne. Utilizzando il bilanciamento del carico TCP/UDP interno, un indirizzo IP di bilanciamento del carico interno è configurato per agire come frontend per le istanze di backend interne. Utilizzi solo indirizzi IP interni per il servizio con bilanciamento del carico. Nel complesso, la configurazione diventa più semplice.

Il bilanciamento del carico TCP/UDP interno supporta i gruppi di istanze gestite a livello di area geografica, per consentirti di scalare automaticamente all'interno di un'area geografica, proteggendo il servizio dagli errori a livello di zona.

Bilanciamento del carico di rete TCP/UDP esterno

Il bilanciamento del carico di rete si basa su Maglev. (Facoltativo) Questo bilanciatore del carico consente di bilanciare il carico del traffico sui tuoi sistemi in base ai dati del protocollo IP in entrata, inclusi indirizzo, protocollo e porta. È un sistema di bilanciamento del carico a livello di area geografica e privo di proxy. Ciò significa che un bilanciatore del carico di rete è un bilanciatore del carico passthrough che non usa un proxy per le connessioni dai client.

I bilanciatori del carico di rete basati su servizio di backend supportano il traffico TCP, UDP, ESP, GRE, ICMP e ICMPv6.

I bilanciatori del carico di rete basati su pool di destinazione supportano solo il traffico TCP o UDP.

Bilanciamento del carico del proxy SSL esterno

Il bilanciamento del carico del proxy SSL esterno è implementato su GFE distribuiti a livello globale. Se scegli il livello Premium di Network Service Tiers, un bilanciatore del carico del proxy SSL esterno è globale. Nel livello Premium, puoi eseguire il deployment di backend in più aree geografiche e il bilanciatore del carico indirizza automaticamente il traffico degli utenti all'area geografica più vicina con capacità disponibile. Se scegli il livello Standard, un bilanciatore del carico del proxy SSL esterno può indirizzare il traffico solo tra i backend in una singola regione.

Bilanciamento del carico del proxy TCP esterno

Il bilanciamento del carico del proxy TCP esterno è implementato su GFE distribuiti a livello globale. Se scegli il livello Premium di Network Service Tiers, un bilanciatore del carico proxy TCP esterno è globale. Nel livello Premium, puoi eseguire il deployment di backend in più aree geografiche e il bilanciatore del carico indirizza automaticamente il traffico degli utenti all'area geografica più vicina con capacità disponibile. Se scegli il livello Standard, un bilanciatore del carico TCP esterno può indirizzare il traffico solo tra i backend in una singola regione.

Bilanciamento del carico del proxy TCP interno a livello di regione

Il bilanciatore del carico proxy TCP a livello di area geografica interno è un bilanciatore del carico a livello di area geografica basato su proxy di Envoy 4 che ti consente di eseguire e scalare il traffico del servizio TCP dietro un indirizzo IP interno accessibile solo ai client che si trovano nella stessa rete VPC o che sono connessi alla tua rete VPC.

Il bilanciatore del carico distribuisce il traffico TCP ai backend ospitati su Google Cloud, on-premise o in altri ambienti cloud. Questo bilanciatore del carico è accessibile solo nell'area geografica prescelta della tua rete VPC su un indirizzo IP interno.

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 richiede spesso questo strumento per eseguire attività. Per una panoramica completa dello strumento, consulta la guida dell'interfaccia a riga di comando gcloud. Puoi trovare comandi relativi al bilanciamento del carico nel gruppo di comandi gcloud compute.

    Puoi anche ricevere assistenza dettagliata per qualsiasi comando gcloud utilizzando il flag --help:

    gcloud compute http-health-checks create --help
    
  • Google Cloud Console: le attività di bilanciamento del carico possono essere eseguite utilizzando la Google Cloud Console.

  • 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: esegui il provisioning, aggiorna ed elimina l'infrastruttura di bilanciamento del carico di Google Cloud utilizzando uno strumento open source Infrastructure as Code come Terraform.

Passaggi successivi