Attivazione della modalità di bilanciamento del carico manuale

I cluster Anthos su cluster VMware (GKE On-Prem) possono essere eseguiti con una delle tre modalità di bilanciamento del carico: integrata, in bundle o manuale. Con la modalità integrata, i cluster Anthos su VMware utilizzano il bilanciatore del carico BIG-IP di F5. Con la modalità in bundle, i cluster Anthos su VMware forniscono e gestiscono il bilanciatore del carico. Non devi ottenere una licenza per un bilanciatore del carico e la quantità di configurazione che devi eseguire è minima. Con la modalità manuale, i cluster Anthos su VMware utilizzano un bilanciatore del carico diverso a tua scelta. La modalità di bilanciamento del carico manuale richiede più configurazione rispetto alla modalità integrata. In questa pagina vengono descritti i passaggi da seguire se scegli di utilizzare la modalità di bilanciamento del carico manuale.

Il bilanciatore del carico Citrix è un esempio di bilanciatore del carico che puoi utilizzare con la modalità di bilanciamento del carico manuale.

In questo argomento metti da parte gli indirizzi IP e i valori nodePort per utilizzarli in un secondo momento. L'idea è quella di scegliere gli indirizzi IP e i valori nodePort che vuoi utilizzare per il bilanciamento del carico e per i nodi del cluster. Tuttavia, a questo punto non devi fare nulla con gli indirizzi e i valori nodePort. In seguito, quando sarà tutto pronto per creare i tuoi cluster, saranno necessari gli indirizzi e i valori nodePort per compilare il tuo file di configurazione del cluster di amministrazione e il file di configurazione del cluster utente. Avrai anche bisogno di indirizzi e valori nodePort quando configuri manualmente il bilanciatore del carico.

Mettere da parte gli indirizzi IP del nodo

Con la modalità di bilanciamento del carico manuale, non puoi utilizzare il DHCP. Devi specificare gli indirizzi IP statici per i nodi del cluster. Devi riservare un numero di indirizzi sufficiente per i nodi nel cluster di amministrazione e i nodi in tutti i cluster utente che intendi creare. Per i dettagli sul numero di indirizzi IP dei nodi da riservare, consulta le pagine relative alla creazione di un cluster di amministrazione e alla creazione di un cluster utente.

Mettere da parte gli indirizzi IP virtuali

Indipendentemente dal fatto che utilizzi la modalità di bilanciamento del carico integrata, in bundle o manuale, devi impostare diversi indirizzi IP virtuali (VIP) che intendi utilizzare per il bilanciamento del carico. Questi VIP consentono ai client esterni di raggiungere i server API di Kubernetes, il servizio in entrata e il servizio aggiuntivo per l'integrazione dei log.

Metti da parte i seguenti VIP:

  • VIP per il server API di Kubernetes del cluster di amministrazione. Nel file di configurazione del cluster di amministrazione, questo è denominato controlPlaneVIP.

  • VIP per il servizio aggiuntivo per l'aggregazione dei log, che viene eseguito nel cluster di amministrazione. Nel file di configurazione del cluster di amministrazione, è denominato addonsVIP.

  • Per ogni cluster utente che intendi creare, un VIP per il server API Kubernetes del cluster utente. Nel file di configurazione del cluster utente, questo è denominato controlPlaneVIP.

  • Per ogni cluster utente che intendi creare, un VIP per il servizio in entrata nel cluster utente. Nel file di configurazione del cluster utente, questo è denominato ingressVIP.

Mettere da parte i valori nodePort

Nei cluster Anthos su VMware, il server API di Kubernetes, il servizio in entrata e il servizio aggiuntivo per l'aggregazione dei log sono esposti dai servizi Kubernetes. Con la modalità di bilanciamento del carico manuale, devi scegliere i tuoi valori nodePort per questi Servizi. Scegli valori compresi tra 30.000 e 32.767. Dopo aver scelto i valori nodePort, mettili da parte per un secondo momento quando compili i file di configurazione del cluster.

Scegli e metti da parte i seguenti valori di nodePort.

  • Per il VIP che hai riservato al server API Kubernetes del cluster di amministrazione, metti da parte un valore nodePort.

  • Per il VIP che hai riservato al servizio di componenti aggiuntivi, metti un valore nodePort.

  • Per ogni VIP che hai riservato ai server API di Kubernetes dei cluster utente, metti da parte un valore nodePort.

  • Per ogni VIP che hai riservato al servizio in entrata di un cluster utente, metti da parte due valori nodePort: uno per il traffico HTTP e uno per il traffico HTTPS.

Ad esempio, supponiamo che tu abbia un cluster di amministrazione e due cluster utente. Dovresti scegliere e mettere da parte i seguenti valori nodePort:

  • Un valore nodePort per il server API Kubernetes del cluster di amministrazione.

  • Un valore nodePort per il servizio aggiuntivo nel cluster di amministrazione.

  • Per ciascuno dei due cluster utente, un valore nodePort per il server API Kubernetes.

  • Per ciascuno dei due cluster utente, un valore nodePort per il traffico HTTP verso il servizio in entrata.

  • Per ciascuno di due cluster utente, un valore nodePort per il traffico HTTPS verso il servizio in entrata.

Nell'esempio precedente, dovresti mettere da parte otto valori nodePort.

Compilazione dei file di configurazione del cluster

Preparare un file di configurazione per il cluster di amministrazione e un file di configurazione per ciascuno dei tuoi cluster utente.

In ogni file di configurazione del cluster:

  • Imposta il valore di loadBalancer.kind su ManualLB.

  • Imposta il valore di network.ipMode su static.

  • Imposta network.ipBlockFilePath sul percorso del file di blocco IP del cluster.

  • Aggiorna la sezione loadBalancer.manualLB con i valori nodePort che hai scelto per il cluster.

L'esempio seguente mostra una parte di un file di configurazione del cluster utente:

network:
  ipMode:
    type: static
    ipBlockFilePath: "ipblock1.yaml"
loadBalancer:
  kind: ManualLB
  manualLB:
    ingressHTTPNodePort: 30243
    ingressHTTPSNodePort: 30879
    konnectivityServerNodePort: 30563
    controlPlaneNodePort: 30562

Configura il tuo bilanciatore del carico

Cluster di amministrazione

Nel file di configurazione del cluster di amministrazione, hai compilato quanto segue:

  • loadBalancer.vips.controlPlaneVIP
  • loadBalancer.vips.addonsVIP
  • loadBalancer.manualLB.controlPlaneNodePort
  • loadBalancer.manualLB.addonsNodePort
  • network.ipMode.ipBlockFilePath

Nel file IP Block del cluster di amministrazione, hai compilato un elenco di indirizzi IP statici da utilizzare per i nodi del cluster di amministrazione.

Utilizza la console di gestione o gli strumenti del bilanciatore del carico per configurare le seguenti mappature nel bilanciatore del carico. Il modo in cui esegui questa operazione dipende dal bilanciatore del carico:

  • (controlPlaneVIP:443) -> (NODE_IP_ADDRESSES:controlPlaneNodePort)

  • (addonsVIP:8443) -> (NODE_IP_ADDRESSES:addonsNodewPort)

Cluster utente

Nei file di configurazione del cluster utente, hai compilato quanto segue:

  • loadBalancer.vips.controlPlaneVIP
  • loadBalancer.vips.ingressVIP
  • loadBalancer.manualLB.controlPlaneNodePort
  • loadBalancer.manualLB.konnectivityServerNodePort
  • loadBalancer.manualLB.ingressHTTPNodePort
  • loadBalancer.manualLB.ingressHTTPSNodePort
  • network.ipMode.ipBlockFilePath

Nel file IP Block del tuo cluster utente, hai compilato un elenco di indirizzi IP statici da utilizzare per i nodi del cluster utente.

Utilizza la console di gestione o gli strumenti del bilanciatore del carico per configurare le seguenti mappature nel bilanciatore del carico. Il modo in cui esegui questa operazione dipende dal bilanciatore del carico:

  • (controlPlaneVIP:443) -> (NODE_IP_ADDRESSES:controlPlaneNodePort)

  • (controlPlaneVIP:8132) -> (NODE_IP_ADDRESSES:konnectivityServerNodePort)

  • (ingressVIP:80) -> (NODE_IP_ADDRESSES:ingressHTTPNodePort)

  • (ingressVIP:443) -> (NODE_IP_ADDRESSES:ingressHTTPSNodePort)

Oltre ai requisiti precedenti, ti consigliamo di configurare il bilanciatore del carico per reimpostare le connessioni client quando rileva un errore del nodo di backend. Senza questa configurazione, i client del server API Kubernetes possono smettere di rispondere per diversi minuti in caso di interruzione di un'istanza del server, il che può causare instabilità nel piano di controllo di Kubernetes.

  • Con F5 BIG-IP, questa impostazione è denominata Azione in corso e abbassata di servizio nella pagina di configurazione del pool di backend.
  • Con HAProxy, questa impostazione viene chiamata sessioni di arresto on-marked-down nella configurazione del server di backend.
  • Se utilizzi un bilanciatore del carico diverso, consulta la documentazione per trovare l'impostazione equivalente.

Assistenza per il bilanciamento del carico manuale

Google non fornisce assistenza per i bilanciatori del carico configurati utilizzando la modalità di bilanciamento del carico manuale. In caso di problemi con il bilanciatore del carico, contatta il fornitore del bilanciatore del carico.

Passaggi successivi