Questo documento illustra le opzioni di bilanciamento del carico supportate da GKE su VMware.
Sono disponibili diverse opzioni di bilanciamento del carico. Scegli l'opzione che sembra più adatta al tuo ambiente e alle tue esigenze. Ad esempio, potresti scegliere un'opzione che richiede una configurazione minima. In alternativa, puoi scegliere un'opzione in linea con i bilanciatori del carico già presenti nella tua rete.
Di seguito sono riportate le opzioni disponibili:
MetalLB in bundle
Seesaw in bundle (non supportato per i cluster utente che utilizzano Controlplane V2).
F5 BIG-IP integrato (non supportato per i cluster utente che utilizzano Controlplane V2).
F5 BIG-IP - configurazione manuale
Configurazione manuale di Citrix
Qualsiasi bilanciatore del carico che configuri manualmente
MetalLB
Il bilanciatore del carico MetalLB è integrato in GKE su VMware ed è particolarmente facile da configurare. I componenti MetalLB vengono eseguiti sui nodi del cluster, così non devi creare VM separate per il bilanciatore del carico.
Puoi configurare MetalLB per la gestione degli indirizzi IP. Ciò significa che, quando uno sviluppatore crea un servizio di tipo LoadBalancer
, non deve specificare un VIP per il servizio. MetalLB sceglie automaticamente un VIP da un pool di indirizzi che fornisci in anticipo.
Per ulteriori informazioni, consulta Bilanciamento del carico in bundle con MetalLB.
Seesaw
Il bilanciatore del carico di Seesaw è integrato in GKE su VMware e richiede una configurazione manuale leggermente più elevata di quella richiesta da MetalLB. Il bilanciatore del carico di Seesaw viene eseguito su VM separate dai nodi del cluster. Il bilanciatore del carico di Seesaw non è supportato per i cluster utente che utilizzano Controlplane V2. Ti consigliamo di usare MetalLB.
Per ulteriori informazioni, consulta Bilanciamento del carico in bundle con Seesaw.
F5 BIG-IP
Il bilanciatore del carico BIG-IP di F5 non è incluso in GKE su VMware, quindi devi ottenere una licenza e configurare il bilanciatore del carico separatamente dall'installazione di GKE su VMware.
Puoi configurare GKE su VMware per l'integrazione con F5 BIG-IP nel seguente senso: quando uno sviluppatore crea un servizio di tipo LoadBalancer
e specifica un VIP per il servizio, GKE su VMware configurerà automaticamente il VIP sul bilanciatore del carico.
L'integrazione BIG-IP di F5 non è supportata per i cluster utente che utilizzano Controlplane V2. Puoi invece utilizzare F5 BIG-IP come bilanciatore del carico configurato manualmente. In questo caso, GKE su VMware non configura automaticamente i VIP di servizio.
Citrix
Documentiamo come configurare il bilanciatore del carico Citrix come esempio di configurazione manuale di un bilanciatore del carico. Con qualsiasi bilanciatore del carico che configuri manualmente, devi configurare le mappature tra VIP, indirizzi dei nodi e valori nodePort
.
Per informazioni su come eseguire questa operazione per il bilanciatore del carico Citrix, consulta
Bilanciamento del carico manuale con Citrix.
Bilanciamento del carico manuale in generale
Puoi utilizzare qualsiasi bilanciatore del carico di tua scelta, purché lo configuri manualmente.
Con qualsiasi bilanciatore del carico che configuri manualmente, devi configurare le mappature tra VIP, indirizzi dei nodi e valori nodePort
. Per informazioni generali su come eseguire questa operazione, consulta Bilanciamento del carico manuale.
Lasciare da parte gli indirizzi IP virtuali
Indipendentemente dal bilanciatore del carico che utilizzi, devi mettere da parte diversi indirizzi IP virtuali (VIP) che intendi utilizzare per il bilanciamento del carico.
Per il tuo cluster di amministrazione, devi mettere da parte i seguenti VIP:
- VIP per server API Kubernetes
- VIP per i componenti aggiuntivi
Per ogni cluster utente che intendi creare, devi mettere da parte i seguenti VIP:
- VIP per il server API Kubernetes
- VIP per il servizio in entrata
Ad esempio, supponi di voler avere due cluster utente. Poi avrai bisogno di due VIP per il cluster di amministrazione e due VIP per ciascuno dei tuoi cluster utente. Quindi dovreste mettere da parte sei VIP.
Indirizzi IP dei nodi
Se scegli una delle seguenti opzioni di bilanciamento del carico, puoi utilizzare indirizzi IP statici per i nodi del cluster oppure fare in modo che i nodi del cluster ricevano gli indirizzi IP da un server DHCP:
- MetalLB
- Seesaw
- F5 BIG-IP integrato
Se scegli un'opzione di bilanciamento del carico manuale, devi utilizzare indirizzi IP statici per i nodi del cluster.
Se scegli di utilizzare indirizzi IP statici, devi riservare un numero sufficiente di indirizzi per i nodi nel cluster di amministrazione e per quelli in tutti i cluster utente che intendi creare. Per maggiori dettagli sul numero di indirizzi IP dei nodi da conservare, consulta Pianificare gli indirizzi IP.
Creazione di servizi nel cluster
Quando il cluster utente è in esecuzione, gli sviluppatori di applicazioni potrebbero creare servizi Kubernetes ed esporli a client esterni.
Per i servizi di tipo LoadBalancer
, i VIP devono essere configurati nel bilanciatore del carico. La modalità di configurazione di questi VIP dipende dalla scelta del bilanciatore del carico.
MetalLB
Nel file di configurazione del cluster utente, specifichi i pool di indirizzi che il controller MetalLB utilizza per assegnare VIP ai servizi. Quando uno sviluppatore crea un servizio di tipo LoadBalancer
, il controller MetalLB sceglie un indirizzo da un pool e assegna l'indirizzo al servizio. Lo sviluppatore non deve specificare un valore per loadBalancerIP
nel manifest del servizio.
Seesaw
Quando uno sviluppatore crea un servizio di tipo LoadBalancer
, specifica un
indirizzo IP esterno. Ad esempio:
spec: type: LoadBalancer loadBalancerIP: 192.168.100.1
GKE su VMware configura automaticamente l'indirizzo specificato su un'interfaccia di rete di una VM Seesaw.
F5 BIG-IP integrato
Quando uno sviluppatore crea un servizio di tipo LoadBalancer
, specifica un
indirizzo IP esterno. Ad esempio:
spec: type: LoadBalancer loadBalancerIP: 192.168.100.2
GKE su VMware configura automaticamente l'indirizzo specificato su un'interfaccia di rete del bilanciatore del carico BIG-IP di F5.
Bilanciatore del carico configurato manualmente
Se hai scelto un'opzione di bilanciamento del carico manuale, gli sviluppatori possono seguire questi passaggi per esporre un servizio a client esterni:
Crea un servizio di tipo NodePort.
Scegli un VIP per il servizio.
Configurare manualmente il bilanciatore del carico in modo che il traffico inviato al VIP sia inoltrato al servizio.