View a markdown version of this page

Gateway do Amazon EKS Hybrid Nodes - Amazon EKS

Ajudar a melhorar esta página

Para contribuir com este guia de usuário, escolha o link Editar esta página no GitHub, disponível no painel direito de cada página.

Gateway do Amazon EKS Hybrid Nodes

O gateway do Amazon EKS Hybrid Nodes automatiza a rede entre a VPC do cluster do Amazon EKS e os pods do Kubernetes executados no EKS Hybrid Nodes. O gateway elimina a necessidade de tornar as redes de pods on-premises roteáveis por meio da VPC ou de coordenar alterações na infraestrutura de rede. O gateway cria túneis VXLAN entre os nós de gateway baseados no EC2 na VPC e os nós híbridos gerenciados pelo Cilium no ambiente on-premises, além de manter automaticamente as entradas da tabela de rotas da VPC para que o tráfego acesse a instância de gateway correta.

Casos de uso

O gateway do Hybrid Nodes habilita os seguintes fluxos de tráfego entre a VPC e o ambiente on-premises:

  • Comunicação entre o ambiente de gerenciamento e o webhook: o servidor da API do Kubernetes consegue acessar endpoints de webhook em execução nos nós híbridos. Sem o gateway, os webhooks nos nós híbridos não podem ser acessados pelo ambiente de gerenciamento, a menos que os CIDRs dos pods se tornem roteáveis no ambiente on-premises.

  • Tráfego de pod para pod na nuvem e on-premises: os pods executados nos nós do EC2 na VPC podem se comunicar diretamente com os pods executados em nós híbridos, e vice-versa.

  • Conectividade de serviços da AWS para pods híbridos: serviços da AWS como o Application Load Balancers, o Network Load Balancers e o Amazon Managed Service para Prometheus conseguem acessar pods em execução nos nós híbridos.

Arquitetura

Dois pods de gateway são executados como Deployment em nós do EC2 rotulados. Uma eleição de líder baseada em Lease do Kubernetes determina qual pod está ativo. Ambos os pods criam uma interface VXLAN na inicialização e executam um reconciliador de nós que monitora objetos CiliumNode, de modo que o substituto está sempre pronto para encaminhar o tráfego dentro de três a cinco segundos em caso de failover. Apenas ações específicas do líder (por exemplo, atualizações da tabela de rotas da VPC e gerenciamento do CiliumVTEPConfig) são transferidas quando a liderança muda.

Como funciona

O gateway do Hybrid Nodes usa quatro mecanismos para permitir a conectividade:

Tunelamento VXLAN: o gateway cria uma interface VXLAN (hybrid_vxlan0) com VNI 2 na porta UDP 8472 (o padrão do Cilium). Ele estabelece um túnel para cada nó híbrido ao programar entradas do FDB, entradas de ARP e rotas na interface VXLAN. Um controlador de nós monitora objetos CiliumNode e adiciona ou remove túneis automaticamente à medida que os nós híbridos entram ou saem do cluster.

Gerenciamento da tabela de rotas da VPC: quando o gateway se torna o líder, ele cria ou substitui rotas nas tabelas de rotas da VPC especificadas. Cada rota direciona um CIDR de pod híbrido para a ENI primária do líder, de modo que o tráfego da VPC destinado a pods híbridos seja encaminhado para a instância de gateway ativa.

Integração com o Cilium VTEP: o gateway cria um recurso personalizado CiliumVTEPConfig que informa aos agentes do Cilium nos nós híbridos para onde direcionar o tráfego destinado à VPC. A configuração contém o IP do nó do líder como o endpoint do túnel e o endereço MAC da interface VXLAN. Quando os pods híbridos enviam tráfego para endereços da VPC, o Cilium o encapsula em um pacote VXLAN e o envia para o gateway.

Eleição de líder: o gateway usa a eleição de líder baseada em Lease do Kubernetes com um modelo de ativo e em espera. Dois pods de gateway são executados em nós separados, uma configuração imposta por antiafinidade de pod. Ambos os pods criam uma interface VXLAN na inicialização e executam um reconciliador de nós que mantém as entradas VTEP para todos os nós híbridos. O líder realiza as atualizações na tabela de rotas da VPC e a configuração do Cilium VTEP. Se o líder apresentar falha, o líder em espera detecta a expiração do lease, obtém o lease e executa a sequência de configuração do líder. O tempo de failover previsto é de cerca de três a cinco segundos.

Modelo de implantação.

O gateway do Hybrid Nodes é executado em instâncias do EC2 na VPC e é implantado usando um chart do Helm. O gateway oferece suporte aos seguintes destinos de implantação:

  • Modo automático do EKS: você cria um NodePool e um NodeClass que provisionam automaticamente nós de gateway com os rótulos, taints e configuração de verificação de origem e de destino corretos. Essa é a configuração recomendada.

  • Grupos de nós gerenciados pelo EKS você cria um grupo de nós gerenciados dedicado com o rótulo do gateway, o taint e a verificação de origem e de destino desabilitados e, em seguida, define autoMode.enabled=false nos valores do Helm.

Para todos os destinos de implantação, recomenda-se o uso de, pelo menos, dois nós para alta disponibilidade. Para obter mais informações, consulte Comece a usar o gateway do EKS Hybrid Nodes.

Preços

Não há custo adicional para o gateway do Amazon EKS Hybrid Nodes, mas você receberá cobrança pelos custos de infraestrutura para executar o gateway, incluindo as instâncias do EC2 e as taxas de gerenciamento do Modo Automático do EKS, se aplicável. Para obter mais informações, consulte Preços do Amazon EKS.

Disponibilidade de regiões

O gateway do Amazon EKS Hybrid Nodes está disponível em todas as regiões da AWS em que o EKS Hybrid Nodes está disponível, exceto nas regiões da China. Para obter a lista atual de regiões compatíveis, consulte Visão geral do Amazon EKS Hybrid Nodes.

Código aberto

A base de código do gateway do Amazon EKS Hybrid Nodes é de código aberto. Você pode visualizar o código-fonte, reportar problemas e enviar suas contribuições no repositório do GitHub.

Limitações e considerações

Antes de implantar o gateway do Hybrid Nodes, considere o seguinte:

  • Sem criptografia de tráfego: os túneis VXLAN criados pelo gateway não criptografam o tráfego. Se você precisar de criptografia em trânsito entre a VPC e o ambiente on-premises, use um transporte criptografado, como o AWS Direct Connect com MACsec ou uma conexão da VPN. Para obter mais informações, consulte Proteção de dados no Amazon EKS.

  • Cluster único: cada implantação de gateway atende a um único cluster do EKS. Se você tiver vários clusters com nós híbridos, implante um gateway separado para cada cluster.

  • Cilium VTEP obrigatório: o gateway requer a versão do EKS apresentada na CNI do Cilium com suporte a VTEP ativado em nós híbridos. Outros plug-ins da CNI não são compatíveis.

Próximas etapas