Identificar opções de plug-in

Concluído

Um plug-in de rede é necessário para um cluster AKS para facilitar a comunicação pod-to-pod, comunicação pod-to-node e, em alguns casos, comunicação node-to-pod. Existem dois modelos de rede disponíveis no AKS: kubenet e Azure CNI. Há evoluções adicionais do Azure CNI, incluindo Azure CNI Overlay, Azure CNI para alocação de IP dinâmico e Azure CNI Powered by Cilium. Cada um destes modelos tem o seu próprio conjunto de características e limitações.

Kubenet

Por padrão, os clusters AKS usam kubenet. Com o kubenet, uma rede virtual, uma sub-rede e uma tabela de rotas do Azure são criadas automaticamente quando o cluster é implantado, mas os recursos de rede existentes podem ser fornecidos. Com kubenet:

  • Os nós recebem um endereço IP da sub-rede de rede virtual do Azure.
  • Os pods recebem um endereço IP de um espaço de endereço logicamente diferente da sub-rede do pool de nós.
  • A conversão de endereços de rede (NAT) é então configurada para que os pods possam alcançar recursos na Rede Virtual do Azure.
  • O endereço IP de origem do tráfego é convertido para o endereço IP primário do nó.

Os pods não podem se comunicar diretamente entre nós entre nós. Em vez disso, o UDR (Roteamento Definido pelo Usuário) e o encaminhamento IP são usados para conectividade entre pods entre nós. Por padrão, UDRs e configuração de encaminhamento IP são criados e mantidos pelo serviço AKS, mas você tem a opção de trazer sua própria tabela de rotas para gerenciamento de rotas personalizado.

Se a sua sub-rede personalizada não contiver uma tabela de rotas, o AKS criará uma para você e adicionará regras a ela durante todo o ciclo de vida do cluster. Se sua sub-rede personalizada contiver uma tabela de rotas quando você criar seu cluster, o AKS reconhecerá a tabela de rotas existente durante as operações de cluster e adicionará/atualizará as regras de acordo com as operações do provedor de nuvem.

Diagrama do modelo de rede kubenet com um cluster AKS. Dois nós são mostrados usando kubenet para rotear o tráfego NAT na sub-rede do nó da rede virtual.

Azure CNI

O plug-in CNI do Azure é uma opção de rede mais complexa com maior configurabilidade e mais recursos suportados. Com o Azure CNI, uma sub-rede pré-existente e uma rede virtual são necessárias para utilizar os clusters usando com a rede CNI do Azure exigem planejamento extra. O tamanho da sua rede virtual e sua sub-rede devem acomodar o número de pods que você planeja executar e o número de nós para o cluster. Com o Azure CNI:

  • Os nós recebem um espaço de endereço IP da sub-rede da Rede Virtual do Azure.
  • Cada pod recebe um endereço IP na sub-rede do pool de nós e pode se comunicar diretamente com outros pods e serviços.
  • Seus clusters podem ser tão grandes quanto o intervalo de endereços IP especificado. No entanto, o intervalo de endereços IP deve ser planejado com antecedência, e todos os endereços IP são consumidos pelos nós AKS com base no número máximo de pods que eles podem suportar.

Com o Azure CNI, uma sub-rede pré-existente e uma rede virtual são necessárias para utilizar o plug-in de rede CNI do Azure. Esta sub-rede e rede virtual podem ser criadas durante o tempo de criação do cluster AKS.

Diagrama do modelo de rede CNI do Azure. Os pods são mostrados comunicando através de uma ponte. Cada pod tem um IP exclusivo atribuído a partir da sub-rede do nó da rede virtual.

Sobreposição do Azure CNI

O Azure CNI Overlay representa uma evolução do Azure CNI, abordando desafios de escalabilidade e planejamento decorrentes da atribuição de IPs de rede virtual a pods. O Azure CNI Overlay atribui IPs CIDR privados a pods. Os IPs privados são separados da rede virtual e podem ser reutilizados em vários clusters. A sobreposição CNI do Azure pode ser dimensionada além do limite de 400 nós imposto em clusters Kubenet. A Sobreposição CNI do Azure é a opção recomendada para a maioria dos clusters.

Azure CNI com Tecnologia Cilium

O Azure CNI Powered by Cilium usa o Cilium para fornecer rede, observabilidade e imposição de políticas de rede de alto desempenho. Ele se integra nativamente ao Azure CNI Overlay para gerenciamento escalável de endereços IP (IPAM).

Além disso, o Cilium impõe políticas de rede por padrão, sem exigir um mecanismo de diretiva de rede separado. O Azure CNI Powered by Cilium pode ser dimensionado além dos limites do Azure Network Policy Manager de 250 nós / pod de 20 K usando programas ePBF e uma estrutura de objeto de API mais eficiente.

O Azure CNI Powered by Cilium é a opção recomendada para clusters que exigem imposição de política de rede.

Use um plugin personalizado

Para clientes que planejam usar uma configuração de rede personalizada, não há requisitos de plug-in de rede. Você pode escolher entre provedores CNI como Cilium ou Flannel. No entanto, é melhor recorrer à sua própria documentação, uma vez que não é abrangida pela Microsoft.