Subnet solo proxy per i bilanciatori del carico basati su Envoy

Questa pagina descrive come utilizzare le subnet solo proxy utilizzate dai bilanciatori del carico basati su Envoy. Una subnet solo proxy fornisce un pool di indirizzi IP riservati esclusivamente per i proxy Envoy utilizzati dai bilanciatori del carico. Trusted Cloud by S3NS Non può essere utilizzato per altri scopi.

I proxy terminano le connessioni in entrata e poi valutano dove deve andare ogni richiesta in base alla mappa URL, all'affinità sessione del servizio di backend, alla modalità di bilanciamento di ogni gruppo di istanza di backend o NEG e ad altri fattori.

  1. Un client stabilisce una connessione all'indirizzo IP e alla porta della regola di forwarding del bilanciatore del carico.

  2. Ogni proxy è in ascolto sull'indirizzo IP e sulla porta specificati dalla regola di forwarding del bilanciatore del carico corrispondente. Uno dei proxy riceve e termina la connessione di rete del client.

  3. Il proxy stabilisce una connessione alla VM o all'endpoint di backend appropriato in un NEG, come determinato dalla mappa URL e dai servizi di backend del bilanciatore del carico.

A ciascuno dei proxy del bilanciatore del carico viene assegnato un indirizzo IP interno. I pacchetti inviati da un proxy a una VM o a un endpoint di backend hanno un indirizzo IP di origine dalla subnet solo proxy.

La subnet solo proxy non può essere utilizzata per altri scopi. L'indirizzo IP per la regola di forwarding del bilanciatore del carico non proviene dalla subnet solo proxy. Inoltre, gli indirizzi IP delle VM e degli endpoint di backend non provengono dalla subnet solo proxy.

Bilanciatori del carico e prodotti supportati

I prodotti Cloud Load Balancing e Secure Web Proxy basati su Envoy richiedono subnet solo proxy:

Come si inseriscono le subnet solo proxy nell'architettura del bilanciatore del carico

Il seguente diagramma mostra le Trusted Cloud risorse richieste per un bilanciatore del carico delle applicazioni interno regionale.

Componenti numerati del bilanciatore del carico delle applicazioni interno regionale.
Componenti numerati del bilanciatore del carico delle applicazioni interno regionale (fai clic per ingrandire).

Come mostrato nei diagrammi, un deployment del bilanciatore del carico basato su Envoy richiede almeno due subnet:

  • Le VM di backend e gli endpoint di backend del bilanciatore del carico utilizzano una singola subnet il cui intervallo di indirizzi IP principale è 10.1.2.0/24 (in questo esempio). Questa subnet non è la subnet solo proxy. Puoi utilizzare più subnet per le VM e gli endpoint di backend se le subnet si trovano nella stessa regione del bilanciatore del carico. Per i bilanciatori del carico delle applicazioni interni, anche l'indirizzo IP del bilanciatore del carico associato alla regola di forwarding può trovarsi in questa subnet (ma non è necessario).
  • La subnet solo proxy è 10.129.0.0/23 (in questo esempio).

Pianificare le dimensioni della subnet solo proxy

Una subnet solo proxy deve fornire almeno 64 indirizzi IP. Questo requisito corrisponde a una lunghezza del prefisso pari o inferiore a /26. Ti consigliamo di iniziare con una subnet solo proxy con un prefisso /23 (512 indirizzi solo proxy) e di modificare le dimensioni in base alle esigenze di traffico.

I proxy vengono allocati a livello di VPC, non a livello di bilanciatore del carico. Devi creare una subnet solo proxy in ogni regione di una rete VPC in cui utilizzi bilanciatori del carico basati su Envoy. Se esegui il deployment di più bilanciatori del carico nella stessa regione e nella stessa rete VPC, questi condividono la stessa subnet solo proxy per il bilanciamento del carico. I bilanciatori del carico basati su Envoy scalano automaticamente il numero di proxy disponibili per gestire il traffico in base alle esigenze.

Il numero di proxy assegnati al bilanciatore del carico viene calcolato in base alla capacità misurata che serve per gestire il traffico in un periodo di tempo di 10 minuti. Durante questo periodo, osserviamo il numero maggiore tra:

  • Il numero di proxy necessari per soddisfare i requisiti di larghezza di banda del traffico. Ogni istanza proxy può gestire fino a 18 MB al secondo. Monitoriamo la larghezza di banda totale richiesta e la dividiamo per la larghezza di banda che un'istanza proxy può supportare.

  • Il numero di proxy necessari per gestire le connessioni e le richieste. Contiamo il totale di ciascuna delle seguenti risorse e dividiamo ogni valore per il traffico che un'istanza proxy può gestire:

    • 600 (HTTP) o 150 (HTTPS) nuove connessioni al secondo
    • 3000 connessioni attive
    • 1400 richieste al secondo

      Se Cloud Logging è disabilitato,un'istanza proxy può gestire 1400 richieste al secondo. Se abiliti Logging, la tua istanza proxy può gestire un numero inferiore di richieste al secondo. Ad esempio: il logging del 100% delle richieste riduce la capacità di gestione del proxy a 700 richieste al secondo. Puoi configurare Logging per campionare una percentuale di traffico inferiore. Ciò ti consente di soddisfare le tue esigenze di osservabilità tenendo sotto controllo i costi.

Per ciascun proxy aggiuntivo viene addebitato un ulteriore costo orario. Per informazioni su come vengono fatturate le subnet solo proxy, consulta la sezione Addebito istanza proxy nella documentazione sui prezzi di Cloud Load Balancing.

Bilanciatori del carico basati su Envoy e proxy Envoy Secure Web Proxy

Quando configuri sia un bilanciatore del carico basato su Envoy sia Secure Web Proxy nello stesso VPC, è importante tenere presente quanto segue:

  • Sia il bilanciatore del carico basato su Envoy sia Secure Web Proxy utilizzano indirizzi IP della stessa subnet solo proxy.

  • Per soddisfare i requisiti di indirizzo IP per entrambi i servizi, valuta la possibilità di utilizzare una subnet solo proxy più grande, ad esempio una subnet /22. Ciò contribuisce a garantire uno spazio di indirizzi sufficiente per entrambe le configurazioni.

  • Ti consigliamo di monitorare la capacità del proxy per tenere traccia del consumo di indirizzi IP. In questo modo si evita l'esaurimento della subnet solo proxy, che può interrompere i servizi.

Crea una subnet solo proxy

Devi creare subnet solo proxy per i bilanciatori del carico basati su Envoy, indipendentemente dal fatto che la rete sia in modalità automatica o personalizzata. La creazione di una subnet solo proxy è essenzialmente la stessa procedura della creazione di qualsiasi subnet, ad eccezione dell'aggiunta di alcuni flag.

Per una subnet solo proxy, --purpose deve essere impostato su REGIONAL_MANAGED_PROXY.

Non puoi riutilizzare una subnet esistente come subnet solo proxy. Devi creare una nuova subnet in ogni regione che ha un bilanciatore del carico basato su Envoy. Ciò è dovuto in parte al fatto che il subnets update comando non consente di modificare il campo --purpose di una subnet.

Prima di creare regole di forwarding per i bilanciatori del carico regionali, devi creare una subnet solo proxy da utilizzare per i proxy dei bilanciatori del carico. Se tenti di configurare un bilanciatore del carico senza prima creare una subnet solo proxy per la regione, la procedura di creazione del bilanciatore del carico non va a buon fine.

Console

  1. Nella console Trusted Cloud , vai alla pagina Reti VPC.
    Vai alla pagina Reti VPC
  2. Fai clic sul nome della rete VPC condiviso a cui vuoi aggiungere una subnet solo proxy.
  3. Fai clic su Aggiungi subnet.
  4. Inserisci un Nome.
  5. Seleziona una regione.
  6. Imposta Scopo su Proxy gestito a livello di regione.
  7. Inserisci un intervallo di indirizzi IP.
  8. Fai clic su Aggiungi.

gcloud

Il comando gcloud compute networks subnets create crea una subnet solo proxy.

gcloud compute networks subnets create SUBNET_NAME \
    --purpose=SUBNET_PURPOSE \
    --role=ACTIVE \
    --region=REGION \
    --network=VPC_NETWORK_NAME \
    --range=CIDR_RANGE

I campi sono definiti come segue:

  • SUBNET_NAME è il nome della subnet solo proxy.
  • SUBNET_PURPOSE è lo scopo della subnet. Imposta questo valore su REGIONAL_MANAGED_PROXY. REGIONAL_MANAGED_PROXYGLOBAL_MANAGED_PROXY
  • REGION è la regione della subnet solo proxy.
  • VPC_NETWORK_NAME è il nome della rete VPC che contiene la subnet.
  • CIDR_RANGE è l'intervallo di indirizzi IP principale della subnet. Devi utilizzare una subnet mask non superiore a 26 in modo che siano disponibili almeno 64 indirizzi IP per i proxy nella regione. La lunghezza consigliata della subnet mask è /23.

Per un esempio di configurazione completo, consulta Configurazione della subnet solo proxy.

Devi configurare una regola firewall per i backend in modo che accettino le connessioni dalla subnet solo proxy. Per un esempio di configurazione completo, inclusa la configurazione delle regole firewall, consulta quanto segue:

Disponibilità del proxy

A volte, le regioni Trusted Cloud non hanno una capacità proxy sufficiente per un nuovo bilanciatore del carico. In questo caso, la console Trusted Cloud fornisce un messaggio di avviso sulla disponibilità del proxy quando crei il bilanciatore del carico. Per risolvere il problema, puoi eseguire una delle seguenti operazioni:

  • Seleziona una regione diversa per il bilanciatore del carico. Questa può essere un'opzione pratica se hai backend in un'altra regione.
  • Seleziona una rete VPC che abbia già una subnet solo proxy allocata.
  • Attendi la risoluzione del problema di capacità.

Modificare le dimensioni o l'intervallo di indirizzi di una subnet solo proxy

Quando la quantità di traffico gestita dal bilanciatore del carico aumenta, potrebbe essere necessario aumentare le dimensioni della subnet solo proxy per consentire a un numero maggiore di proxy Envoy di alimentare i bilanciatori del carico.

Non puoi espandere l'intervallo di indirizzi IPv4 principale di una subnet solo proxy nello stesso modo in cui espanderesti l'intervallo di indirizzi IPv4 principale di una subnet normale (con il comando expand-ip-range). Invece, devi sostituire la subnet solo proxy con una nuova. La procedura di sostituzione funziona nel seguente modo:

  • Crea una nuova subnet solo proxy nella stessa regione e rete VPC della subnet solo proxy esistente (originale). Quando crei questa nuova subnet solo proxy, imposta il relativo role su BACKUP. Per ogni scopo della subnet solo proxy, Trusted Cloud consente l'esistenza di una subnet solo proxy ACTIVE e una BACKUP in una determinata regione e rete VPC.

  • Modifica le regole firewall di autorizzazione in entrata, applicabili ai tuoi backend, in modo che consentano le connessioni dagli intervalli di indirizzi IPv4 primari sia delle subnet solo proxy originali che di quelle nuove.

  • Imposta il ruolo della nuova subnet solo proxy su ACTIVE e specifica un periodo di svuotamento per consentire la terminazione delle connessioni tra i backend e i proxy Envoy nella subnet solo proxy originale. (Trusted Cloud imposta automaticamente il ruolo della subnet solo proxy originale su BACKUP quando imposti il ruolo della nuova subnet solo proxy su ACTIVE.)

  • Monitora lo stato della subnet solo proxy originale (consulta la scheda gcloud per ulteriori informazioni sul monitoraggio). Quando lo stato è READY, la subnet non viene più utilizzata, a condizione che il suo ruolo sia BACKUP. A questo punto, puoi modificare le regole firewall di autorizzazione in entrata per consentire le connessioni solo dall'intervallo di indirizzi IPv4 primario della nuova subnet solo proxy ed eliminare la subnet solo proxy originale.

Console

  1. Crea la nuova subnet solo proxy nella stessa regione e nella stessa rete VPC, specificando un intervallo di indirizzi IPv4 primario che soddisfi le tue esigenze. Imposta il ruolo della nuova subnet solo proxy su backup.

    1. Nella console Trusted Cloud , vai alla pagina Reti VPC.
      Vai alla pagina Reti VPC
    2. Fai clic sul nome della rete VPC condiviso a cui vuoi aggiungere una subnet solo proxy.
    3. Fai clic su Aggiungi subnet.
    4. Inserisci un Nome.
    5. Seleziona una regione.
    6. Imposta Scopo su Proxy gestito a livello di regione.
    7. Per Ruolo, seleziona Backup.
    8. Inserisci un intervallo di indirizzi IP.
    9. Fai clic su Aggiungi.
  2. Aggiorna le regole firewall di autorizzazione in entrata che si applicano alle VM o agli endpoint di backend in modo che includano gli intervalli di indirizzi IPv4 primari di entrambe le subnet solo proxy originali e nuove.

  3. Imposta il ruolo della nuova subnet solo proxy su attivo e specifica un timeout di svuotamento per consentire la terminazione delle connessioni tra i backend e la subnet solo proxy originale. Trusted Cloud imposta automaticamente il ruolo della subnet solo proxy originale su backup quando imposti il ruolo della nuova subnet solo proxy su attivo.

    1. Nella console Trusted Cloud , vai alla pagina Reti VPC.
      Vai alla pagina Reti VPC
    2. Fai clic sul nome della rete VPC condiviso che vuoi modificare.
    3. In Subnet solo proxy riservate per il bilanciamento del carico, individua la subnet di backup creata nel passaggio precedente.
    4. Fai clic su Attiva.
    5. Specifica un timeout di svuotamento facoltativo.
    6. Fai clic su Attiva la subnet.
  4. Dopo il timeout di svuotamento della connessione o dopo aver verificato che le connessioni alle VM o agli endpoint di backend non provengano da proxy nella subnet solo proxy originale, puoi procedere nel seguente modo:

    • Aggiorna le regole firewall di autorizzazione in entrata che si applicano alle VM o agli endpoint di backend in modo che includano l'intervallo di indirizzi IPv4 principale della sola nuova subnet solo proxy.
    • Elimina la subnet solo proxy originale.

gcloud

I seguenti passaggi mostrano come scambiare una subnet solo proxy esistente con una nuova subnet solo proxy. In tutti i passaggi seguenti:

  • ORIGINAL_PROXY_ONLY_SUBNET_NAME: il nome della subnet solo proxy esistente
  • ORIGINAL_PROXY_ONLY_SUBNET_RANGE: l'intervallo di indirizzi IPv4 primario della subnet solo proxy esistente in formato CIDR. Questo è un intervallo di indirizzi che hai scelto in precedenza.
  • NEW_PROXY_ONLY_SUBNET_NAME: il nome della nuova subnet solo proxy
  • NEW_PROXY_ONLY_SUBNET_RANGE: l'intervallo di indirizzi IPv4 primario della nuova subnet solo proxy in formato CIDR. Scegli un intervallo di indirizzi IPv4 per soddisfare le tue esigenze.
  • PROXY_ONLY_SUBNET_FIREWALL_RULE: il nome di una regola firewall VPC di autorizzazione in entrata che consente le connessioni dalle subnet solo proxy
  • REGION: la regione che contiene le subnet solo proxy originali e nuove
  • VPC_NETWORK_NAME: il nome della rete VPC della rete che contiene le subnet solo proxy originali e nuove
  1. Crea una nuova subnet solo proxy nella stessa regione e rete VPC utilizzando il comando gcloud compute networks subnets create con il flag --role=BACKUP.

    gcloud compute networks subnets create NEW_PROXY_ONLY_SUBNET_NAME \
       --purpose=SUBNET_PURPOSE \
       --role=BACKUP \
       --region=REGION \
       --network=VPC_NETWORK_NAME \
       --range=NEW_PROXY_ONLY_SUBNET_RANGE
    

    Sostituisci quanto segue:

    • SUBNET_PURPOSE: REGIONAL_MANAGED_PROXY o GLOBAL_MANAGED_PROXY a seconda del bilanciatore del carico che deve utilizzare la subnet solo proxy. Per ulteriori informazioni, vedi Bilanciatori del carico supportati.
  2. Aggiorna le regole firewall di autorizzazione in entrata che si applicano alle VM o agli endpoint di backend in modo che includano gli intervalli di indirizzi IPv4 primari di entrambe le subnet solo proxy originali e nuove.

    gcloud compute firewall-rules update PROXY_ONLY_SUBNET_FIREWALL_RULE \
      --source-ranges=ORIGINAL_PROXY_ONLY_SUBNET_RANGE,NEW_PROXY_ONLY_SUBNET_RANGE
    
  3. Imposta il ruolo della nuova subnet solo proxy su ACTIVE e specifica un timeout di svuotamento (--drain-timeout) per consentire la chiusura delle connessioni tra i backend e la subnet solo proxy originale.Trusted Cloud imposta automaticamente il ruolo della subnet solo proxy originale su BACKUP quando imposti il ruolo della nuova subnet solo proxy su ACTIVE.

    Per interrompere immediatamente le connessioni tra i backend e i proxy Envoy nella subnet solo proxy originale, imposta --drain-timeout su 0s.

    gcloud compute networks subnets update NEW_PROXY_ONLY_SUBNET_NAME \
       --region=REGION \
       --role=ACTIVE \
       --drain-timeout=CONNECTION_DRAINING_TIMEOUT
    

    Sostituisci quanto segue:

    • CONNECTION_DRAINING_TIMEOUT: il periodo di tempo, in secondi, per consentire la terminazione delle connessioni esistenti tra i backend e i proxy Envoy nella subnet solo proxy originale.
  4. Monitora lo stato della subnet solo proxy originale utilizzando il comando gcloud compute networks subnets describe.

    gcloud compute networks subnets describe ORIGINAL_PROXY_ONLY_SUBNET_NAME \
       --region=REGION
    

    Attendi il completamento dello scaricamento. Durante lo svuotamento, lo stato della subnet solo proxy originale è DRAINING. Potresti dover eseguire il comando describe alcune volte prima che lo stato della subnet solo proxy originale diventi READY.

  5. Dopo che la subnet solo proxy originale è stata READY con il ruolo BACKUP, la subnet non viene più utilizzata. Aggiorna le regole firewall di autorizzazione in entrata che si applicano alle VM o agli endpoint di backend in modo che includano l'intervallo di indirizzi IPv4 principale della nuova subnet solo proxy.

    gcloud compute firewall-rules update PROXY_ONLY_SUBNET_FIREWALL_RULE \
      --source-ranges=NEW_PROXY_ONLY_SUBNET_RANGE
    
  6. Elimina la subnet solo proxy originale.

    gcloud compute networks subnets delete ORIGINAL_PROXY_ONLY_SUBNET_NAME \
      --region=REGION
    

Eseguire la migrazione dello scopo di una subnet solo proxy

Se in precedenza hai creato una subnet solo proxy con --purpose=INTERNAL_HTTPS_LOAD_BALANCER, devi eseguire la migrazione dello scopo della subnet a REGIONAL_MANAGED_PROXY prima di poter creare altri bilanciatori del carico basati su Envoy nella stessa regione della rete VPC.

Console

Se utilizzi la Trusted Cloud console per creare il bilanciatore del carico, ti verrà chiesto di eseguire la migrazione dello scopo di una subnet solo proxy creata in precedenza da --purpose=INTERNAL_HTTPS_LOAD_BALANCER a REGIONAL_MANAGED_PROXY durante la creazione del bilanciatore del carico.

gcloud

Per modificare lo scopo di una subnet solo proxy esistente da --purpose=INTERNAL_HTTPS_LOAD_BALANCER a REGIONAL_MANAGED_PROXY, utilizza il seguente comando:

gcloud compute networks subnets update PROXY_ONLY_SUBNET \
    --purpose=REGIONAL_MANAGED_PROXY \
    --region=REGION

La migrazione dello scopo di una subnet solo proxy da --purpose=INTERNAL_HTTPS_LOAD_BALANCER a REGIONAL_MANAGED_PROXY non causa tempi di inattività. La modifica dovrebbe essere applicata quasi istantaneamente.

Eliminare una subnet solo proxy

L'eliminazione di una subnet solo proxy rilascia il relativo intervallo di indirizzi IP principali, in modo da poterlo utilizzare per un altro scopo. Trusted Cloud applica le seguenti regole quando riceve una richiesta di eliminazione di una subnet solo proxy:

  • Una subnet solo proxy attiva non può essere eliminata se è presente almeno un bilanciatore del carico regionale nella stessa regione e nella stessa rete VPC.

  • Una subnet solo proxy attiva non può essere eliminata se esiste una subnet solo proxy di backup nella stessa regione e nella stessa rete VPC.

    Se provi a eliminare una subnet solo proxy attiva prima di eliminare il backup, viene visualizzato il seguente messaggio di errore: "Utilizzo non valido delle risorse: impossibile eliminare la subnet ACTIVE perché esiste una subnet BACKUP".

In pratica, queste regole hanno il seguente effetto:

  • Se in una determinata regione e rete VPC non è definito alcun bilanciatore del carico regionale, puoi eliminare le subnet solo proxy in quella regione. Se esiste una subnet solo proxy di backup, devi prima eliminarla prima di poter eliminare la subnet solo proxy attiva.

  • Se hai almeno un bilanciatore del carico regionale definito in una determinata regione e rete VPC, non puoi eliminare la subnet solo proxy attiva. Tuttavia, puoi promuovere una subnet solo proxy di backup al ruolo attivo, che declassa automaticamente la subnet solo proxy attiva in precedenza al ruolo di backup. Una volta svuotate le connessioni, puoi eliminare la subnet solo proxy di backup (attiva in precedenza).

Per saperne di più, consulta la sezione sull'eliminazione delle subnet nella documentazione sulla rete VPC.

Limitazioni

Si applicano i seguenti vincoli alle subnet solo proxy:

  • Non puoi avere sia una subnet INTERNAL_HTTPS_LOAD_BALANCER sia una subnet REGIONAL_MANAGED_PROXY nella stessa rete e regione, così come non puoi avere due proxy REGIONAL_MANAGED_PROXY o due proxy INTERNAL_HTTPS_LOAD_BALANCER.

  • Puoi creare una sola subnet solo proxy attiva e una di backup in ogni regione in ogni rete VPC.

  • Non puoi creare una subnet solo proxy di backup a meno che tu non abbia già creato una subnet solo proxy attiva in quella regione e rete.

  • Puoi modificare il ruolo di una subnet solo proxy da backup ad attiva aggiornando la subnet. Quando lo fai, Trusted Cloud cambia automaticamente la subnet solo proxy attiva in precedenza in backup. Non puoi impostare esplicitamente il ruolo di una subnet solo proxy per il backup aggiornandola.

  • Durante il periodo di svuotamento della connessione di una subnet solo proxy (--drain-timeout), non puoi modificare il ruolo di una subnet solo proxy da backup ad attiva.

  • Le subnet solo proxy non supportano i log di flusso VPC.

Passaggi successivi