Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Modo de prefijo para Linux
Amazon VPC CNI asigna prefijos de red a las interfaces de EC2 red de Amazon para aumentar la cantidad de direcciones IP disponibles para los nodos y aumentar la densidad de pods por nodo. Puede configurar la versión 1.9.0 o posterior del VPC CNI complemento Amazon para asignar IPv4 y, IPv6 CIDRs en lugar de asignar, direcciones IP secundarias individuales a las interfaces de red.
El modo de prefijo está activado de forma predeterminada en IPv6 los clústeres y es la única opción admitida. VPCCNIAsigna un IPv6 prefijo /80 a una ranura de un. ENI Consulte la IPv6sección de esta guía para obtener más información.
Con el modo de asignación de prefijos, el número máximo de interfaces de red elásticas por tipo de instancia sigue siendo el mismo, pero ahora puede configurar Amazon VPC CNI para que asigne prefijos de direcciones /28 (16 direcciones IPv4 IP), en lugar de asignar IPv4 direcciones individuales a las ranuras de las interfaces de red. Cuando ENABLE_PREFIX_DELEGATION
se establece en true, VPC CNI asigna una dirección IP a un pod a partir del prefijo asignado a un. ENI Sigue las instrucciones que se mencionan en la guía del EKS usuario para activar el modo IP de prefijo.
El número máximo de direcciones IP que puede asignar a una interfaz de red depende del tipo de instancia. Cada prefijo que asigna a una interfaz de red cuenta como una dirección IP. Por ejemplo, una c5.large
instancia tiene un límite de 10
IPv4 direcciones por interfaz de red. Cada interfaz de red de esta instancia tiene una IPv4 dirección principal. Si una interfaz de red no tiene IPv4 direcciones secundarias, puede asignar hasta 9 prefijos a la interfaz de red. Por cada IPv4 dirección adicional que asigne a una interfaz de red, puede asignar un prefijo menos a la interfaz de red. Revise la AWS EC2 documentación sobre las direcciones IP por interfaz de red y por tipo de instancia y la asignación de prefijos a las interfaces de red.
Durante la inicialización del nodo de trabajo, VPC CNI asigna uno o más prefijos al principal. ENI CNIPreasigna un prefijo para acelerar el arranque del pod al mantener una piscina caliente. El número de prefijos que se deben guardar en una piscina caliente se puede controlar configurando variables de entorno.
-
WARM_PREFIX_TARGET
, el número de prefijos que se asignarán por encima de las necesidades actuales. -
WARM_IP_TARGET
, el número de direcciones IP que se van a asignar por encima de las necesidades actuales. -
MINIMUM_IP_TARGET
, el número mínimo de direcciones IP que estarán disponibles en cualquier momento. -
WARM_IP_TARGET
yMINIMUM_IP_TARGET
si se establece, seWARM_PREFIX_TARGET
anulará.
A medida que se programen más pods, se solicitarán prefijos adicionales para los existentes. ENI En primer lugar, los VPC CNI intentos de asignar un nuevo prefijo a uno existente. ENI Si ENI está al límite de su capacidad, VPC CNI intenta asignar uno nuevo ENI al nodo. Se ENIs adjuntará una nueva hasta que se alcance el ENI límite máximo (definido por el tipo de instancia). Cuando ENI se adjunte una nueva, ipamd asignará uno o más prefijos necesarios para mantener la configuración WARM_PREFIX_TARGET
WARM_IP_TARGET
, yMINIMUM_IP_TARGET
.
Recomendaciones
Utilice el modo de prefijo cuando
Utilice el modo de prefijo si tiene un problema de densidad de pods en los nodos de trabajo. Para evitar VPC CNI errores, recomendamos examinar las subredes en busca de bloques de direcciones contiguos para el prefijo /28 antes de migrar al modo de prefijo. Consulte la sección «Utilizar reservas de subred para evitar la fragmentación de subredes ()IPv4» para obtener más información sobre las reservas de subredes.
Para garantizar la compatibilidad con versiones anteriores, el límite máximo de podsmax-pods
valor de Kubelet y --use-max-pods=false
los datos de usuario de los nodos. Puedes considerar usar el script max-pod-calculator.sh
./max-pods-calculator.sh --instance-type m5.large --cni-version ``1.9``.0 --cni-prefix-delegation-enabled
El modo de asignación de prefijos es especialmente relevante para los usuarios de redes CNI personalizadas en las que el principal no ENI se utiliza para los pods. Con la asignación de prefijos, puedes adjuntar más IPs en casi todos los tipos de instancias de Nitro, incluso sin la instancia principal que ENI se usa para los pods.
Evita el modo de prefijo cuando
Si la subred está muy fragmentada y no tiene suficientes direcciones IP disponibles para crear prefijos /28, evite usar el modo de prefijo. El prefijo adjunto puede fallar si la subred desde la que se produce el prefijo está fragmentada (una subred muy utilizada con direcciones IP secundarias dispersas). Este problema se puede evitar creando una nueva subred y reservando un prefijo.
En el modo de prefijo, los pods comparten el grupo de seguridad asignado a los nodos de trabajo. Considere la posibilidad de usar grupos de seguridad para los pods si tiene un requisito de seguridad para cumplir con los requisitos de seguridad de la red mediante la ejecución de aplicaciones con diferentes requisitos de seguridad de red en recursos informáticos compartidos.
Usa tipos de instancias similares en el mismo grupo de nodos
El grupo de nodos puede contener instancias de muchos tipos. Si una instancia tiene un número máximo de pods bajo, ese valor se aplica a todos los nodos del grupo de nodos. Considera usar tipos de instancias similares en un grupo de nodos para maximizar el uso de los nodos. Si utilizas Karpenter para el escalado automatizado de nodos, te recomendamos configurar node.kubernetes.io/instance-type
aviso
El número máximo de pods para todos los nodos de un grupo de nodos concreto viene definido por el número máximo de pods más bajo de todos los tipos de instancias individuales del grupo de nodos.
WARM_PREFIX_TARGET
Configúrelo para conservar IPv4 las direcciones
El valor predeterminado del manifiesto de instalaciónWARM_PREFIX_TARGET
es 1. En la mayoría de los casos, el valor recomendado de 1 para WARM_PREFIX_TARGET
proporcionará una buena combinación de tiempos de lanzamiento rápidos del pod y, al mismo tiempo, minimizará las direcciones IP no utilizadas asignadas a la instancia.
Si necesitas conservar aún más el uso WARM_IP_TARGET
y la MINIMUM_IP_TARGET
configuración de IPv4 las direcciones por nodo, que se anulan WARM_PREFIX_TARGET
cuando se configuran. Al establecer un valor inferior WARM_IP_TARGET
a 16, puede evitar que se mantenga un prefijo sobrante completo adjunto. CNI
Prefiere asignar nuevos prefijos en lugar de adjuntar uno nuevo ENI
Asignar un prefijo adicional a uno existente ENI es una EC2 API operación más rápida que crear y adjuntar uno nuevo a la instancia. ENI El uso de prefijos mejora el rendimiento y, al mismo tiempo, reduce la asignación de direcciones. IPv4 Por lo general, adjuntar un prefijo se completa en menos de un segundo, mientras que adjuntar uno nuevo ENI puede tardar hasta 10 segundos. En la mayoría de los casos de uso, solo CNI necesitará uno ENI por nodo de trabajo cuando se ejecute en modo de prefijo. Si puede permitirse (en el peor de los casos) hasta 15 sin usar IPs por nodo, le recomendamos encarecidamente que utilice el nuevo modo de red con asignación de prefijos y aproveche las mejoras de rendimiento y eficiencia que conlleva.
Utilice las reservas de subred para evitar la fragmentación de subredes () IPv4
Al EC2 asignar un IPv4 prefijo /28 a anENI, tiene que ser un bloque contiguo de direcciones IP de la subred. Si la subred desde la que se genera el prefijo está fragmentada (una subred muy utilizada con direcciones IP secundarias dispersas), es posible que se produzca un error en el adjunto del prefijo y aparezca el siguiente mensaje de error en los registros: VPC CNI
failed to allocate a private IP/Prefix address: InsufficientCidrBlocks: There are not enough free cidr blocks in the specified subnet to satisfy the request.
Para evitar la fragmentación y disponer de suficiente espacio contiguo para crear prefijos, puede utilizar las CIDRreservas de subred para reservar espacio IP dentro de una VPC subred para el uso exclusivo de los prefijos. Una vez que hayas creado una reserva, el VPC CNI plugin te llamará EC2 APIs para asignar los prefijos que se asignarán automáticamente desde el espacio reservado.
Se recomienda crear una nueva subred, reservar espacio para los prefijos y habilitar la asignación de prefijos para los nodos de trabajo que se ejecutan en esa subred. VPC CNI Si la nueva subred está dedicada únicamente a los pods que se ejecutan en tu EKS clúster con la asignación de VPC CNI prefijos habilitada, puedes saltarte el paso de reserva de prefijos.
Evita bajar de categoría VPC CNI
El modo de prefijo funciona con la VPC CNI versión 1.9.0 y posteriores. Debe evitarse la degradación del VPC CNI complemento de Amazon a una versión anterior a la 1.9.0 una vez que se habilite el modo de prefijo y se asignen los prefijos. ENIs Debe eliminar los nodos y volver a crearlos si decide cambiarlos a una versión anterior. VPC CNI
Sustituya todos los nodos durante la transición a la delegación de prefijos
Se recomienda encarecidamente crear nuevos grupos de nodos para aumentar el número de direcciones IP disponibles, en lugar de sustituir de forma sucesiva los nodos de trabajo existentes. Acordona y vacía todos los nodos existentes para desalojar de forma segura todos los pods existentes. Para evitar interrupciones en el servicio, te sugerimos implementar los presupuestos de interrupción de módulos