Los clústeres de Anthos alojados en VMware (GKE On-Prem) pueden ejecutarse con uno de los tres modos de balanceo de cargas: integrado, empaquetado o manual. Con el modo integrado, los clústeres de Anthos alojados en VMware usan el balanceador de cargas F5 BIG-IP. Con el modo empaquetado, clústeres de Anthos alojados en VMware proporciona y administra el balanceador de cargas. No es necesario que obtengas una licencia para un balanceador de cargas, y la configuración que debes realizar es mínima. Con el modo manual, clústeres de Anthos alojados en VMware usa un balanceador de cargas diferente. El modo de balanceo de cargas manual requiere que implementes más opciones de configuración que el modo integrado. En esta página, se describen los pasos que debes seguir si decides usar el modo de balanceo de cargas manual.
El balanceador de cargas de Citrix es un balanceador de cargas de ejemplo que puedes usar con el modo de balanceo de cargas manual.
En este artículo, se reservan las direcciones IP y los valores de nodePort
para usarlos más adelante.
La idea es que elijas las direcciones IP y los valores de nodePort
que deseas usar para el balanceo de cargas y los nodos del clúster. Sin embargo, en este momento, no debes hacer nada con las direcciones y los valores de nodePort
. Más adelante, cuando estés listo para crear los clústeres, necesitarás las direcciones y los valores de nodePort
a fin de completar el archivo de configuración del clúster de administrador y el archivo de configuración del clúster de usuario.
También necesitarás las direcciones y los valores de nodePort
cuando configures el balanceador de cargas de forma manual.
Reserva las direcciones IP de los nodos
Con el modo de balanceo de cargas manual, no puedes usar DHCP. Debes especificar direcciones IP estáticas para los nodos del clúster. Debes reservar direcciones suficientes para los nodos del clúster de administrador y los nodos de todos los clústeres de usuario que deseas crear. Para obtener más información sobre la cantidad de direcciones IP de nodos que debes reservar, consulta Crea un clúster de administrador y Crea un clúster de usuario.
Reserva las direcciones IP virtuales
Ya sea que uses el modo de balanceo de cargas integrado, por paquetes o manual, debes reservar varias direcciones IP virtuales (VIP) que desees usar para el balanceo de cargas. Estas VIP permiten que los clientes externos accedan a los servidores de la API de Kubernetes, el servicio de entrada y el servicio de complementos para la integración de registros.
Reserva las siguientes VIP:
Es la VIP para el servidor de la API de Kubernetes del clúster de administrador. En el archivo de configuración del clúster de administrador, se llama
controlPlaneVIP
.VIP para un servicio de complementos de la agregación de registros, que se ejecuta en el clúster de administrador. En el archivo de configuración del clúster de administrador, se llama
addonsVIP
.Por cada clúster de usuario que desees crear, una VIP para el servidor de la API de Kubernetes del clúster de usuario. En el archivo de configuración del clúster de usuario, se llama
controlPlaneVIP
.Por cada clúster de usuario que desees crear, una VIP para el servicio de entrada en el clúster de usuario. En el archivo de configuración del clúster de usuario, se llama
ingressVIP
.
Reserva los valores de nodePort
En los clústeres de Anthos alojados en VMware, los Services de Kubernetes exponen el servidor de la API de Kubernetes, el servicio de entrada y el servicio de complementos para la agregación de registros.
Con el modo de balanceo de cargas manual, debes elegir tus propios valores de nodePort
para estos Services. Elige valores en el rango de 30,000 a 32,767. Después de elegir los valores de nodePort
, resérvalos para usarlos más adelante cuando completes los archivos de configuración del clúster.
Elige y reserva los siguientes valores de nodePort
.
En la VIP que reservaste para el servidor de la API de Kubernetes del clúster de administrador, reserva un valor de
nodePort
.En el caso de la VIP que reservaste para el servicio del complemento, reserva un valor de
nodePort
.Por cada VIP que hayas reservado para los servidores de la API de Kubernetes de clústeres de usuarios, reserva un valor de
nodePort
.Por cada VIP que hayas reservado para el servicio de entrada de un clúster de usuario, reserva dos valores de
nodePort
: uno para el tráfico de HTTP y otro para el tráfico de HTTPS.
Por ejemplo, supongamos que deseas tener un clúster de administrador y dos clústeres de usuario.
Deberás elegir y reservar los siguientes valores de nodePort
:
Un valor de
nodePort
para el servidor de la API de Kubernetes del clúster de administradorUn valor de
nodePort
para el servicio de complementos en el clúster de administradorEn cada uno de los clústeres de usuario, un valor de
nodePort
para el servidor de la API de KubernetesEn cada uno de los clústeres de usuario, un valor de
nodePort
para el tráfico de HTTP al servicio de entradaEn cada uno de los clústeres de usuario, un valor de
nodePort
para el tráfico de HTTPS al servicio de entrada
Por lo tanto, en el ejemplo anterior, tendrías que reservar ocho valores de nodePort
.
Completa los archivos de configuración del clúster
Prepara un archivo de configuración para el clúster de administrador y uno para cada uno de los clústeres de usuario.
En cada archivo de configuración del clúster debes ingresar la siguiente información:
Establece
loadBalancer.kind
enManualLB
.Establece
network.ipMode
enstatic
.Configura
network.ipBlockFilePath
en la ruta de acceso del archivo de bloques de IP del clúster.Actualiza la sección
loadBalancer.manualLB
con los valoresnodePort
que elegiste para el clúster.
En el siguiente ejemplo, se muestra una parte de un archivo de configuración del clúster de usuario:
network: ipMode: type: static ipBlockFilePath: "ipblock1.yaml" loadBalancer: kind: ManualLB manualLB: ingressHTTPNodePort: 30243 ingressHTTPSNodePort: 30879 controlPlaneNodePort: 30562:
Configura el balanceador de cargas
Clúster de administrador
En el archivo de configuración de tu clúster de administrador, completaste lo siguiente:
loadBalancer.vips.controlPlaneVIP
loadBalancer.vips.addonsVIP
loadBalancer.manualLB.controlPlaneNodePort
loadBalancer.manualLB.addonsNodePort
network.ipMode.ipBlockFilePath
En el archivo de bloque de IP para el clúster de administrador, completaste una lista de direcciones IP estáticas a fin de usarlas en los nodos del clúster de administrador.
Usa la consola o las herramientas de administración de tu balanceador de cargas para configurar las siguientes asignaciones en tu balanceador de cargas. La forma de hacerlo depende del balanceador de cargas:
(
controlPlaneVIP
:443) -> (NODE_IP_ADDRESSES:controlPlaneNodePort
)(
addonsVIP
:8443) -> (NODE_IP_ADDRESSES:addonsNodewPort
)
Clúster de usuario
En los archivos de configuración del clúster de usuario, completaste lo siguiente:
loadBalancer.vips.controlPlaneVIP
loadBalancer.vips.ingressVIP
loadBalancer.manualLB.controlPlaneNodePort
loadBalancer.manualLB.ingressHTTPNodePort
loadBalancer.manualLB.ingressHTTPSNodePort
network.ipMode.ipBlockFilePath
En el archivo de bloque de IP para tu clúster de usuario, completaste una lista de direcciones IP estáticas para usar con los nodos del clúster de usuario.
Usa la consola o las herramientas de administración de tu balanceador de cargas para configurar las siguientes asignaciones en tu balanceador de cargas. La forma de hacerlo depende del balanceador de cargas:
(
controlPlaneVIP
:443) -> (NODE_IP_ADDRESSES:controlPlaneNodePort
)(
ingressVIP
:80) -> (NODE_IP_ADDRESSES:ingressHTTPNodePort
)(
ingressVIP
:443) -> (NODE_IP_ADDRESSES:ingressHTTPSNodePort
)
Restablece conexiones a nodos con errores (recomendado)
Además de los requisitos anteriores, te recomendamos configurar el balanceador de cargas para restablecer las conexiones de los clientes cuando detecte una falla en el nodo de backend. Sin esta configuración, los clientes del servidor de la API de Kubernetes pueden dejar de responder durante varios minutos cuando una instancia de servidor falla, lo que puede causar inestabilidad en el plano de control de Kubernetes.
- Con BIG-IP de F5, esta configuración se llama Action On Service Down en la página de configuración del grupo de backend.
- Con HAProxy, esta configuración se llama on-marked-down shutdown-sessions en la configuración del servidor de backend.
- Si usas un balanceador de cargas diferente, debes consultar la documentación para encontrar la configuración equivalente.
Obtén asistencia para el balanceo de cargas manual
Google no proporciona asistencia para los balanceadores de cargas configurados con el modo de balanceo de cargas manual. Si tienes problemas con el balanceador de cargas, comunícate con el proveedor.
¿Qué sigue?
- Balanceo de cargas con Citrix
- Instala ACD para BIG-IP de F5 para clústeres de Anthos alojados en VMware con balanceo de cargas manual