Planifica las direcciones IP

En este documento, se muestra un ejemplo de cómo asignar direcciones IP para un clúster de administrador de alta disponibilidad (HA) y dos clústeres de usuario con alta disponibilidad.

Antes de comenzar

Para obtener información sobre los clústeres de administrador, los clústeres de usuario y la alta disponibilidad, consulta Elige un modelo de implementación.

Ejemplo de asignación de dirección IP

En esta sección, se muestra un ejemplo de cómo asignar direcciones IP en una instalación que incluye estos elementos:

  • Direcciones IP para nodos de clústeres

  • Direcciones IP para Pods

  • Direcciones IP del clúster para los servicios

  • Direcciones IP virtuales (VIP) para los planos de control y los proxies de entrada

  • VIP que se usarán como direcciones IP externas para los objetos Service

Nodos del clúster del administrador

En este ejemplo, el clúster de administrador tiene tres nodos. Cada nodo ejecuta componentes del plano de control.

Nodos del clúster de usuario

En este ejemplo, cada clúster de usuario tiene seis nodos: tres nodos del plano de control y tres nodos trabajadores.

Balanceo de cargas

Para este ejemplo, supongamos que los clústeres usan el balanceador de cargas de MetalLB empaquetado. El balanceador de cargas se ejecuta en los nodos del clúster, por lo que no se necesitan máquinas adicionales para el balanceo de cargas.

Subredes

Para este ejemplo, supongamos que cada clúster está en su propio dominio de capa 2 y que los clústeres se encuentran en las siguientes subredes:

Clúster Subred Puerta de enlace predeterminada
Clúster de administrador 172.16.20.0/24 172.16.20.1
Clúster de usuario 1 172.16.21.0/24 172.16.21.1
Clúster de usuario 2 172.16.22.0/24 172.16.22.1

En el siguiente diagrama, se ilustran las tres subredes. Ten en cuenta que las VIP no se muestran asociadas con ningún nodo en particular en un clúster. Esto se debe a que el balanceador de cargas de MetalLB puede elegir qué nodo anuncia la VIP para un Service individual. Por ejemplo, en el clúster de usuario 1, un nodo podría anunciar 172.16.21.52 y otro nodo podría anunciar 172.16.21.53.

Direcciones IP para un clúster de administrador y dos clústeres de usuario.
Direcciones IP para un clúster de administrador y dos clústeres de usuario (haz clic para ampliar)

Direcciones IP de ejemplo: nodos del clúster de administrador

Necesitas tres direcciones IP para los nodos del clúster de administrador, que ejecutan componentes del plano de control. Por ejemplo, puedes usar las siguientes direcciones IP para los nodos en tu clúster de administrador. Las direcciones de este ejemplo son consecutivas, pero no es un requisito:

Direcciones IP para nodos en el clúster de administrador
172.16.20.2 - 172.16.20.4

Dirección IP de ejemplo: VIP del plano de control para el clúster de administrador

Debe reservar una VIP para el servidor de la API de Kubernetes del clúster de administrador. En el archivo de configuración del clúster, esto se llama controlPlaneVIP. Por ejemplo, puedes reservar la siguiente dirección IP para usarla como VIP del plano de control del clúster de administrador:

VIP del plano de control del clúster de administrador
172.16.20.50

Direcciones IP de ejemplo: Nodos del clúster de usuario 1

Por ejemplo, puedes usar las siguientes direcciones IP para tres nodos del plano de control y tres nodos trabajadores en el clúster de usuario 1. Las direcciones de este ejemplo son consecutivas, pero no es un requisito:

Direcciones IP para nodos en el clúster de usuario 1
172.16.21.2 - 172.16.21.7

Direcciones IP de ejemplo: VIP para el clúster de usuario 1

En la siguiente tabla, se muestra un ejemplo de cómo podrías designar VIP para que se configuren en el balanceador de cargas para el clúster de usuario 1. Las VIP de este ejemplo son consecutivas, pero no es un requisito:

VIP Descripción Dirección IP
VIP del plano de control para el clúster de usuario 1 Configurado en el balanceador de cargas para el clúster de usuario 1 172.16.21.50
VIP de entrada para el clúster de usuario 1 Configurado en el balanceador de cargas para el clúster de usuario 1 172.16.21.51
VIP de servicio para el clúster de usuario 1 Diez direcciones para los Services de tipo LoadBalancer.
Se configura según sea necesario en el balanceador de cargas para el clúster de usuario 1.
Observa que este rango incluye la VIP de entrada.
Este es un requisito para el balanceador de MetalLB.
172.16.21.51 - 172.16.21.60

Direcciones IP de ejemplo: Nodos de clúster de usuario 2

Por ejemplo, puede usar las siguientes direcciones IP para los nodos del clúster de usuario 2. Las direcciones de este ejemplo son consecutivas, pero no es un requisito:

Direcciones IP para nodos en el clúster de usuario 2
172.16.22.2 - 172.16.22.7

Direcciones IP de ejemplo: VIP para el clúster de usuario 2

En la siguiente tabla, se muestra un ejemplo de cómo podrías designar VIP para que se configuren en el balanceador de cargas para el clúster de usuario 2. Las VIP en este ejemplo son consecutivas, pero no es un requisito.

VIP Descripción Dirección IP
VIP del plano de control para el clúster de usuario 2 Configurado en el balanceador de cargas para el clúster de usuario 2 172.16.22.50
VIP de entrada para el clúster de usuario 2 Configurado en el balanceador de cargas para el clúster de usuario 2 172.16.22.51
VIP de servicio para el clúster de usuario 2 Diez direcciones para los Services de tipo LoadBalancer.
Se configura según sea necesario en el balanceador de cargas para el clúster de usuario 2.
Observa que este rango incluye la VIP de entrada.
Este es un requisito para el balanceador de cargas de MetalLB.
172.16.22.51 - 172.16.22.60

Direcciones IP de ejemplo: Pods y Services

Antes de crear un clúster, debes especificar un rango CIDR para usar en las direcciones IP del Pod y otro rango en CIDR que se usará en las direcciones ClusterIP de los servicios de Kubernetes.

Decide qué rangos CIDR quieres usar para los Pods y Services. Por ejemplo:

ObjetivoRango de CIDR
Pods en el clúster de administrador192.168.0.0/16
Pods en el clúster de usuario 1192.168.0.0/16
Pods en el clúster de usuario 2192.168.0.0/16
Services en el clúster de administrador10.96.232.0/24
Services en el clúster de usuario 110.96.0.0/20
Services en el clúster de usuario 210.96.128.0/20

En los ejemplos anteriores, se ilustran estos puntos:

  • El rango de CIDR de Pod puede ser el mismo para varios clústeres.

  • Por lo general, necesitas más Pods que servicios, por lo que es probable que desees un rango de CIDR de Pod mayor que el rango de CIDR del Service. El rango de Pods de ejemplo para un clúster de usuario es 192.168.0.0/16, que tiene 2^(32-16) = 2^16 direcciones. Pero un ejemplo de rango de servicio para un clúster de usuario es 10.96.0.0/20, que solo tiene 2^(32-20) = 2^12 direcciones.

Evita la superposición

Asegúrate de que los rangos de CIDR no se superpongan con las direcciones IP a las que se puede acceder en la red. Los rangos de objetos Service y Pod no deben superponerse con ninguna dirección fuera del clúster al que deseas llegar dentro del clúster.

Por ejemplo, supongamos que tu rango de servicio es 10.96.0.0/20 y tu rango de Pod es 192.168.0.0/16. El tráfico enviado desde un Pod a una dirección en cualquiera de esos rangos se tratará como tráfico en el clúster y no alcanzará ningún destino fuera del clúster.

En particular, los rangos de Service y Pod no deben superponerse con lo siguiente:

  • Direcciones IP de nodos en cualquier clúster

  • Direcciones IP que usan las máquinas del balanceador de cargas

  • VIP que usan los balanceadores de cargas y los nodos del plano de control

  • Direcciones IP de servidores DNS y servidores NTP

Recomendamos que los rangos de Service y Pod estén en el espacio de direcciones privadas RFC 1918.

Esta es una razón para que la recomendación use direcciones RFC 1918. Supongamos que tu rango de Pod o Service contiene direcciones IP externas. Cualquier tráfico enviado desde un Pod a una de esas direcciones externas se tratará como tráfico en el clúster y no llegará al destino externo.

Variaciones en la asignación de direcciones IP

En el ejemplo proporcionado en este documento, se muestra una forma de asignar direcciones IP para un tipo particular de instalación. Sin embargo, existen varias formas de instalar clústeres de Anthos alojados en Bare Metal, y la variación que elijas afectará la forma en la que planificas tus direcciones IP.

Por ejemplo, es posible que decidas usar clústeres que no tienen alta disponibilidad o que los nodos del clúster se distribuyan en varios dominios de capa 2. Podrías optar por usar una red de modo plano en lugar de una red en modo isleño.

Si deseas ver ejemplos de cómo se especifican las direcciones IP en los archivos de configuración del clúster para varios tipos de instalaciones, consulta Muestras de configuración de clústeres.

Si deseas obtener más información sobre cómo planificar tus direcciones IP para diferentes tipos de instalaciones, consulta los siguientes documentos: