Ativar contentores para utilizar as capacidades da Rede Virtual do Azure
Inclua o conjunto avançado de capacidades de rede do Azure em contentores, utilizando a mesma pilha de rede definida por software que capacita as máquinas virtuais. O plug-in da interface de rede de contentores (CNI) da Rede Virtual do Azure (CNI) é instalado numa Máquina Virtual do Azure. O plug-in atribui endereços IP de uma rede virtual a contentores colocados na máquina virtual, anexa-os à rede virtual e liga-os diretamente a outros contentores e recursos de rede virtual. O plug-in não depende de redes sobrepostas nem de rotas para a conectividade e fornece o mesmo desempenho das máquinas virtuais. Num nível elevado, o plug-in-fornece as seguintes capacidades:
Um endereço IP de rede virtual é atribuído a cada Pod, que pode consistir num ou mais contentores.
Os Pods podem ligar a redes virtuais em modo de peering e no local através do ExpressRoute ou uma rede de VPNs. Os Pods também são acessíveis a partir de redes em modo de peering e no local.
Os pods podem acessar serviços como o Armazenamento do Azure e o Banco de Dados SQL do Azure que são protegidos por pontos de extremidade de serviço de rede virtual.
Os grupos de segurança de rede e as rotas podem ser aplicados diretamente aos Pods.
Os Pods podem ser colocados diretamente por trás de um Balanceador de Carga interno ou público do Azure, tal como nas máquinas virtuais
Pode ser atribuído um endereço IP público aos Pods, tornando-os diretamente acessíveis a partir da Internet. Os Pods também podem aceder à Internet.
Funciona perfeitamente com recursos do Kubernetes como os Serviços, controladores de entradas e o DNS do Kube. Um Serviço Kubernetes também pode ser exposto interna ou externamente através do Balanceador de Carga do Azure.
A imagem seguinte mostra como o plug-in fornece capacidades da Rede Virtual do Azure aos Pods:
O plug-in suporta plataformas Linux e Windows.
Ligar Pods a uma rede virtual
Os Pods são colocados numa máquina virtual que faz parte de uma rede virtual. Um conjunto de endereços IP para os Pods é configurado como os endereços secundários na interface de rede de uma máquina virtual. O Azure CNI configura a conectividade de Rede básica dos Pods e gere a utilização dos endereços IP no conjunto. Quando um Pod é apresentado na máquina virtual, o Azure CNI atribui um endereço IP disponível no conjunto e liga o Pod a uma ponte de software na máquina virtual. Quando o Pod termina, o endereço IP é adicionado novamente ao conjunto. A imagem seguinte mostra como os Pods ligam a uma rede virtual:
Acesso à Internet
Para permitir aos Pods aceder à Internet, o plug-in configura regras de iptables para a tradução de endereços de rede (NAT) do tráfego vinculado à Internet dos Pods. O endereço IP de origem do pacote é traduzido para o endereço IP primário na interface de rede da máquina virtual. As máquinas virtuais do Windows extraem automaticamente o tráfego do NAT de origem (SNAT) destinado aos endereços IP fora da sub-rede na qual está a máquina virtual. Normalmente, todo o tráfego destinado a um endereço IP fora do intervalo IP da rede virtual é traduzido.
Limites
O plug-in suporta até 250 Pods por máquina virtual e até 16 000 Pods numa rede virtual. Estes limites são diferentes para o Azure Kubernetes Service.
Utilizar o plug-in
O plug-in pode ser utilizado das seguintes formas, para fornecer a ligação à rede virtual básica para Pods ou contentores de Docker:
Azure Kubernetes Service: o plug-in está integrado no Azure Kubernetes Service (AKS) e pode ser utilizado ao escolher a opção Redes Avançadas. As Redes Avançadas permitem implementar um cluster do Kubernetes numa rede virtual existente ou nova. Para saber mais sobre as Redes Avançadas e os passos para configurá-las, veja Configuração de redes no AKS.
AKS-Engine: AKS-Engine é uma ferramenta que gera um modelo do Azure Resource Manager para a implantação de um cluster Kubernetes no Azure. Para obter instruções detalhadas, consulte Implantar o plug-in para clusters Kubernetes do AKS-Engine.
Criando seu próprio cluster Kubernetes no Azure: o plug-in pode ser usado para fornecer rede básica para Pods em clusters Kubernetes que você mesmo implanta, sem depender do AKS ou de ferramentas como o AKS-Engine. Neste caso, o plug-in é instalado e ativado em todas as máquinas virtuais num cluster. Para obter instruções detalhadas, veja Implementar o plug-in para um cluster do Kubernetes que implementar por conta própria.
Ligação à rede virtual para contentores de Docker no Azure: o plug-in pode ser utilizado quando não quer criar um cluster do Kubernetes e gostaria de criar contentores do Docker com ligação à rede virtual, em máquinas virtuais. Para obter instruções detalhadas, veja Implementar o plug-in para o Docker.
Próximos passos
Implantar rede de contêiner para um host Linux Docker autônomo
Implantar rede de contêiner para um host Windows Docker autônomo
Implementar o plug-in para clusters do Kubernetes ou contentores de Docker