View a markdown version of this page

Referencia de configuración de la puerta de enlace de Nodos híbridos de Amazon EKS - Amazon EKS

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.

Referencia de configuración de la puerta de enlace de Nodos híbridos de Amazon EKS

Esta página documenta todos los parámetros configurables de la puerta de enlace de Nodos híbridos de Amazon EKS. Para ver las instrucciones de instalación de , consulte Introducción a la puerta de enlace de nodos híbridos de EKS. Para obtener información general acerca de la puerta de enlace, consulte Puerta de enlace de Nodos híbridos de Amazon EKS.

Valores del gráfico de Helm

La siguiente tabla muestra todos los valores del gráfico de Helm eks-hybrid-nodes-gateway. Puede establecer estos valores mediante indicadores --set o un archivo values.yaml personalizado durante helm install o helm upgrade.

Valor Tipo Predeterminado Obligatorio Descripción

image.repository

cadena

public.ecr.aws/eks/eks-hybrid-nodes-gateway

No

Repositorio de imágenes de contenedor para la imagen de la puerta de enlace. Valores predeterminados del registro público de Amazon ECR.

image.tag

cadena

Gráfico appVersion

No

Etiqueta de la imagen El valor predeterminado del appVersion definido se establece en Chart.yaml.

image.pullPolicy

cadena

IfNotPresent

No

Política de extracción de imágenes. Valores válidos: Always, IfNotPresent, Never.

replicas

entero

2

No

Número de réplicas de los pods de puerta de enlace. La configuración recomendada para una alta disponibilidad en los entornos de producción es de dos réplicas.

nodeLabel

cadena

hybrid-gateway-node

No

Clave de etiqueta de nodo utilizada para seleccionar los nodos de puerta de enlace. Los nodos deben tener esta etiqueta configurada en "true".

vpcCIDR

cadena

""

Bloque de CIDR de VPC utilizado para la configuración de VTEP de Cilium. Ejemplo: : 10.0.0.0/16.

podCIDRs

cadena

""

Lista separada por comas de los CIDR de pod utilizados por Cilium en los nodos híbridos. Ejemplo: : 10.85.0.0/16,10.86.0.0/16.

routeTableIDs

cadena

""

Lista separada por comas de los ID de las tablas de enrutamiento de la VPC para programar con rutas de pod híbridas. Ejemplo: : rtb-0123456789abcdef0,rtb-0123456789abcdef1.

autoMode.enabled

booleano

true

No

Active la integración del modo automático de EKS. Cuando este valor es true, el gráfico agrega un selector de nodos eks.amazonaws.com/compute-type: auto y utiliza una estrategia de actualización continua sin tiempo de inactividad. Establezca false para los grupos de nodos administrados o nodos autoadministrados.

Comandos de instalación de ejemplo

Modo automático de EKS (predeterminado):

helm install eks-hybrid-nodes-gateway oci://public.ecr.aws/eks/eks-hybrid-nodes-gateway \ --version 1.0.0 \ --namespace eks-hybrid-nodes-gateway \ --create-namespace \ --set vpcCIDR=VPC_CIDR \ --set podCIDRs=POD_CIDRS \ --set routeTableIDs=ROUTE_TABLE_IDS

Grupos de nodos administrados o nodos autoadministrados:

helm install eks-hybrid-nodes-gateway oci://public.ecr.aws/eks/eks-hybrid-nodes-gateway \ --version 1.0.0 \ --namespace eks-hybrid-nodes-gateway \ --create-namespace \ --set autoMode.enabled=false \ --set vpcCIDR=VPC_CIDR \ --set podCIDRs=POD_CIDRS \ --set routeTableIDs=ROUTE_TABLE_IDS

Modo automático frente a configuración de grupo de nodos administrados

El valor de Helm autoMode.enabled controla dos comportamientos en la plantilla de implementación:

Comportamiento autoMode.enabled=true (predeterminado) autoMode.enabled=false

Selector de nodos

Agrega eks.amazonaws.com/compute-type: auto además de la etiqueta del nodo de puerta de enlace.

Utiliza solo la etiqueta del nodo de puerta de enlace (hybrid-gateway-node: "true").

Estrategia de actualización continua

maxSurge: 1, maxUnavailable: 0: garantiza que no haya ningún tiempo de inactividad durante las actualizaciones al iniciar un nuevo pod antes de terminar el anterior.

maxSurge: 0, maxUnavailable: 1: termina el pod anterior antes de iniciar uno nuevo, ya que la capacidad de los nodos está aprovisionada previamente.

Cuando utilice el modo automático de EKS, debe crear un NodePool y un NodeClass antes de instalar el gráfico de Helm. El NodePool aprovisiona las instancias de EC2 con las etiquetas, los taints y la configuración de comprobación de origen y destino correctas. Para ver el YAML requerido, consulte Introducción a la puerta de enlace de nodos híbridos de EKS. Si utiliza grupos de nodos administrados o nodos autoadministrados, debe aprovisionar y etiquetar los nodos usted mismo antes de instalar el gráfico.

Para todos los objetivos de implementación, la implementación utiliza hostNetwork: true y requiere la capacidad NET_ADMIN. La antiafinidad entre los pods garantiza que los dos pods de puerta de enlace se ejecuten en nodos independientes.

Ajuste de elección de líderes

La puerta de enlace utiliza la elección de líder basada en la concesión de Kubernetes para mantener un modelo de modo de espera activo. Los parámetros predeterminados están ajustados para una conmutación por error rápida:

Parámetro Predeterminado Descripción

--leader-election-lease-duration

3s

Cuánto tiempo espera una persona que no es líder después de la última renovación de concesión observada antes de intentar adquirirla. Los valores más bajos detectan el fallo del líder con mayor rapidez, pero aumentan el riesgo de que se produzcan conmutaciones por error falsas durante problemas transitorios de red.

--leader-election-renew-deadline

2s

Tiempo máximo que el líder activo dedica a intentar renovar la concesión antes de dejar el liderazgo. Debe ser menos que la duración de la concesión.

--leader-election-retry-period

1s

Con qué frecuencia los candidatos vuelven a intentar adquirir o renovar la concesión.

Con los valores predeterminados, el tiempo de conmutación por error esperado cuando se produce un error en la puerta de enlace activa es de aproximadamente 3 a 5 segundos. Esto incluye el tiempo que tarda la persona en espera en detectar el vencimiento de la concesión, adquirir la concesión y ejecutar la secuencia de configuración principal (actualizaciones de la tabla de enrutamiento de la VPC y configuración de VTEP de Cilium).

Cuándo ajustar los parámetros de elección del líder

  • Aumente la duración de la concesión si observa frecuentes transiciones de líder provocadas por la latencia transitoria de la red entre los pods de puerta de enlace y el servidor de API de Kubernetes.

  • Reduzca la duración de la concesión si necesita una detección de conmutación por error más rápida y si su red entre los nodos de la puerta de enlace y el servidor de API es fiable y de baja latencia.

  • Aumente el periodo de reintentos para reducir la carga del servidor de API derivada de la elección del líder en clústeres grandes.

nota

El --leader-election-renew-deadline siempre debe ser inferior a --leader-election-lease-duration. Si la fecha límite de renovación supera la duración de la concesión, el líder puede perder la concesión antes de poder renovarla.