Regole di forwarding del bilanciatore del carico di rete passthrough interno che utilizzano un indirizzo IP comune

I bilanciatori del carico di rete passthrough interni sono bilanciatori del carico regionali che consentono di eseguire e scalare i servizi dietro un indirizzo IP interno accessibile solo alle istanze di macchine virtuali (VM) interne.

Questa pagina illustra l'uso di più regole di forwarding con lo stesso indirizzo IP. Per informazioni generali sui bilanciatori del carico di rete passthrough interni, consulta la Panoramica del bilanciatore del carico di rete passthrough interno.

Con le regole di forwarding interno, puoi utilizzare un indirizzo IP interno condiviso per un massimo di dieci regole di forwarding. Puoi utilizzare TCP o UDP come protocollo della regola di forwarding e assegnare fino a cinque porte alla regola di forwarding oppure specificare --ports=ALL per utilizzare tutte le porte. Se vuoi utilizzare il protocollo L3_DEFAULT, devi utilizzare tutte le porte con l'opzione --ports=ALL.

Con combinazioni univoche di protocollo e porte, puoi:

  • Crea 50 porte TCP univoche con ogni regola di forwarding utilizzando il protocollo TCP.

    Se una regola di forwarding è configurata in modo da utilizzare il protocollo TCP e tutte le porte, nessun'altra regola di forwarding che utilizza il protocollo TCP può utilizzare lo stesso indirizzo IP condiviso.

  • Crea 50 porte UDP univoche con ogni regola di forwarding utilizzando il protocollo UDP.

    Se una regola di forwarding è configurata in modo da utilizzare il protocollo UDP e tutte le porte, nessun'altra regola di forwarding che utilizza il protocollo UDP può utilizzare lo stesso indirizzo IP condiviso.

  • Crea 50 combinazioni univoche di porte TCP e UDP e ogni regola di forwarding utilizza il protocollo TCP o UDP.

  • Fai riferimento a un servizio di backend comune (un unico bilanciatore del carico) o a più servizi di backend (più bilanciatori del carico che condividono lo stesso indirizzo IP).

  • Utilizza tutte le porte quando configuri una regola di forwarding con il protocollo L3_DEFAULT. Per un indirizzo IP può esistere una sola regola di forwarding L3_DEFAULT, che può essere condivisa con altre regole di forwarding TCP e UDP, se necessario.

Quando le regole di forwarding hanno protocolli diversi, devi avere anche due servizi di backend diversi. Un singolo bilanciatore del carico di rete passthrough interno funziona per il traffico TCP o UDP, non per entrambi, perché ha un unico servizio di backend che utilizza solo uno di questi protocolli.

Matrici decisionali per le regole di forwarding

Utilizza le seguenti tabelle per progettare il deployment.

Singolo bilanciatore del carico di rete passthrough interno

Un singolo servizio di backend supporta TCP o UDP, non entrambi.

Se hai bisogno di più regole di forwarding, calcola il numero di regole di forwarding necessarie utilizzando la formula ⌈total number of ports / 5⌉, dove ⌈⌉ è la funzione massima (minimo numero intero) e significa arrotondare per eccesso.

Ad esempio, supponi di aver bisogno di 26 porte TCP su un indirizzo IP del bilanciatore del carico. Se non vuoi creare una singola regola di forwarding utilizzando --ports=ALL, devi creare sei regole di forwarding perché 26 / 5 = 5 with a remainder of 1.

Configurazione frontend prevista Numero di regole di forwarding obbligatorie Flag --purpose=SHARED_LOADBALANCER_VIP obbligatorio per l'indirizzo IP Specifica della porta della regola di forwarding
Un solo indirizzo IP, il traffico su tutte le porte Una regola di forwarding No --ports=ALL
Un solo indirizzo IP, il traffico su porte specifiche

Per cinque porte o meno:
una regola di forwarding

Per sei o più porte:
più regole di forwarding

Per un massimo di cinque porte: no

Per sei o più porte: sì

Imposta --ports su un insieme di massimo cinque numeri di porta contigui o non contigui.
Più indirizzi IP, traffico su tutte le porte Una regola di forwarding per indirizzo IP No --ports=ALL
Più indirizzi IP, traffico su porte specifiche Almeno una regola di forwarding per indirizzo IP

Se utilizzi massimo cinque porte per indirizzo IP: no

Se utilizzi sei o più porte per indirizzo IP: sì

Imposta --ports su un insieme di massimo cinque numeri di porta contigui o non contigui.

Due bilanciatori del carico di rete passthrough interni

Quando hai due bilanciatori del carico di rete passthrough interni, puoi avere due servizi di backend, uno per il traffico TCP e l'altro per il traffico UDP.

Se hai bisogno di più regole di forwarding, calcola il numero di regole di forwarding necessarie utilizzando la seguente formula, dove ⌈⌉ è la funzione massima (meno numero intero) e rappresenta l'arrotondamento per eccesso:

 ⌈total number of TCP ports / 5⌉

 ⌈total number of UDP ports / 5⌉

Ad esempio, supponiamo che siano necessarie 26 porte TCP e 12 porte UDP. Devi creare nove regole di forwarding:

  • 26 / 5 = 5 with a remainder of 1, sono necessarie sei regole di forwarding per le porte TCP.
  • 12 / 5 = 2 with a remainder of 2, quindi sono necessarie tre regole di forwarding per le porte UDP.
Configurazione frontend prevista Numero di regole di forwarding obbligatorie Flag --purpose=SHARED_LOADBALANCER_VIP obbligatorio per l'indirizzo IP Specifica della porta della regola di forwarding
Un solo indirizzo IP, il traffico su tutte le porte Due regole di forwarding: una per TCP e una per UDP Poiché la regola di forwarding TCP e la regola di forwarding UDP devono condividere un singolo indirizzo IP: sì --ports=ALL
Un solo indirizzo IP, il traffico su porte specifiche

Per un massimo di cinque porte TCP e un massimo di cinque porte UDP: due regole di forwarding: una per TCP e una per UDP

Per sei o più porte TCP o UDP: più regole di forwarding, in cui ogni regola di forwarding supporta un protocollo e un massimo di cinque porte

Imposta --ports su un insieme di massimo cinque numeri di porta contigui o non contigui.
Più indirizzi IP, traffico su tutte le porte, TCP o UDP

Almeno due regole di forwarding: una per TCP con un indirizzo IP e una per UDP con un indirizzo IP diverso

Tre o più regole di forwarding se ti servono tre o più indirizzi IP

No --ports=ALL
Indirizzi IP multipli, traffico su porte specifiche, TCP o UDP

Almeno due regole di forwarding: una per TCP con un indirizzo IP e una per UDP con un indirizzo IP diverso

Più di due regole di forwarding, se ne hai bisogno:

  • Più di due indirizzi IP
  • Più di cinque porte per il traffico TCP su un indirizzo IP o più di cinque porte per il traffico UDP su un indirizzo IP

Per un indirizzo IP con massimo cinque porte TCP e un indirizzo IP con massimo cinque porte UDP: no

Per sei o più porte TCP o UDP: sì

Imposta --ports su un insieme di massimo cinque numeri di porta contigui o non contigui.

Limitazioni

  • Due o più regole di forwarding con lo stesso indirizzo IP e protocollo non possono avere porte sovrapposte. Ad esempio:
    • Quando configuri la regola di forwarding con il protocollo TCP e la porta 80, non puoi configurare un'altra regola di forwarding per gestire quel protocollo e quella porta. Ad esempio, non puoi creare un'altra regola di forwarding per gestire le porte TCP 80, 81 e 90.
    • Quando configuri la regola di forwarding per TCP e per le porte 80, 8080 e 90, non puoi configurare un'altra regola di forwarding per TCP che userebbe tutte le porte.
  • Quando due o più regole di forwarding condividono lo stesso indirizzo IP utilizzando il flag --purpose=SHARED_LOADBALANCER_VIP, il protocollo può essere impostato su L3_DEFAULT al massimo per una di queste.

Casi d'uso

Sono possibili molti tipi diversi di deployment. I seguenti esempi utilizzano un indirizzo IP che accetta il traffico su porte specifiche per due bilanciatori del carico.

Esempio 1

Questo esempio utilizza diverse regole di forwarding con i seguenti parametri:

  • Lo stesso indirizzo IP (10.1.1.1)
  • Protocolli diversi
  • Servizi di backend separati a cui punta ogni regola di forwarding
  • Protocolli corrispondenti: il protocollo di ogni servizio di backend corrisponde a quello della regola di forwarding corrispondente
Regole di forwarding diverse, stesso indirizzo IP, protocolli e porte diversi.
Regole di forwarding diverse, stesso indirizzo IP, protocolli e porte diversi (fai clic per ingrandire).

Esempio 2

Questo esempio utilizza diverse regole di forwarding con i seguenti parametri:

  • Lo stesso indirizzo IPv4 (10.1.1.1)
  • Lo stesso protocollo
  • Un insieme diverso di porte numerate in ogni regola di forwarding
Regole di forwarding diverse, stesso indirizzo IP, stesso protocollo, più di cinque porte numerate.
Regole di forwarding diverse, stesso indirizzo IP, stesso protocollo, più di cinque porte numerate (fai clic per ingrandire).

Passaggi di configurazione

Puoi creare più regole di forwarding interno che hanno lo stesso indirizzo IP se esegui entrambe le seguenti operazioni:

  1. Crea un indirizzo IP interno statico (prenotato) da utilizzare per le regole di forwarding.
  2. Imposta il flag --purpose sull'indirizzo IP interno condiviso sul valore SHARED_LOADBALANCER_VIP.

Per un esempio di configurazione, consulta Accettare il traffico su più porte utilizzando due regole di forwarding.