Descripción general del balanceo de cargas para los clústeres de Anthos alojados en VMware

En este documento, se explican las opciones de balanceo de cargas que admiten los clústeres de Anthos alojados en VMware (GKE On-Prem).

Hay varias opciones disponibles para el balanceo de cargas. Elige la opción que parezca más adecuada para tu entorno y tus necesidades. Por ejemplo, puedes elegir una opción que requiera una configuración mínima. También puedes elegir una opción que se alinee con los balanceadores de cargas que ya tienes en tu red.

Estas son las opciones disponibles:

  • Paquete de MetalLB

  • Paquete de Seesaw

  • Integración de BIG-IP de F5

  • Configuración de BIG-IP de F5 de forma manual

  • Configuración de Citrix de forma manual

  • Cualquier balanceador de cargas que configures de forma manual

MetalLB

El balanceador de cargas de metalLB se incluye en clústeres con Anthos en VMware y es especialmente fácil de configurar. Los componentes de MetalLB se ejecutan en los nodos del clúster, por lo que no tienes que crear VM diferentes para tu balanceador de cargas.

Puedes configurar MetalLB para administrar la dirección IP. Esto significa que cuando un desarrollador crea un Service de tipo LoadBalancer, no tiene que especificar una VIP para este. En su lugar, MetalLB elige de forma automática una VIP de un grupo de direcciones que proporcionas con anticipación.

Para obtener más información, consulta Balanceo de cargas en paquetes con MetalLB.

Seesaw

El balanceador de cargas de Seesaw se incluye en el clúster con los clústeres de Anthos alojados en VMware y requiere una configuración de bits más manual que la que se requiere en MetalLB. El balanceador de cargas de Seesaw se ejecuta en VM independientes de los nodos del clúster.

Para obtener más información, consulta Balanceo de cargas en paquetes con Seesaw.

BIG-IP de F5

El balanceador de cargas de BIG-IP de F5 no se empaqueta con los clústeres de Anthos alojados en VMware, por lo que debes obtener una licencia y configurar el balanceador de cargas por separado de la instalación de los clústeres de Anthos alojados en VMware.

Puedes configurar los clústeres de Anthos alojados en VMware para que se integren con BIG-IP de F5 en el siguiente sentido: cuando un desarrollador crea un Service de tipo LoadBalancer y especifica una VIP para el servicio, los clústeres de Anthos alojados en VMware configurarán la VIP en el balanceador de cargas de forma automática. Para obtener más información, consulta Instala el ADC de BIG-IP de F5 para clústeres de Anthos alojados en VMware.

También puedes usar BIG-IP de F5 como un balanceador de cargas configurado de forma manual. En este caso, los clústeres de Anthos alojados en VMware no configuran las VIP de Service de forma automática. Para obtener más información, consulta Instala el ADC de BIG-IP de F5 para los clústeres de Anthos alojados en VMware mediante el balanceo de cargas manual.

Citrix

Documentamos cómo configurar el balanceador de cargas de Citrix como ejemplo de configuración de un balanceador de cargas de forma manual. Con cualquier balanceador de cargas que configures de forma manual, debes configurar las asignaciones entre las VIP, las direcciones de nodos y los valores de nodePort. Si deseas obtener información sobre cómo hacer esto para el balanceador de cargas de Citrix, consulta Balanceo de cargas manual con Citrix.

Balanceo manual de cargas en general

Puedes usar cualquier balanceador de cargas que elijas, siempre y cuando lo configures de forma manual. Con cualquier balanceador de cargas que configures de forma manual, debes configurar las asignaciones entre las VIP, las direcciones de nodos y los valores de nodePort. Para obtener información general sobre cómo hacer esto, consulta Balanceo de cargas manual.

Reserva las direcciones IP virtuales

Sin importar el modo del balanceador de cargas que uses, debes reservar varias direcciones IP virtuales (VIP) que quieras usar para el balanceo de cargas.

Para tu clúster de administrador, debes reservar estas VIP:

  • VIP para el servidor de la API de Kubernetes
  • VIP para complementos

Para cada clúster de usuario que desees crear, debes reservar estas VIP:

  • VIP para el servidor de la API de Kubernetes
  • VIP para el servicio de entrada

Por ejemplo, imagina que deseas tener dos clústeres de usuario. Luego, necesitarías dos VIP para el clúster de administrador y dos VIP para cada uno de los clústeres de usuarios. Por lo tanto, necesitarías reservar seis VIP.

Direcciones IP de nodos

Si eliges una de las siguientes opciones de balanceo de cargas, puedes usar direcciones IP estáticas para los nodos del clúster o puedes hacer que los nodos del clúster obtengan sus direcciones IP de un servidor de DHCP:

  • MetalLB
  • Seesaw
  • Integración de BIG-IP de F5

Si eliges una opción de balanceo de cargas manual, debes usar direcciones IP estáticas para los nodos del clúster.

Si eliges usar direcciones IP estáticas, debes reservar suficientes direcciones para los nodos del clúster de administrador y los nodos de todos los clústeres de usuario que quieras crear. Para obtener más detalles sobre cuántas direcciones IP de nodos debes reservar, consulta Planifica tus direcciones IP.

Crea objetos Service en tu clúster

Una vez que el clúster de usuario se encuentre en ejecución, es posible que los desarrolladores de aplicaciones quieran crear objetos Service de Kubernetes y exponerlos a clientes externos.

En el caso de los Service de tipo LoadBalancer, las VIP se deben configurar en el balanceador de cargas. La forma en que se configuran esas VIP depende del balanceador de cargas que elijas.

MetalLB

En el archivo de configuración del clúster de usuario, debes especificar los grupos de direcciones que el controlador de MeltLB usa para asignar VIP a los servicios. Cuando un desarrollador crea un servicio de tipo LoadBalancer, el controlador de MetalLB elige una dirección de un grupo y la asigna al Service. El desarrollador no tiene que especificar un valor para loadBalancerIP en el manifiesto de servicio.

Seesaw

Cuando un desarrollador crea un servicio de tipo LoadBalancer, especifica una dirección IP externa. Por ejemplo:

spec:
  type: LoadBalancer
  loadBalancerIP: 192.168.100.1

Los clústeres de Anthos alojados en VMware configuran de forma automática la dirección especificada en una interfaz de red de una VM de Seesaw.

Integración de BIG-IP de F5

Cuando un desarrollador crea un servicio de tipo LoadBalancer, especifica una dirección IP externa. Por ejemplo:

spec:
  type: LoadBalancer
  loadBalancerIP: 192.168.100.2

Los clústeres de Anthos alojados en VMware configuran de forma automática la dirección especificada en una interfaz de red del balanceador de cargas BIG-IP de F5.

Balanceador de cargas configurado de forma manual

Si eliges una opción de balanceo de cargas manual, los desarrolladores pueden seguir estos pasos para exponer un Service a clientes externos:

  • Crea un Service de tipo NodePort.

  • Elige una VIP para el Service.

  • Configura el balanceador de cargas de forma manual para que el tráfico que se envía al VIP se reenvíe al Service.