Ayude a mejorar esta página
Para contribuir a esta guía del usuario, elija el enlace Edit this page on GitHub que se encuentra en el panel derecho de cada página.
Operaciones de puerta de enlace de Nodos híbridos de Amazon EKS
Esta página describe las operaciones del segundo día de la puerta de enlace de Nodos híbridos de Amazon EKS, incluida la alta disponibilidad, el comportamiento de conmutación por error, la supervisión, el escalado y el ciclo de vida del túnel VXLAN. Para ver las instrucciones de instalación de , consulte Introducción a la puerta de enlace de nodos híbridos de EKS.
Alta disponibilidad y conmutación por error
La puerta de enlace de Nodos híbridos utiliza un modelo de modo de espera activo y se elige a un líder basado en la concesión de Kubernetes. Dos pods de puerta de enlace se ejecutan en nodos de EC2 independientes, lo que se ve reforzado por la antiafinidad entre los pods. Ambos pods crean una interfaz VXLAN al inicio y ejecutan un conciliador de nodos que mantiene las entradas de VTEP para todos los nodos híbridos. Solo el pod líder gestiona las tablas de enrutamiento de la VPC y el CiliumVTEPConfig CRD. El pod en espera siempre está listo para reenviar el tráfico en un plazo de 3 a 5 segundos en caso de conmutación por error, ya que ya tiene un conjunto completo de entradas al túnel.
Secuencia de conmutación por error
Cuando se produce un error en la instancia de puerta de enlace activa, se produce la siguiente secuencia:
-
El pod en espera detecta que la concesión principal ha caducado.
-
El pod en espera adquiere la concesión y pasa a ser el nuevo líder.
-
El nuevo líder ejecuta la secuencia de configuración del líder:
-
Actualiza las entradas de la tabla de enrutamiento de la VPC para dirigir los CIDR de los pods híbridos al ENI principal del nuevo líder.
-
Actualiza o inserta el recurso personalizado
CiliumVTEPConfigcon la dirección IP del nodo líder y la dirección MAC de VXLAN.
-
-
El tráfico vuelve a fluir a través del nuevo líder.
Como ambos pods mantienen las interfaces de VXLAN y las entradas de VTEP en todo momento, el nuevo líder no necesita volver a crear la interfaz de VXLAN ni reprogramar las entradas del túnel durante la conmutación por error. Solo se requieren la tabla de enrutamiento de la VPC y las actualizaciones de CiliumVTEPConfig.
El tiempo de conmutación por error esperado es de aproximadamente 3 a 5 segundos. Durante la conmutación por error, se interrumpe el tráfico entre la VPC y los pods híbridos.
Recomendación de zona de disponibilidad
Distribuya los nodos de puerta de enlace en dos zonas de disponibilidad para que una falla en la zona de disponibilidad no acabe con el líder y el que está en espera. Cuando utilice el modo automático de EKS, configure su NodeClass con selectores de subred en varias zonas de disponibilidad. Para grupos de nodos administrados o nodos autoadministrados, elija nodos en diferentes AZ al etiquetarlos.
nota
El tráfico entre zonas de disponibilidad entre la puerta de enlace y otros recursos de la VPC conlleva cargos estándar de transferencia de datos de AWS entre zonas de disponibilidad.
Parámetros de elección de líderes
Los parámetros de elección de líderes predeterminados están ajustados para una conmutación por error rápida:
| Parámetro | Predeterminado | Descripción |
|---|---|---|
|
|
|
Cuánto tiempo espera una persona que no es líder antes de intentar adquirir la concesión una vez que el líder deje de renovarla. |
|
|
|
Cuánto tiempo intenta el líder renovar la concesión antes de darse por vencido. |
|
|
|
Con qué frecuencia los candidatos vuelven a intentar adquirir la concesión. |
Si se reducen estos valores, se reduce el tiempo de conmutación por error, pero aumenta el riesgo de que se produzcan falsas conmutaciones por error en las particiones de la red. Para la mayoría de las implementaciones, los valores predeterminados son adecuados. Para obtener más información, consulte Referencia de configuración de la puerta de enlace de Nodos híbridos de Amazon EKS.
Administración de tablas de enrutamiento de la VPC
La puerta de enlace administra las entradas de la tabla de enrutamiento de la VPC para que el tráfico destinado a los CIDR de los pods híbridos llegue a la instancia de puerta de enlace activa.
Cómo se administran las rutas
Cuando un pod de puerta de enlace se convierte en el líder, crea o reemplaza las rutas en cada tabla de enrutamiento de la VPC configurada. Cada ruta establece el CIDR de destino en un CIDR de pod híbrido y el objetivo en el ENI principal del líder. Si ya existe una ruta y apunta al ENI correcto, la puerta de enlace omite la actualización.
Durante la conmutación por error, el nuevo líder reemplaza las rutas existentes para que apunten a su propia ENI. Este es el mecanismo que redirige el tráfico de VPC a la nueva puerta de enlace activa.
Ejemplo de entrada en la tabla de enrutamiento
Una vez que la puerta de enlace configura las rutas, la tabla de enrutamiento de la VPC contiene entradas similares a las siguientes:
| Destino | Objetivo | Status |
|---|---|---|
|
|
local |
active |
|
|
|
active |
Permisos de IAM
La puerta de enlace requiere las siguientes acciones de IAM para administrar las tablas de enrutamiento:
-
ec2:DescribeRouteTables -
ec2:CreateRoute -
ec2:ReplaceRoute -
ec2:DescribeInstances
Adjunte estos permisos al rol de IAM asociado al perfil de instancia, Pod Identity o la configuración de IRSA de los nodos de la puerta de enlace.
Supervisión
Puntos de enlace de estado y preparación
La puerta de enlace expone los puntos de enlace de estado y preparación del puerto 8088:
| Punto de conexión | Ruta | Descripción |
|---|---|---|
|
Comprobación de estado |
|
Devuelve HTTP 200 cuando el proceso de la puerta de enlace está en buen estado. Utilizado por la sonda de pruebas de vida de Kubernetes. |
|
Verificación de preparación |
|
Devuelve HTTP 200 cuando la puerta de enlace está lista para dirigir tráfico. Utilizado por la sonda de preparación de Kubernetes. |
Puede consultar estos puntos de enlace manualmente para realizar un diagnóstico mediante la ejecución de un contenedor de depuración temporal o el reenvío de puertos:
kubectl port-forward -n eks-hybrid-nodes-gatewayPOD_NAME8088:8088 & curl -s http://localhost:8088/healthz curl -s http://localhost:8088/readyz
Punto de conexión de métricas
La puerta de enlace expone las métricas compatibles con Prometheus en el puerto 10080 de la ruta /metrics. Además de las métricas estándar del tiempo de ejecución del controlador, están disponibles las siguientes métricas personalizadas.
Información sobre la puerta de enlace:
| Métrica | Tipo | Descripción |
|---|---|---|
|
|
Calibre |
Información estática sobre la instancia de puerta de enlace. Siempre 1. Etiquetas: |
Nodos híbridos:
| Métrica | Tipo | Descripción |
|---|---|---|
|
|
Calibre |
Número actual de nodos híbridos con entradas VTEP configuradas. |
Operaciones de VTEP:
| Métrica | Tipo | Descripción |
|---|---|---|
|
|
Contador |
Total de operaciones de adición de VTEP correctas. |
|
|
Contador |
Total de operaciones de adición de VTEP fallidas. |
|
|
Contador |
Total de operaciones de eliminación de VTEP correctas. |
|
|
Contador |
Total de operaciones de eliminación de VTEP fallidas. |
Tablas de enrutamiento y elección de líderes:
| Métrica | Tipo | Descripción |
|---|---|---|
|
|
Calibre |
1 si este pod es el líder activo, 0 si está en espera. |
|
|
Histograma |
Duración de las operaciones de configuración de líderes (tablas de enrutamiento y CiliumVTEPConfig) en segundos. |
|
|
Contador |
Total de operaciones de actualización de la tabla de enrutamiento de AWS correctas. |
|
|
Contador |
Total de operaciones de actualización de la tabla de enrutamiento de AWS fallidas. |
|
|
Histograma |
Duración de las operaciones de actualización de la tabla de enrutamiento de AWS en segundos. |
Estadísticas de red (recopiladas bajo demanda por análisis):
| Métrica | Tipo | Descripción |
|---|---|---|
|
|
Calibre |
Total de bytes recibidos en la interfaz VXLAN. |
|
|
Calibre |
Total de bytes transmitidos en la interfaz VXLAN. |
|
|
Calibre |
Total de paquetes recibidos en la interfaz VXLAN. |
|
|
Calibre |
Total de paquetes transmitidos en la interfaz VXLAN. |
|
|
Calibre |
Total de paquetes descartados al recibirlos la interfaz VXLAN. |
|
|
Calibre |
Total de paquetes descartados al transmitirlos la interfaz VXLAN. |
|
|
Calibre |
Total de errores de recepción en la interfaz VXLAN. |
|
|
Calibre |
Total de errores de transmisión en la interfaz VXLAN. |
|
|
Calibre |
1 si la interfaz VXLAN está activa, 0 en caso contrario. |
|
|
Calibre |
Número actual de entradas de FDB en la interfaz VXLAN. |
|
|
Calibre |
Número actual de rutas a través de la interfaz VXLAN. |
|
|
Calibre |
Total de bytes recibidos en la interfaz de red principal. |
|
|
Calibre |
Total de bytes transmitidos en la interfaz de red principal. |
|
|
Calibre |
Total de paquetes recibidos en la interfaz de red principal. |
|
|
Calibre |
Total de paquetes transmitidos en la interfaz de red principal. |
|
|
Calibre |
Total de paquetes descartados al recibirlos la NIC principal. |
|
|
Calibre |
Total de paquetes descartados al transmitirlos la NIC principal. |
|
|
Calibre |
Total de errores de recepción en la NIC principal. |
|
|
Calibre |
Total de errores de transmisión en la NIC principal. |
|
|
Calibre |
Nombre de la NIC principal. Siempre 1. Etiquetas: |
Complemento de observabilidad de CloudWatch
Puede usar el complemento de observabilidad de Amazon CloudWatch para recopilar métricas y registros de la puerta de enlace. Configure el complemento para que analice el espacio de nombres de la puerta de enlace (eks-hybrid-nodes-gateway) en el puerto 10080. Para obtener el formato de configuración correcto, consulte la documentación del complemento vinculada anteriormente.
Consideraciones de escalado
La puerta de enlace de Nodos híbridos utiliza un modelo de modo activo y en espera con la elección del líder, por lo que solo un pod gestiona el tráfico en un momento dado. El escalado horizontal de la puerta de enlace (mediante el aumento del número de réplicas) puede mejorar la disponibilidad al proporcionar pods de espera adicionales que estén listos para funcionar durante la conmutación por error, pero no mejora el rendimiento, ya que el tráfico no se distribuye entre las réplicas. Para escalar el rendimiento, escale verticalmente eligiendo un tipo de instancia de EC2 con suficiente ancho de banda de la red para su volumen de tráfico.
Guía sobre tipos de instancias
El rendimiento de la puerta de enlace está limitado por el rendimiento de la red de la instancia de EC2. Tenga en cuenta los siguientes aspectos al seleccionar un tipo de instancia:
-
Ancho de banda de la red: la puerta de enlace reenvía todo el tráfico entre la VPC y los pods híbridos. Elija un tipo de instancia cuyo ancho de banda de la red cumpla con sus requisitos de tráfico máximo.
-
Paquetes por segundo (PPS): la encapsulación de VXLAN agrega una sobrecarga por paquete. Las cargas de trabajo con muchos paquetes pequeños (por ejemplo, microservicios con tasas de solicitud altas) se benefician de los tipos de instancias con límites de PPS más altos.
-
Número de nodos híbridos: cada nodo híbrido agrega un punto de conexión de túnel VXLAN por el que la puerta de enlace reenvía el tráfico. A medida que aumenta el número de nodos híbridos, aumenta el tráfico agregado a través de la puerta de enlace. Seleccione un tipo de instancia con un ancho de banda de la red suficiente para gestionar los picos de tráfico entre redes del clúster.
Tipos de instancia recomendados
Producción (de 10 a 100 nodos híbridos, tráfico moderado)
Adecuado para cargas de trabajo de producción estándar con tráfico constante entre redes.
| Tipo de instancia | vCPU | Memoria | Network | Notas |
|---|---|---|---|---|
|
|
4 |
8 GiB |
Hasta 12,5 Gbps |
Buen equilibrio entre costo y rendimiento |
|
|
4 |
8 GiB |
Hasta 30 Gbps |
Optimizado para redes; recomendado para producción |
|
|
4 |
8 GiB |
Hasta 12,5 Gbps |
Optimizado para computación de última generación |
|
|
4 |
16 GiB |
Hasta 12,5 Gbps |
Adecuado para ubicar otras cargas de trabajo en nodos de puerta de enlace |
Producción de alto rendimiento (más de 100 nodos híbridos, tráfico intenso)
Para entornos con requisitos importantes de ancho de banda entre redes, como cargas de trabajo con uso intensivo de datos o muchas conexiones simultáneas.
| Tipo de instancia | vCPU | Memoria | Network | Notas |
|---|---|---|---|---|
|
|
8 |
16 GiB |
Hasta 40 Gbps |
Recomendado para una producción de alto rendimiento |
|
|
8 |
21 GiB |
Hasta 25 Gbps. |
Optimizado para redes de la generación anterior, rentable |
|
|
16 |
32 GiB |
Hasta 50 Gbps |
Rendimiento máximo para cargas de trabajo muy pesadas |
|
|
16 |
42 GiB |
Hasta 25 Gbps. |
Alto número de vCPU para velocidades de paquetes extremas |
Supervise la utilización de la red mediante las métricas de la puerta de enlace (consulte Punto de conexión de métricas) y ajuste el tipo de instancia según sea necesario.
Ciclo de vida de túnel de VXLAN
La puerta de enlace mantiene automáticamente los túneles de VXLAN hacia los nodos híbridos a medida que se unen al clúster o salen de él.
Cómo se administran los túneles
Un controlador de nodos observa los objetos CiliumNode del clúster. El controlador se ejecuta en todos los pods de puerta de enlace (no solo en el líder), de modo que tanto el pod líder como el que está en espera tienen un estado de túnel actualizado. Cuando se produce un evento CiliumNode, el controlador comprueba si el nodo es un nodo híbrido buscando la etiqueta eks.amazonaws.com/compute-type: hybrid.
Cuando un nodo híbrido se une al clúster:
-
El controlador detecta el nuevo objeto
CiliumNode. -
Extrae la dirección IP interna del nodo y el CIDR del pod de la especificación
CiliumNode. -
Programa lo siguiente en la interfaz VXLAN:
-
Una ruta para el CIDR del pod del nodo a través de la IP del nodo a través de la interfaz VXLAN.
-
Una entrada ARP estática que asigna la IP del nodo a una dirección MAC determinista.
-
Una entrada de FDB que indica al módulo de VXLAN que envíe paquetes encapsulados a la IP del nodo.
-
Cuando un nodo híbrido sale del clúster:
-
El controlador detecta la eliminación de
CiliumNode. -
Elimina la ruta, la entrada ARP y la entrada FDB de ese nodo de la interfaz VXLAN.
Este ciclo de vida es totalmente automático. No es necesario que se configure de forma manual los túneles al agregar o eliminar nodos híbridos.
Siguientes pasos
-
Referencia de configuración de la puerta de enlace de Nodos híbridos de Amazon EKS: personalice los valores de Helm, los indicadores de CLI y los parámetros de elección de líderes.
-
Solución de problemas de puerta de enlace de Nodos híbridos de Amazon EKS: diagnostique y resuelva problemas comunes.
-
Puerta de enlace de Nodos híbridos de Amazon EKS: regrese a la página de información general.