Dimensionamiento de la red
Conocer el número de pods y nodos es esencial para poder determinar cuántas direcciones IP necesita. Ahora que sabe el número de pods y nodos necesarios, echemos un vistazo al dimensionamiento de la red.
Dimensionamiento de la subred de red virtual
Quiere un máximo de siete máquinas virtuales para los nodos del clúster de Kubernetes. Recuerde que un nodo adicional se agrega temporalmente a los clústeres de Azure Kubernetes Service (AKS) durante el proceso de actualización. Por lo tanto, debe realizar los cálculos del tamaño de la red basándose en ocho máquinas virtuales (VM).
Maximum 7 VMs + 1 VM for upgrades = 8 node IP addresses
De manera predeterminada, los clústeres de AKS que usan el complemento de Azure Container Networking Interface (CNI) están configurados para permitir un máximo de 30 pods por nodo. Este valor se puede establecer en cualquier valor entre 10 y 250 pods. Los cálculos de dimensionamiento de la red deben permitir la implementación de ese número máximo de pods.
8 VMs x 30 pods per node maximum = 240 pod IP addresses
Necesita 8 direcciones IP para los nodos y 240 direcciones IP para los pods.
8 node IP addresses + 240 pod IP addresses = 248 IP addresses
Sugerencia
Si tiene previsto usar una instancia interna de Azure Load Balancer con el clúster, también requiere una dirección IP. Es una práctica común usar una subred dedicada para los equilibradores de carga, pero si planea usar la misma subred que para los nodos, debe tenerlo en cuenta.
En este diseño, decidió mantener la configuración predeterminada del grupo de nodos. La configuración predeterminada usa un único grupo de nodos del Modo del sistema que lo ejecuta todo. Si desea asegurarse de que los componentes del sistema están aislados de las aplicaciones, necesita al menos dos grupos de nodos. Debe ajustar los cálculos del intervalo de direcciones IP para tener en cuenta eso.
Ahora puede contactar con el equipo responsable de la asignación de red de su organización y solicitar una subred que admita 248 direcciones IP. Al crear una subred en una instancia de Azure Virtual Network, se reservan cinco direcciones IP para su uso en el sistema. Un intervalo de direcciones /24 tendría 251 direcciones IP utilizables, lo que se ajustaría bastante al clúster.
Selección de un intervalo de direcciones del servicio de Kubernetes
Con la subred de nodos y pods seleccionada, queda solo un intervalo de direcciones más por seleccionar: el intervalo de direcciones de Kubernetes Service. Kubernetes Service proporciona una dirección IP virtual estática que permite enrutar el tráfico a los pods. Este intervalo de direcciones solo se usa para enrutar el tráfico dentro del clúster. El intervalo de direcciones nunca se usa o expone fuera del clúster. Por lo tanto, debe seleccionar un intervalo de direcciones de red privada que no se use en ningún otro lugar de Azure ni en las redes locales.
Sugerencia
Dado que el intervalo de direcciones del servicio de Kubernetes nunca se usa fuera del clúster, es posible volver a usar este intervalo de direcciones en varios clústeres.
Las reglas para seleccionar un intervalo de direcciones de servicio incluyen:
- El intervalo no puede estar dentro del intervalo de direcciones IP de la red virtual que se usa para el clúster.
- El intervalo no puede estar dentro del intervalo de direcciones IP de ninguna otra red virtual emparejada con la red del clúster.
- El intervalo no puede superponerse con ningún intervalo de direcciones IP que use en redes locales.
- El intervalo no puede estar en los intervalos de direcciones IP 169.254.0.0/16, 172.30.0.0/16, 172.31.0.0/16 ni 192.0.2.0/24.
Normalmente no se necesitan muchas direcciones IP para los servicios dentro de un clúster. Por lo general, tiene un servicio delante de un grupo de pods que ejecutan varias réplicas de una aplicación. En este caso, tiene ocho servicios diferentes que forman la aplicación, por lo que solo necesita ocho direcciones IP de servicio.
Otros servicios que se ejecutan en el clúster, como controladores de entrada o mallas de servicio, pueden consumir más direcciones IP de servicio. Es mejor prever un espacio adicional para otros servicios que pueda utilizar en el futuro. Por lo general, es una buena idea usar un intervalo de direcciones generoso. Un intervalo de direcciones /24 proporciona mucho espacio para que el clúster funcione.
Selección de una dirección IP del servicio DNS
Kubernetes usa un servicio integrado de Sistema de nombres de dominio (DNS) para proporcionar características de detección de servicios dentro del clúster. El servicio DNS necesita una dirección IP dentro del intervalo de direcciones de Kubernetes Service. No puede usar la primera dirección IP del intervalo de direcciones de Kubernetes Service, pero se acepta cualquier otro valor.
Ahora tiene toda la información que necesita para implementar el clúster.