Panoramica delle estensioni Cloud Load Balancing e Cloud CDN

Service Extensions ti consente di utilizzare le estensioni per istruire i bilanciatori del carico delle applicazioni supportati a utilizzare i plug-in o inviare callout dal percorso dei dati di bilanciamento del carico per chiamare i servizi di backend o i servizi Google. Questa pagina fornisce una panoramica delle estensioni diCloud Load Balancingd.

Puoi configurare i bilanciatori del carico delle applicazioni in modo che utilizzino i seguenti tipi di estensioni:

  • Le estensioni perimetrali ti aiutano a manipolare le intestazioni delle richieste per influenzare la selezione del servizio di backend e i contenuti che Cloud CDN pubblica dalla cache. Queste estensioni sono configurate per essere eseguite all'inizio del ciclo di vita dell'elaborazione delle richieste per influenzare rispettivamente le decisioni di memorizzazione nella cache e di routing, all'edge.

  • Le estensioni di routing ti aiutano a influenzare la scelta del servizio di backend. Queste estensioni sono configurate per essere eseguite all'inizio del ciclo di vita di elaborazione delle richieste.

  • Le estensioni di autorizzazione ti aiutano a inviare richieste di autorizzazione al tuo motore di autorizzazione personalizzato. Questi vengono configurati alla fine del ciclo di elaborazione poco prima che il bilanciatore del carico invii le richieste ai backend.

  • Le estensioni del traffico contribuiscono a supportare logiche di sicurezza personalizzate aggiuntive e funzionalità di gestione del traffico. Queste vengono configurate dopo le estensioni di autorizzazione, ma prima che il bilanciatore del carico invii richieste ai backend o riceva risposte.

Bilanciatori del carico delle applicazioni supportati per le estensioni gestite dall'utente

Service Extensions supporta le estensioni gestite dall'utente per i seguenti bilanciatori del carico delle applicazioni:

Bilanciatori del carico delle applicazioni Estensioni
Edge Route Autorizzazione Traffico
Plug-in Plug-in Callout Callout Plug-in Callout
Bilanciatore del carico delle applicazioni esterno globale
Bilanciatore del carico delle applicazioni esterno regionale Anteprima Anteprima
Bilanciatore del carico delle applicazioni interno regionale Anteprima Anteprima
Bilanciatore del carico delle applicazioni interno tra regioni

Punti di estensibilità nel percorso dei dati di bilanciamento del carico

Service Extensions supporta le estensioni in diverse fasi del percorso dei dati di bilanciamento del carico.

La Figura 1 mostra come Service Extensions supporta le estensioni nelle fasi di sicurezza delle applicazioni e gestione del traffico per i bilanciatori del carico delle applicazioni esterni globali.

Figura 1. I bilanciatori del carico delle applicazioni esterni globali supportano le estensioni nelle fasi di routing edge, sicurezza delle applicazioni e gestione del traffico (fai clic per ingrandire).

La figura 2 mostra come Service Extensions supporta le estensioni nelle fasi di routing, sicurezza delle applicazioni e gestione del traffico per questi tipi di bilanciatori del carico: bilanciatore del carico delle applicazioni esterno regionale, bilanciatore del carico delle applicazioni interno regionale e bilanciatore del carico delle applicazioni interno tra regioni.

Figura 2. I bilanciatori del carico delle applicazioni esterni regionali, i bilanciatori del carico delle applicazioni interni regionali e i bilanciatori del carico delle applicazioni interni tra regioni supportano le estensioni nelle fasi di routing e gestione del traffico (fai clic per ingrandire).

Come funzionano le estensioni di Edge

Le estensioni perimetrali vengono eseguite per prime nel percorso di elaborazione delle richieste e ti consentono di utilizzare le intestazioni delle richieste per influenzare la selezione del servizio di backend e i contenuti che Cloud CDN gestisce dalla cache.

Dopo che un bilanciatore del carico chiama un'estensione edge, esegue le seguenti operazioni:

  • Seleziona il servizio di backend valutando la mappa URL
  • Applica i criteri di Google Cloud Armor criteri di sicurezza
  • Esegue una ricerca nella cache e pubblica dalla cache se si verifica un successo della cache
  • Applica le policy di Cloud Armor per il servizio di backend selezionato
  • Applica le policy CORS
  • Applica la policy di affinità sessione stateful
  • Applica i criteri Identity-Aware Proxy (IAP) per il servizio di backend selezionato
  • Estensioni di autorizzazione delle chiamate, se configurate nel percorso di elaborazione del servizio di backend selezionato
  • Esegue l'inserimento di errori
  • Estensioni del traffico delle chiamate, se presenti
  • Esegue riscritture URL
  • Esegue la manipolazione delle intestazioni in base alla mappa URL e aggiunge variabili di intestazione della richiesta personalizzate
  • Esegue reindirizzamenti o routing al servizio di backend selezionato applicando timeout e criteri di riprova nella mappa URL e nelle impostazioni di bilanciamento del carico per il servizio di backend.
  • Esegue il mirroring delle richieste

Come funzionano le estensioni di autorizzazione

Nel percorso della richiesta, le estensioni di autorizzazione vengono chiamate dopo le estensioni di route e dopo che è stato selezionato un backend per la richiesta. Queste estensioni non possono influenzare la selezione del servizio di backend.

Le estensioni di autorizzazione possono elaborare solo le intestazioni delle richieste e non i corpi delle richieste o qualsiasi parte delle risposte.

Come funzionano le estensioni route

Le estensioni di route vengono eseguite per prime nel percorso di elaborazione delle richieste quando il bilanciatore del carico riceve le intestazioni delle richieste e prima di valutare la mappa URL.

Dopo che un bilanciatore del carico chiama un'estensione di route per una richiesta, esegue le seguenti operazioni:

  • Seleziona il servizio di backend valutando la mappa URL
  • Applica le policy di Cloud Armor per il servizio di backend selezionato
  • Applica le policy IAP per il servizio di backend selezionato
  • Esegue l'inserimento di errori
  • Esegue le trasformazioni delle intestazioni delle richieste e risolve le variabili di intestazione delle richieste personalizzate
  • Estensioni del traffico delle chiamate, se esistono nel percorso di elaborazione del servizio di backend selezionato
  • Esegue riscritture URL
  • Esegue reindirizzamenti o routing al servizio di backend selezionato e applica timeout e criteri di riprova nella mappa URL e in altre impostazioni di bilanciamento del carico per il servizio di backend

Come funzionano le estensioni di traffico

I bilanciatori del carico eseguono le estensioni del traffico per ultime nel percorso di elaborazione delle richieste e per prime nel percorso di elaborazione delle risposte.

Queste estensioni consentono di modificare le intestazioni e i payload di richieste e risposte senza influire sulla scelta del servizio di backend. Puoi anche utilizzare le estensioni del traffico per la registrazione personalizzata specificando le informazioni che vuoi registrare, il formato e il provider esterno.

Prima che un bilanciatore del carico chiami un'estensione del traffico nel percorso della richiesta per una richiesta, esegue le seguenti operazioni:

  • Esegue l'inserimento di errori
  • Seleziona un servizio di backend per la richiesta
  • Applica le policy di Cloud Armor per il servizio di backend selezionato
  • Applica le policy IAP per il servizio di backend selezionato
  • Applica le policy di memorizzazione nella cache di Cloud CDN per il servizio di backend selezionato nel caso dei bilanciatori del carico delle applicazioni esterni globali.

Dopo che un bilanciatore del carico chiama un'estensione del traffico nel percorso della richiesta per una richiesta, esegue le seguenti operazioni:

  • Esegue riscritture URL
  • Esegue la manipolazione delle intestazioni in base alla mappa URL e aggiunge variabili di intestazione della richiesta personalizzate
  • Esegue reindirizzamenti o routing al servizio di backend selezionato applicando timeout e criteri di riprova nella mappa URL e nelle impostazioni di bilanciamento del carico per il servizio di backend.
  • Esegue il mirroring delle richieste

Dopo che un bilanciatore del carico chiama un'estensione del traffico nel percorso di risposta per una richiesta, esegue le seguenti operazioni:

  • Esegue trasformazioni dell'intestazione della risposta e risolve le variabili di intestazione della risposta personalizzate
  • Esegue il logging utilizzando Cloud Logging
  • Esegue la memorizzazione nella cache di Cloud CDN nel caso di bilanciatori del carico delle applicazioni esterni globali

Limitazioni per le estensioni

  • Una regola di forwarding può avere una sola risorsa LbEdgeExtension, una risorsa LbTrafficExtension e una risorsa LbRouteExtension.
  • Per i callout, il servizio di backend di callout deve trovarsi nello stesso progetto della regola di forwarding.
  • I riferimenti tra progetti tra le estensioni e le regole di inoltro non sono supportati.

Passaggi successivi