Regole di inoltro 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 a livello di regione che ti consentono di eseguire e scalare i servizi utilizzando un indirizzo IP interno a cui possono accedere solo le istanze di macchine virtuali (VM) interne.

Questa pagina illustra l'utilizzo di più regole di inoltro con lo stesso indirizzo IP. Per informazioni generali sui bilanciatori del carico di rete passthrough interni, consulta la panoramica dei bilanciatori del carico di rete passthrough interni.

Con le regole di inoltro interno, puoi utilizzare un indirizzo IP interno condiviso in fino a dieci regole di inoltro. Puoi utilizzare TCPo UDP per il 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 protocolli e porte, puoi:

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

    Se una regola di forwarding è configurata per 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 per 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, con ogni regola di inoltro che utilizza il protocollo TCP o UDP.

  • Fai riferimento a un servizio di backend comune (un singolo 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. Può esistere una sola regola di forwarding L3_DEFAULT per un indirizzo IP, che può essere condivisa con altre regole di forwarding TCP e UDP, se necessario.

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

Matrici di decisione per le regole di forwarding

Utilizza le tabelle seguenti per progettare il deployment.

Bilanciatore del carico di rete passthrough interno singolo

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

Quando hai bisogno di più regole di inoltro, calcola il numero di regole di inoltro necessarie utilizzando la formula ⌈total number of ports / 5⌉, dove ⌈⌉ è la funzione di soffitto (intero minimo) e indica il taglio per eccesso.

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

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

Per cinque o meno porte:
una regola di forwarding

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

Per cinque o meno 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 cinque o meno 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.

Quando hai bisogno di più regole di inoltro, calcola il numero di regole di inoltro di cui hai bisogno utilizzando la seguente formula, dove⌈⌉ è la funzione di soffitto (intero minimo) e indica il numero intero successivo:

 ⌈total number of TCP ports / 5⌉

 ⌈total number of UDP ports / 5⌉

Ad esempio, supponiamo che tu abbia bisogno di 26 porte TCP e 12 porte UDP. Devi creare nove regole di forwarding:

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

Per cinque o meno porte TCP e cinque o meno porte UDP: due regole di inoltro, una per TCP e una per UDP

Per sei o più porte TCP o UDP: più regole di inoltro, in cui ogni regola di forwarding supporta un protocollo e cinque o meno 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 inoltro: una per TCP che utilizza un indirizzo IP e una per UDP che utilizza un indirizzo IP diverso

Tre o più regole di inoltro se hai bisogno di tre o più indirizzi IP

No --ports=ALL
Più indirizzi IP, traffico su porte specifiche, TCP o UDP

Almeno due regole di inoltro: una per TCP che utilizza un indirizzo IP e una per UDP che utilizza un indirizzo IP diverso

Più di due regole di inoltro se hai bisogno di una delle seguenti opzioni:

  • 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 inoltro 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 servire quel protocollo e la 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 il protocollo TCP e le porte 80, 8080 e 90, non puoi configurare un'altra regola di forwarding per il protocollo TCP che utilizzi tutte le porte.
  • Quando due o più regole di inoltro condividono lo stesso indirizzo IP utilizzando il flag --purpose=SHARED_LOADBALANCER_VIP, al massimo una di queste può avere il protocollo impostato su L3_DEFAULT.

Casi d'uso

Sono possibili molti tipi diversi di implementazioni. 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 inoltro con i seguenti parametri:

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

Esempio 2

Questo esempio utilizza diverse regole di inoltro 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 inoltro diverse, stesso indirizzo IP, stesso protocollo, più di cinque porte numerate.
Regole di inoltro diverse, stesso indirizzo IP, stesso protocollo, più di cinque porte numerate (fai clic per ingrandire).

Passaggi di configurazione

Puoi creare più regole di inoltro interno con lo stesso indirizzo IP se esegui entrambe le seguenti operazioni:

  1. Crea un indirizzo IP interno statico (prenotato) da utilizzare per le regole di inoltro.
  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 inoltro.