Identificar opções de plug-in
Um plug-in de rede é necessário para um cluster AKS a fim de facilitar a comunicação entre pods, entre pods e nós e, em alguns casos, entre nós e pods. Há dois modelos de rede disponíveis no AKS: kubenet e CNI do Azure. Há outras evoluções do CNI do Azure, incluindo a Sobreposição de CNI do Azure, a CNI do Azure para alocação dinâmica de IP e o CNI do Azure da plataforma Cilium. Cada um desses modelos tem seu próprio conjunto de recursos e limitações.
kubenet
Por padrão, os clusters do AKS usam kubenet. Com o kubenet, uma rede virtual, uma sub-rede e uma tabela de roteamento do Azure são criadas automaticamente quando o cluster é implantado, mas os recursos de rede existentes podem ser fornecidos. Com o kubenet:
- Os nós recebem um endereço IP de uma sub-rede da rede virtual do Azure.
- Os pods recebem um endereço IP de um espaço de endereços logicamente diferente da sub-rede do pool de nós.
- O NAT (Conversão de Endereços de Rede) é configurado para que os pods possam alcançar recursos na Rede Virtual do Azure.
- O endereço IP de origem do tráfego é convertido no endereço IP primário do nó.
Os pods não podem se comunicar diretamente entre si em diferentes nós. Em vez disso, o roteamento definido pelo usuário (UDR) e o encaminhamento de IP são usados para conectividade entre os pods nos nós. Por padrão, a configuração de encaminhamento de UDRs e IP é criada e mantida pelo serviço AKS, mas você tem a opção de trazer sua própria tabela de rotas para o 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 a sua sub-rede personalizada contiver uma tabela de rotas quando você criar o cluster, o AKS confirmará a tabela de rotas existente durante operações de cluster e adicionará/atualizará as regras de acordo com as operações do provedor de nuvem.
CNI do Azure
O plug-in da CNI do Azure é uma opção de rede mais complexa com maior capacidade de configuração e mais recursos com suporte. Com a CNI do Azure, é necessário ter uma sub-rede pré-existente e uma rede virtual para utilizar os clusters usando a rede CNI do Azure, o que exige um planejamento adicional. O tamanho da rede virtual e da sub-rede deve acomodar o número de pods que você planeja executar e o número de nós do cluster. Com a CNI do Azure:
- Os nós recebem um espaço de endereços 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 a que eles podem dar suporte.
Com a CNI do Azure, são necessárias uma sub-rede e uma rede virtual pré-existentes para utilizar o plug-in de rede da CNI do Azure. Essa sub-rede e rede virtual podem ser criadas durante o tempo de criação do cluster do AKS.
Sobreposição de CNI do Azure
A Sobreposição de CNI do Azure representa uma evolução do CNI do Azure, abordando os desafios de escalabilidade e planejamento decorrentes da atribuição de IPs de VNet para pods. A Sobreposição de CNI do Azure atribui IPs CIDR privados aos pods. Os IPs privados são separados da rede virtual e podem ser reusados em vários clusters. A Sobreposição de CNI do Azure pode ser dimensionada além do limite de 400 nós imposto nos clusters do Kubenet. A Sobreposição da CNI do Azure é a opção recomendada para a maioria dos clusters.
CNI do Azure da plataforma Cilium
O CNI do Azure da plataforma Cilium utiliza o Cilium para fornecer sistema de rede de alto desempenho, observabilidade e imposição de políticas de rede. Ele se integra nativamente à Sobreposição de CNI do Azure para o gerenciamento escalonável de endereço de IP (IPAM).
Além disso, a Cilium impõe políticas de rede por padrão, sem exigir um mecanismo de política de rede separado. O CNI do Azure Alimentado pelo Cilium pode ser dimensionado além dos Limites do Gerenciador de Políticas de Rede do Azure de 250 nós/20 mil pods usando programas ePBF e uma estrutura de objeto de API mais eficiente.
A CNI do Azure da plataforma Cilium é a opção recomendada para clusters que exigem imposição de políticas de rede.
Use um plug-in personalizado
Para os clientes que planejam usar uma configuração de rede personalizada, não há requisitos de plug-in de rede. Você pode escolher entre provedores de CNI como Cilium ou Flannel. No entanto, é melhor consultar sua própria documentação, pois ela não é coberta pela Microsoft.