Estadísticas de utilización de direcciones IP de GKE

En esta página, se describen las estadísticas de Network Analyzer para el uso de direcciones IP de Google Kubernetes Engine (GKE). Para obtener información sobre todos los tipos de estadísticas, consulta Grupos y tipos de estadísticas.

Ve estadísticas en la API de recomendador

Para ver estas estadísticas en gcloud CLI o la API de recomendador, usa el siguiente tipo de estadística:

  • google.networkanalyzer.container.ipAddressInsight

Necesitas los siguientes permisos:

  • recommender.networkAnalyzerGkeIpAddressInsights.list
  • recommender.networkAnalyzerGkeIpAddressInsights.get

Si deseas obtener más información sobre el uso de la API de Recommender para las estadísticas de Network Analyzer, consulta Usa la CLI y la API de Recommender.

Asignación alta de rangos de Pods de GKE

Esta estadística indica que la utilización de direcciones IP en los rangos de direcciones de Pods para un clúster de GKE supera el 80%. La política de asignación de direcciones IP para Pods de GKE varía según si tu clúster se creó como un clúster nativo de la VPC o un clúster basado en rutas.

Clústeres basados en rutas

En GKE, los clústeres se pueden distinguir por la forma en la que enrutan el tráfico de un Pod a otro. Un clúster que usa rutas de Google Cloud se denomina clúster basado en rutas. Para obtener más información, consulta Crea un clúster basado en rutas.

Un clúster basado en rutas tiene un rango de direcciones IP que se usan para Pods y servicios. Aunque el rango se usa para Pods y servicios, se denomina Rango de direcciones de Pods.

El último /20 del rango de direcciones de Pods se usa para los servicios. Un rango /20 tiene 212 = 4096 direcciones. Por lo tanto, las direcciones 4096 se usan para los servicios, y el resto del rango se usa para los Pods.

Cada nodo del rango de direcciones de pods tiene un rango /24 de direcciones IP para los pods. Un rango /24 tiene 28 = 256 direcciones. Recuerda que las direcciones 4096 en el rango de direcciones de Pods se usan para los servicios. La parte restante del rango de direcciones de pods se usa para los pods y debe ser lo suficientemente grande como para contener la cantidad de nodos x 256 direcciones.

La proporción de asignación para el rango de direcciones de Pods se calcula de la siguiente manera:

$\frac{\text {Recuento de nodos de GKE} \times {256}}{\text {Tamaño del rango de direcciones de Pods}-{4096}}$

Por ejemplo, planeas crear un clúster de nodos 900. Luego, necesitas direcciones 900 x 256 = 230,400 para los Pods. Ahora, supongamos que tienes un rango de direcciones de Pods /14. Un rango /14 tiene 218 = 262,144 direcciones. Resta las direcciones 4096 que se usan en los servicios y obtendrás 258,048, que es suficiente para los nodos 900.

Clústeres nativos de la VPC

En GKE, los clústeres se pueden distinguir por la forma en que enrutan el tráfico de un Pod a otro. Un clúster que usa rangos de direcciones IP de alias se denomina clúster nativo de la VPC. Para obtener más información, consulta Clústeres nativos de VPC.

Cuando creas un grupo de nodos en un clúster nativo de la VPC, debes seleccionar un rango de direcciones IP secundario para asignar IP a los Pods de GKE. Los grupos de nodos diferentes pueden usar diferentes rangos secundarios para asignar direcciones IP del Pod. Para obtener más información, consulta CIDR de varios Pods. Network Analyzer calcula la proporción de asignación de cada rango de direcciones IP secundario que se usa para asignar direcciones IP de Pods en un clúster determinado. Si la proporción de asignación general es superior al 80%, obtienes una estadística de utilización alta.

La proporción de asignación para un solo rango de direcciones IP secundario se calcula de la siguiente manera:

$\frac{\text {direcciones IP del rango secundario asignado a los nodos}}{\text {Tamaño del rango secundario}}$

Por ejemplo, un rango de Pods secundario de /24 puede contener 256 Pods. Si solo hay un nodo 1 con Pods max_pods_per_node, 110 y 16 predeterminados en ejecución, la proporción muestra un 100% (256/256) en lugar del 6.25% (16/256) porque, a pesar de que no se usan las direcciones IP del Pod 240, siguen perteneciendo a este nodo. Otro nodo nuevo solo se puede crear de forma correcta si hay 256 direcciones IP de Pod sin usar.

La asignación general se calcula de la siguiente manera:

$\frac{\text {Suma de las direcciones IP asignadas en todos los rangos de direcciones IP secundarios usados para asignar las direcciones IP del Pod}}{\text {Suma de los tamaños de los rangos de direcciones IP secundarios usados para asignar las direcciones IP del Pod}}$

Por ejemplo, si la dirección IP predeterminada del Pod y el rango de direcciones IPv4 del Pod adicional se configuran como /22 y hay 2 grupos de nodos, un grupo de nodos usa el rango de direcciones IP del Pod predeterminado y tiene 3 nodos, mientras que el segundo grupo de nodos usa un rango de direcciones IP de Pod adicional y también tiene 3 nodos, con la cantidad máxima predeterminada de Pods establecida en 110. Kubernetes asigna un rango CIDR /24 a los nodos del clúster. Con 6 nodos y un rango CIDR /24 asignado, hay un total de 256 * 6 = 1536 direcciones IP. Este es el 75% de la cantidad total de direcciones IP disponibles en los dos rangos de direcciones IP de Pod (1024 * 2 = 2048).

Es importante tener en cuenta que, si la dirección IP secundaria se comparte entre diferentes clústeres, las estadísticas mostrarán el valor total agregado de todos los clústeres. Si quieres ver el uso del rango de IP de un solo clúster, puedes ejecutar gcloud container cluster describe CLUSTER_NAME para ver el estado de uso de cada dirección IP secundaria. Reemplaza CLUSTER_NAME por el nombre del clúster.

Recomendaciones

La asignación de rangos de Pods de GKE limita el ajuste de escala automático

Esta estadística indica que los rangos de direcciones IP del Pod del clúster no tienen suficientes direcciones para admitir la creación de la cantidad máxima de nodos en todos los grupos de nodos. En la página Detalles de las estadísticas, se incluye una tabla en la que se muestra la cantidad de direcciones IP del Pod que se usan en la actualidad y la cantidad máxima de direcciones IP del Pod en cada uno de los rangos de direcciones IP del Pod del clúster de GKE.

Network Analyzer genera esta estadística cuando el valor de uso de la dirección IP con ajuste de escala automático completa supera el 100%.

El valor de uso de direcciones IP con ajuste de escala automático completo supera el 100% cuando la cantidad de direcciones IP de Pod necesarias para admitir la cantidad máxima de nodos en el clúster supera la cantidad de direcciones IP en los rangos de direcciones IP del Pod del clúster. La cantidad máxima de nodos en un clúster es la suma de la cantidad máxima de nodos en cada grupo de nodos del clúster (maxNodeCount).

El valor de uso de la dirección IP con ajuste de escala automático completo se calcula mediante la fórmula que se encuentra en Asignación de rangos altos de Pods de GKE.

Clústeres basados en rutas

Esta estadística se genera cuando la proporción de asignación para el rango de direcciones de Pods es superior al 100% y todos los grupos de nodos tienen ajuste de escala automático. Los nodos de GKE no se crearán debido a la falta de espacio de direcciones IP.

Clústeres nativos de la VPC

Esta estadística se genera si algún rango de direcciones IP secundario que se usa para asignar direcciones IP de Pods no tiene suficiente espacio de direcciones IP sin asignar. El espacio insuficiente de la dirección IP no puede manejar la situación en la que todos los grupos de nodos tienen un ajuste de escala automático.

Si deseas obtener más información, consulta Prácticas recomendadas para las herramientas de redes de GKE y Limitación del escalador automático de clústeres.

Recomendaciones

  • Para los clústeres basados en rutas, vuelve a crear el clúster con un rango de direcciones de Pods más grande. Crea este clúster como un clúster nativo de la VPC porque es el modo de red recomendado. Consulta Clústeres nativos de la VPC y basados en rutas.
  • Para los clústeres nativos de la VPC, agrega rangos de Pod adicionales al nivel del clúster con el CIDR de varios Pods y habilita el aprovisionamiento automático de nodos para automatizar el escalamiento de nodos con la asignación automática de direcciones IP del Pod. Si deseas tener más control sobre las direcciones IP de pods que se usan para qué grupo de nodos, puedes crear los grupos de nodos que usan un rango de direcciones IP secundario específico mediante CIDR de varios pods. Sin embargo, esto solo se aplica a los clústeres estándar.