Panoramica di Cloud Load Balancing

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 di problemi di prestazioni delle applicazioni.

Panoramica semplice del bilanciamento del carico (fai clic per ingrandire)
Panoramica semplice del bilanciamento del carico (fai clic per ingrandire)

Informazioni su Cloud Load Balancing

Cloud Load Balancing è un servizio gestito completamente distribuito e software-defined. Poiché non è basato su hardware, non è necessario gestire un'infrastruttura fisica di bilanciamento del carico.

Cloud Load Balancing è basato sulla stessa infrastruttura di frontend di Google. Supporta oltre un milione di query al secondo con prestazioni coerenti e a bassa latenza. Il traffico entra in Cloud Load Balancing tramite oltre 80 località di bilanciamento del carico globali, massimizzando la distanza percorsa dalla veloce rete backbone privata di Google. Utilizzando Cloud Load Balancing, puoi pubblicare contenuti il più vicino possibile agli utenti.

Google Cloud offre le seguenti funzionalità di bilanciamento 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 in aree geografiche di tutto il mondo. Fornisce il bilanciamento del carico tra aree geografiche che include il failover automatico in più aree geografiche, che trasferisce il traffico ai backend di failover se i backend primari non sono integri. Cloud Load Balancing reagisce istantaneamente ai cambiamenti di utenti, traffico, rete, integrità del backend e altre condizioni correlate.

  • Bilanciamento del carico definito dal software. 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 basata su dispositivo, perciò non dovrai bloccare l'infrastruttura di bilanciamento del carico fisico o affrontare le sfide di alta disponibilità, scalabilità e gestione presenti nei 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, permettendoti di gestire facilmente picchi massimi, 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 dei protocolli 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 basate su attributi, come l'intestazione HTTP e l'identificatore uniforme delle risorse.

  • Bilanciamento del carico esterno e interno. 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 risorse con bilanciamento del carico in una o più aree geografiche, per terminare le connessioni in prossimità degli utenti e per soddisfare i requisiti di alta disponibilità.

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

    Inoltre, sono incluse le seguenti integrazioni:

    • Integrazione con Cloud CDN per la distribuzione di 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 (classico).
    • Integrazione con Google Cloud Armor per proteggere la tua infrastruttura da attacchi di tipo denial of service (DDoS) e altri attacchi applicativi mirati. La protezione DDoS sempre attiva è disponibile per il bilanciatore del carico HTTP(S) esterno globale, il bilanciatore del carico HTTP(S) esterno classico (classico), il bilanciatore del carico proxy TCP esterno, il bilanciatore del carico del proxy SSL esterno e il bilanciatore del carico di rete. Inoltre, Google Cloud Armor supporta la protezione avanzata della rete DDoS solo per i bilanciatori del carico di rete. Per ulteriori informazioni, consulta la pagina Configurare la protezione avanzata della 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 area geografica 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 Premium Gestito all'esterno HTTP su 80 o 8080; HTTPS su 443 Proxy
Bilanciatore del carico HTTP(S) esterno globale (classico) HTTP o HTTPS IPv4, IPv6 (solo IPv6 nel livello Premium) Livello globale nel livello Premium. Livello regionale nel livello Standard. Premium o Standard 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 A livello di regione Solo standard Gestito all'esterno HTTP su 80 o 8080; HTTPS su 443 Proxy
Bilanciatore del carico HTTP(S) interno HTTP o HTTPS Solo IPv4 A livello di regione Solo Premium INTERNAL_MANAGED HTTP su 80 o 8080; HTTPS su 443 Proxy
Bilanciatore del carico del proxy SSL esterno TCP con offload SSL IPv4, IPv6 (solo IPv6 nel livello Premium) Livello globale nel livello Premium. Livello regionale nel livello Standard. Premium o Standard ESTERNO 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1883, 3389, 5222, 5432, 5671, 5672, 5900, 5, 5, 5, 5, 5, 5, 5, 5, 5 da 5 Proxy
Bilanciatore del carico proxy TCP esterno TCP senza offload SSL IPv4, IPv6 (solo IPv6 nel livello Premium) Livello globale nel livello Premium. Livello regionale nel livello Standard. Premium o Standard ESTERNO 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1883, 3389, 5222, 5432, 5671, 5672, 5900, 5, 5, 5, 5, 5, 5, 5, 5, 5 da 5 Proxy
Bilanciatore del carico proxy TCP a livello di area geografica interna (anteprima) TCP senza offload SSL Solo IPv4 A livello di regione Premium INTERNAL_MANAGED Qualsiasi Proxy
Bilanciatore del carico di rete TCP/UDP esterno TCP, UDP, ESP, GRE, ICMP e ICMPv6 IPv4, IPv6 (solo IPv6 nel livello Premium) A livello di regione Premium o Standard ESTERNO Qualsiasi Passthrough
Bilanciatore del carico TCP/UDP interno TCP o UDP Solo IPv4 Backend a livello di area geografica, frontend regionali (supporto per l'accesso globale) Solo Premium PER USO INTERNO Qualsiasi Passthrough

Scelta di un bilanciatore del carico

Per determinare quale prodotto Cloud Load Balancing devi utilizzare, devi prima determinare il tipo di traffico che i bilanciatori del carico devono gestire e se è necessario il bilanciamento del carico globale o a livello di area geografica, il bilanciamento del carico esterno o interno e il bilanciamento del carico proxy o pass-through. Per informazioni dettagliate su ciascuna di queste decisioni, consulta la sezione Scegliere un bilanciatore del carico.

Quindi, utilizza questo albero decisionale per determinare quali bilanciatori del carico sono disponibili per il client, il protocollo e la configurazione di rete.

Albero 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 ciascun tipo di bilanciatore del carico Google Cloud, includono link alla documentazione di panoramica per una comprensione più approfondita.

  • I Google Front End (GFE) sono sistemi distribuiti a livello software che si trovano in punti di presenza Google (PoP) e 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.
  • Il proxy Envoy è un proxy open source e di servizio, 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 di rete TCP/UDP esterno Maglev
Bilanciatore del carico TCP/UDP interno Andromeda
Bilanciatore del carico proxy TCP esterno GFE
bilanciatore del carico del proxy SSL esterno GFE

Bilanciamento del carico HTTP(S) interno

Il bilanciamento del carico HTTP(S) interno si basa sullo stack di virtualizzazione della rete Andromeda ed è un servizio gestito basato sul proxy open source Envoy. Questo bilanciatore del carico fornisce un bilanciamento del carico interno basato su proxy dei dati dell'applicazione livello 7. Puoi specificare la modalità di routing del traffico con le mappe di URL. Il bilanciatore del carico utilizza un indirizzo IP interno che funge da frontend dei 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 del traffico avanzata è 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 il bilanciamento del carico su più aree geografiche, indirizzando il traffico al backend integro più vicino che dispone di capacità e termina 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.

Il bilanciatore del carico HTTP(S) esterno globale (classico) è implementato anche nei GFE. Si tratta di un bilanciatore del carico globale nel livello Premium, ma può essere configurato per essere un'area geografica efficace nel livello standard. Per quanto riguarda l'effettiva area geografica, vuol dire che, anche se il servizio di backend è sempre globale, quando scegli il livello Standard, la regola di forwarding esterno e l'indirizzo IP esterno devono trovarsi a livello di area geografica, mentre i backend collegati 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 open source Envoy, che consente funzionalità avanzate di gestione del traffico. Si tratta di 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 si basa 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 interne (VM). Utilizzando il bilanciamento del carico TCP/UDP interno, un indirizzo IP interno di bilanciamento del carico è configurato come frontend per le istanze di backend interne. Per il servizio con bilanciamento del carico vengono utilizzati solo gli indirizzi IP interni. Nel complesso, la tua configurazione diventa più semplice.

Il bilanciamento del carico TCP/UDP interno supporta i gruppi di istanze gestite a livello di area geografica, per garantire la scalabilità automatica in un'area geografica, proteggendo il servizio dagli errori di zona.

Bilanciamento del carico di rete TCP/UDP esterno

Il bilanciamento del carico di rete si basa su Maglev. Questo bilanciatore del carico consente di bilanciare il carico del traffico sui sistemi in base ai dati del protocollo IP in entrata, inclusi indirizzo, protocollo e porta (facoltativo). Si tratta di 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 servizi 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 viene implementato sui GFE distribuiti a livello globale. Se scegli il livello Premium dei livelli di servizio di rete, 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 area geografica.

Bilanciamento del carico del proxy TCP esterno

Il bilanciamento del carico del proxy TCP esterno è implementato sui GFE distribuiti a livello globale. Se scegli il livello Premium dei livelli di servizio di rete, un bilanciatore del carico 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 area geografica.

Bilanciamento del carico del proxy TCP a livello di area geografica interna

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

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

Interfacce

Puoi configurare e aggiornare i bilanciatori del carico utilizzando le seguenti interfacce:

  • L'interfaccia a riga di comando di Google Cloud: uno strumento a riga di comando incluso nell'interfaccia a riga di comando di Google; la documentazione lo richiede spesso per eseguire le attività. Per una panoramica completa dello strumento, consulta la guida all'interfaccia a riga di comando gcloud. Puoi trovare i comandi relativi al bilanciamento del carico nel gruppo di comandi gcloud compute.

    Per ricevere assistenza dettagliata su qualsiasi comando gcloud, utilizza il flag --help:

    gcloud compute http-health-checks create --help
    
  • Google Cloud Console: le attività di bilanciamento del carico possono essere eseguite utilizzando la 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 disponibili.

Passaggi successivi