Quais são as práticas recomendadas para configurar o plugin CNI da Amazon VPC para usar um endereço IP em sub-redes de VPC com o Amazon EKS?

4 minuto de leitura
0

Desejo configurar o plugin Container Network Interface (CNI) da Amazon Virtual Private Cloud (VPC) para usar um endereço IP em sub-redes de VPC com o Amazon Elastic Kubernetes Service (Amazon EKS). Quais são as práticas recomendadas?

Breve descrição

Um dos principais componentes do CNI da Amazon VPC é o daemon L-IPAM. Você configura esse daemon para alocar endereços IP a nós.

Se um novo pod estiver agendado em um nó, o kubelet invocará o binário do CNI. O binário do CNI chama o L-IPAMD para obter um endereço IP para o novo pod. Em seguida, o pod rastreia as interfaces de rede elásticas e os endereços IP anexados à instância.

Você pode usar determinadas variáveis de configuração para controlar quantas interfaces de rede e endereços IP são mantidos. Para obter mais informações, consulte WARM_ENI_TARGET, WARM_IP_TARGET and MINIMUM_IP_TARGET e WARM_PREFIX_TARGET, WARM_IP_TARGET and MINIMUM_IP_TARGET (no site do GitHub).

Resolução

Veja a seguir as práticas recomendadas básicas para usar variáveis de configuração para controlar quantas interfaces de rede e endereços IP são mantidos.

WARM_ENI_TARGET

Use a variável WARM_ENI_TARGET para determinar quantas interfaces de rede elásticas o L-IPAMD mantém disponíveis para que os pods recebam imediatamente um endereço IP quando agendados em um nó.

  • Para evitar o esgotamento de endereços IP disponíveis na sub-rede, verifique o tipo de instância do nó de trabalho e o número máximo de interfaces de rede e endereços IPv4 privados por interface. Por exemplo, se você definir WARM_ENI_TARGET=3 para um nó m5.xlarge, três interfaces de rede elástica serão sempre conectadas a esse nó. Em seguida, o nó atribui 45 endereços IP, 15 por interface de rede elástica. Como os 45 endereços IP são reservados para esse nó, eles não podem ser usados para pods agendados em outros nós de trabalho.
  • Se você espera que sua aplicação seja dimensionada consideravelmente, pode usar WARM_ENI_TARGET para acomodar rapidamente os pods recém-agendados.

WARM_IP_TARGET

Use a variável WARM_IP_TARGET para garantir que você sempre tenha um número definido de endereços IP disponíveis no pool warm de L-IPAMD.

  • Para clusters com baixa produtividade, use WARM_IP_TARGET para que somente o número necessário de endereços IP seja atribuído à interface de rede. Isso evita que os endereços IP das interfaces de rede elásticas sejam bloqueados.

MINIMUM_IP_TARGET

Use MINIMUM_IP_TARGET para garantir que um número mínimo de endereços IP seja atribuído a um nó quando ele aparecer inicialmente. Essa variável geralmente é usada com a variável WARM_IP_TARGET.

  • Se você souber o número mínimo de pods que executará por nó, use MINIMUM_IP_TARGET para que o número necessário de endereços IP seja atribuído. Se os endereços IP estiverem prontamente disponíveis, os pods poderão recebê-los à medida forem agendados.
  • Defina essa variável com WARM_IP_TARGET para garantir que haja endereços IP disponíveis no nó para futuros pods.

WARM_PREFIX_TARGET

Use a variável WARM_PREFIX_TARGET para garantir que você sempre tenha um número definido de prefixos (/28 blocos CIDR) adicionados à interface de rede da instância. Você pode usar WARM_PREFIX_TARGET somente para a CNI versão 1.9.0 ou posterior e deve ativar o recurso de atribuição de prefixos de endereços IP do CNI da Amazon VPC.

  • Se você usar a atribuição de prefixos de endereços IP, certifique-se de que a variável WARM_PREFIX_TARGET esteja definida com um valor maior que ou igual a 1. Se ela estiver definida como 0, você receberá o seguinte erro:
Error: Setting WARM_PREFIX_TARGET = 0 is not supported while WARM_IP_TARGET/MINIMUM_IP_TARGET is not set. 
Please configure either one of the WARM_{PREFIX/IP}_TARGET or MINIMUM_IP_TARGET env variables
  • Para sub-redes menores, use WARM_IP_TARGET com WARM_PREFIX_TARGET para evitar alocar muitos prefixos. Alocar muitos prefixos pode esgotar os endereços IP disponíveis.

Para saber mais sobre como essas variáveis de configuração afetam a utilização do endereço IP, consulte Variáveis de configuração do CNI (no site do GitHub).


AWS OFICIAL
AWS OFICIALAtualizada há 2 anos