Implantar a rede de contêineres para um host autônomo do Docker do Windows
O plug-in da CNI do Azure habilita a rede por contêiner/pod para hosts do Docker autônomos e clusters do Kubernetes. Neste artigo, você aprenderá a instalar e configurar o plug-in da CNI para um host autônomo do Docker do Windows.
Pré-requisitos
- Uma conta do Azure com uma assinatura ativa. Crie uma conta gratuitamente.
Criar uma rede virtual e um host do Azure Bastion
O seguinte procedimento cria uma rede virtual com uma sub-rede de recurso, uma sub-rede do Azure Bastion e um host do Bastion:
No portal do Azure, pesquise e selecione Redes virtuais.
Na página Redes virtuais, selecione + Criar.
Na guia Informações Básicas em Criar rede virtual, insira ou selecione as seguintes informações:
Configuração Valor Detalhes do projeto Subscription Selecione sua assinatura. Resource group Selecione Criar novo.
Insira test-rg para o nome.
Selecione
.Detalhes da instância Nome Insira vnet-1. Região Selecione Leste dos EUA 2. Selecione Avançar para prosseguir para a guia Segurança.
Na seção Azure Bastion, selecione Habilitar o Azure Bastion.
O Bastion usa seu navegador para se conectar às VMs em sua rede virtual por meio do Secure Shell (SSH) ou do Protocolo de Área de Trabalho Remota (RDP) usando os respectivos endereços IP privados. As VMs não precisam de endereços IP públicos, software cliente ou configuração especial. Para obter mais informações, confira O que é o Azure Bastion?.
Observação
Os preços por hora começam a partir do momento em que o Bastion é implantado, independentemente do uso de dados de saída. Para saber mais, confira Preços e SKUs. Se estiver implantando o Bastion como parte de um tutorial ou teste, recomendamos que você exclua esse recurso após terminar de usá-lo.
Em Azure Bastion, digite ou selecione as seguintes informações:
Configuração Valor Nome do host do Azure Bastion Insira bastion. Endereço IP público do Azure Bastion Selecione Criar um endereço IP público.
Insira public-ip-bastion em Nome.
Selecione
.Selecione Avançar para prosseguir para a guia Endereços IP.
Na caixa de espaço de endereço em Sub-redes, selecione a sub-rede padrão.
Em Editar sub-rede, insira ou selecione as seguintes informações:
Configuração Valor Finalidade da sub-rede Mantenha o padrão como Padrão. Nome Insira sub-rede-1. IPv4 Intervalo de endereços IPv4 Mantenha o padrão de 10.0.0.0/16. Endereço inicial Deixe o padrão de 10.0.0.0. Tamanho Deixe o padrão de /24 (256 endereços). Selecione Salvar.
Selecione Examinar + criar na parte inferior da página. Quando a validação for aprovada na validação, selecione Criar.
Serão necessários alguns minutos para que o bastion host seja implantado. Continue nas próximas etapas quando a implantação ou a criação da rede virtual for concluída.
Criar máquina virtual de teste
O procedimento a seguir cria uma máquina virtual de teste (VM) chamada vm-1 na rede virtual.
No portal, pesquise e selecione Máquinas virtuais.
Em Máquinas virtuais, selecione + Criar e, em seguida, Máquina virtual do Azure.
Na guia Informações Básicas em Criar uma máquina virtual, insira ou selecione as informações a seguir:
Configuração Valor Detalhes do projeto Subscription Selecione sua assinatura. Resource group Selecione test-rg. Detalhes da instância Nome da máquina virtual Insira vm-1. Região Selecione Leste dos EUA 2. Opções de disponibilidade Selecione Nenhuma redundância de infraestrutura necessária. Tipo de segurança Deixe o padrão de Standard. Imagem Selecione Windows Server 2022 Datacenter – x64 Gen2. Arquitetura de VMs; Mantenha o padrão x64. Tamanho Selecione um tamanho. Conta de administrador Tipo de autenticação Selecione Senha. Nome de Usuário insira azureuser. Senha Digite uma senha. Confirmar senha Digitar novamente a senha. Regras de porta de entrada Porta de entrada públicas Selecione Nenhum. Selecione a guia Rede na parte superior da página.
Insira ou selecione as seguintes informações na guia Rede:
Configuração Valor Interface de rede Rede virtual Selecione vnet-1. Sub-rede Selecione sub-rede-1 (10.0.0.0/24). IP público Selecione Nenhum. Grupo de segurança de rede da NIC Selecione Avançado. Configurar um grupo de segurança de rede Selecione Criar novo.
Insira nsg-1 no nome.
Deixe os demais valores como padrão e selecione OK.Deixe o restante das configurações nos padrões e selecione Revisar + criar.
Examine as configurações e selecione Criar.
Observação
Máquinas virtuais em uma rede virtual com um bastion host não precisam de endereços IP públicos. O Bastion fornece o IP público e as VMs usam IPs privados para se comunicar dentro da rede. Você pode remover os IPs públicos de qualquer VM em redes virtuais hospedadas no bastion. Para obter mais informações, confira dissociar um endereço IP público de uma VM do Azure.
Observação
O Azure fornece um IP de acesso de saída padrão para VMs que não receberam um endereço IP público ou que estão no pool de back-end de um balanceador de carga do Azure básico interno. O mecanismo de IP de acesso de saída padrão fornece um endereço IP de saída que não é configurável.
O IP de acesso de saída padrão é desabilitado quando um dos seguintes eventos acontece:
- Um endereço IP público é atribuído à VM.
- A VM é colocada no pool de back-end de um balanceador de carga padrão, com ou sem regras de saída.
- Um recurso da Gateway da NAT do Azure é atribuído à sub-rede da VM.
As VMs criadas por conjuntos de dimensionamento de máquinas virtuais no modo de orquestração flexível não têm acesso de saída padrão.
Para mais informações sobre conexões de saída no Azure, confira Acesso de saída padrão no Azure e Usar SNAT (conversão de endereços de rede de origem) para conexões de saída.
Adicionar configuração de IP
O plug-in da CNI do Azure aloca endereços IP para contêineres com base em um pool de endereços IP criados no adaptador de rede virtual da máquina virtual. Para cada contêiner no host, uma configuração de IP precisa existir no adaptador de rede virtual. Se o número de contêineres no servidor superar as configurações de IP no adaptador de rede virtual, o contêiner será iniciado, mas não terá um endereço IP.
Nesta seção, você adicionará uma configuração de IP ao adaptador de rede virtual da máquina virtual já criada.
Na caixa de pesquisa na parte superior do portal insira Máquina virtual. Selecione Máquinas virtuais nos resultados da pesquisa.
Selecione vm-1.
Em Configurações, selecione Rede.
Selecione o nome do adaptador de rede ao lado de Adaptador de rede:. O adaptador de rede é denominado vm-1 com um número aleatório.
Nas Configurações da Interface de rede, selecione Configurações de IP.
Em Configurações de IP selecione ipconfig1 no Nome.
Nas configurações de ipconfig1, altere a atribuição do endereço IP privado de Dinâmico para Estático.
Selecione Salvar.
Retorne às Configurações de IP.
Selecione + Adicionar.
Insira ou selecione as seguintes informações para Adicionar configuração de IP:
Configuração Valor Nome Insira ipconfig-2. Configurações de endereço IP privado Alocação Selecione Estático. Endereço IP Insira 10.0.0.5. Selecione OK.
Verifique se ipconfig2 foi adicionado como uma configuração de IP secundário.
Repita as etapas de 1 a 13 para adicionar o número de configurações e contêineres que deseja implantar no host do contêiner.
Configurar endereços IP no Windows
Para atribuir vários endereços IP a uma máquina virtual do Windows, os endereçamentos IP precisam ser adicionados ao adaptador de rede no Windows. Nesta seção, você vai entrar na máquina virtual e definir as configurações de IP criadas na seção anterior.
Na caixa de pesquisa na parte superior do portal insira Máquina virtual. Selecione Máquinas virtuais nos resultados da pesquisa.
Selecione vm-1.
Na página Visão geral da vm-1, selecione Conectar e, em seguida, Bastion.
Insira o nome de usuário e a senha criada quando implantou a máquina virtual nas etapas anteriores.
Selecione Conectar.
Abra a configuração de conexões de rede na máquina virtual. Selecione Iniciar –>Executar e insira
ncpa.cpl
.Selecione OK.
Selecione o nome do adaptador de rede da máquina virtual, depois Propriedades:
Em Propriedades da Ethernet, selecione protocolo IP versão 4 (TCP/IPv4) e Propriedades.
Insira ou selecione as seguintes informações na guia Geral:
Configuração Valor Selecione Usar o seguinte endereço IP: Endereço IP: Insira 10.0.0.4 Máscara de sub-rede: Insira 255.255.255.0 Gateway padrão Insira 10.0.0.1 Selecione Usar os seguintes endereços de servidor DNS: Servidores DNS preferenciais: Insira 168.63.129.16 Este IP é o endereço IP atribuído ao DHCP para o DNS padrão do Azure Selecione Avançado....
em Endereços IP, selecione Adicionar....
Insira ou selecione as seguintes informações:
Configuração Valor Endereço TCP/IP Endereço IP: Insira 10.0.0.5 Máscara de sub-rede: Insira 255.255.255.0 Selecione Adicionar.
Para adicionar mais endereços IP que correspondam às configurações de IP extras já criadas, selecione Adicionar.
Selecione OK.
Selecione OK.
Selecione OK.
A conexão do Bastion será removida por alguns segundos enquanto a configuração de rede é aplicada. Aguarde alguns segundos e tente se reconectar. Continue quando uma reconexão for bem-sucedida.
Instalar o Docker
O mecanismo de contêiner do Docker precisa ser instalado e configurado na máquina virtual já criada.
Entre na máquina virtual já criada com o host do Azure Bastion implantado com a rede virtual.
Na caixa de pesquisa na parte superior do portal insira Máquina virtual. Selecione Máquinas virtuais nos resultados da pesquisa.
Selecione vm-1.
Na página Visão geral da vm-1, selecione Conectar e, em seguida, Bastion.
Insira o nome de usuário e a senha criada quando implantou a máquina virtual nas etapas anteriores.
Selecione Conectar.
Abra o Windows PowerShell em vm-1.
O seguinte exemplo instala o Docker CE/Moby:
Invoke-WebRequest -UseBasicParsing "https://raw.githubusercontent.com/microsoft/Windows-Containers/Main/helpful_tools/Install-DockerCE/install-docker-ce.ps1" -o install-docker-ce.ps1 .\install-docker-ce.ps1
A máquina virtual será reinicializada para instalar o suporte ao contêiner no Windows. Reconecte-se à máquina virtual, e a instalação do Docker continuará.
Para obter mais informações sobre contêineres do Windows, confira Introdução: preparar o Windows para contêineres.
Depois que o Docker for instalado na máquina virtual, continue as etapas neste artigo.
Instalar o plug-in da CNI e o jq
O plug-in da CNI do Azure é mantido como um projeto do GitHub e está disponível para download na página do GitHub do projeto. Para este artigo, você vai baixar o repositório do plug-in da CNI na máquina virtual e depois instalar e configurar o plug-in.
Para obter mais informações sobre o plug-in da CNI do Azure, confira Rede de Contêineres do Microsoft Azure.
Na caixa de pesquisa na parte superior do portal insira Máquina virtual. Selecione Máquinas virtuais nos resultados da pesquisa.
Selecione vm-1.
Na página Visão geral da vm-1, selecione Conectar e, em seguida, Bastion.
Insira o nome de usuário e a senha criada quando implantou a máquina virtual nas etapas anteriores.
Selecione Conectar.
Use o seguinte exemplo para baixar e extrair o plug-in da CNI em uma pasta temporária na máquina virtual:
Invoke-WebRequest -Uri https://github.com/Azure/azure-container-networking/archive/refs/heads/master.zip -OutFile azure-container-networking.zip Expand-Archive azure-container-networking.zip -DestinationPath azure-container-networking
Para instalar o plug-in da CNI, mude para o diretório de scripts da pasta do plug-in da CNI que você baixou na etapa anterior. O comando install script requer um número de versão para o plug-in da CNI. No momento da publicação deste artigo, a versão mais recente é
v1.4.39
. Para obter o número de versão mais recente do plug-in ou versões anteriores, confira Versões.cd .\azure-container-networking\azure-container-networking-master\scripts\ .\Install-CniPlugin.ps1 v1.4.39
O plug-in da CNI vem com um arquivo de configuração de rede interno para o plug-in. Use o seguinte exemplo para copiar o arquivo no diretório de configuração de rede:
Copy-Item -Path "c:\k\azurecni\bin\10-azure.conflist" -Destination "c:\k\azurecni\netconf"
Instalar o jq
O script que cria os contêineres com o plug-in da CNI do Azure requer o jq do aplicativo. Para obter mais informações e o local de download, confira Baixar jq.
Abra um navegador da Web na máquina virtual e baixe o aplicativo jq.
O download é um executável autossuficiente do aplicativo. Copie o executável
jq-win64.exe
no diretórioC:\Windows
.
Criar um contêiner de teste
Para iniciar um contêiner com o plug-in da CNI, use um script especial que vem com o plug-in para criar e iniciar o contêiner. O seguinte exemplo criará um contêiner Windows Server com o script de plug-in da CNI:
cd .\azure-container-networking\azure-container-networking-master\scripts\ .\docker-exec.ps1 vnetdocker1 default mcr.microsoft.com/windows/servercore/iis add
Podem ser necessários alguns minutos para que a imagem do contêiner seja baixada pela primeira vez. Quando o contêiner for iniciado e inicializar a rede, a conexão do Bastion será desconectada. Aguarde alguns segundos, e a conexão será restabelecida.
Para verificar se o contêiner recebeu o endereço IP já configurado, conecte-se ao contêiner e veja o IP:
docker exec -it vnetdocker1 powershell
Use o comando
ipconfig
no seguinte exemplo para verificar se o endereço IP foi atribuído ao contêiner:ipconfig
Saia do contêiner e feche a conexão do Bastion com vm-1.
Quando terminar de usar os recursos que criou, você poderá excluir o grupo de recursos e todos os recursos dele.
No portal do Azure, procure por Grupos de recursos e selecione essa opção.
Na página Grupos de recursos, selecione o grupo de recursos test-rg.
Na página test-rg, selecione Excluir grupo de recursos .
Insira test-rg em Inserir o nome do grupo de recursos para confirmar a exclusão e, em seguida, selecione Excluir.
Próximas etapas
Neste artigo, você aprendeu a instalar o plug-in da CNI do Azure e a criar um contêiner de teste.
Para obter mais informações sobre a rede de contêineres do Azure e o Serviço de Kubernetes do Azure, confira: