Implantar o Microsoft Software Defined Networking (SDN)
Aplica-se a: AKS no Azure Stack HCI 22H2, AKS no Windows Server
Este artigo descreve como implantar VMs de infraestrutura e carga de trabalho AKS em uma Rede Virtual SDN usando nosso SDN Software Load Balancer para todos os cenários de balanceamento de carga AKS Arc. O AKS habilitado pelo Azure Arc oferece uma plataforma de contêiner totalmente suportada que pode executar aplicativos nativos da nuvem na plataforma de orquestração de contêineres do Kubernetes. A arquitetura suporta a execução de cargas de trabalho virtualizadas do Windows e Linux.
Limitações
Os seguintes recursos estão fora do escopo e não são suportados nesta versão do GA:
- Anexar pods e contêineres a uma rede virtual SDN.
- Os pods usam Flannel ou Calico (padrão) como o provedor de rede.
- Aplicação de política de rede usando os Grupos de Segurança de Rede SDN.
- Os Grupos de Segurança de Rede SDN ainda podem ser configurados fora do AKS Arc usando ferramentas SDN (REST/PowerShell/Windows Admin Center/SCVMM), mas os objetos NetworkPolicy do Kubernetes não os configuram.
- Anexando NICs AKS Arc VM a redes lógicas SDN.
- Instalação usando o Windows Admin Center.
- Host físico para conectividade de VM AKS Arc: As NICs de VM são unidas a uma rede virtual SDN e, portanto, não são acessíveis a partir do host por padrão. Por enquanto, você pode habilitar essa conectividade manualmente anexando um IP público diretamente à VM usando o SDN Software Load Balancer.
Pré-requisitos
Para implantar o AKS habilitado pelo Arc com SDN, certifique-se de que seu ambiente atenda aos critérios de implantação do AKS Arc e do SDN.
Nota
A integração SDN com o AKS Arc requer apenas o controlador de rede e o balanceador de carga de software. As VMs de gateway são opcionais.
Instale e prepare o SDN para o AKS Arc
O primeiro passo é instalar o SDN. Para instalar o SDN, recomendamos o SDN Express ou o Windows Admin Center. Um arquivo de configuração de referência que implanta todos os componentes de infraestrutura SDN necessários pode ser encontrado aqui: [Software Load Balancer.psd1][].
Quando a implantação do SDN Express for concluída, deve haver uma tela que informe o status como íntegro.
Se algo deu errado ou está sendo relatado como não íntegro, consulte Solução de problemas de SDN.
É importante que a SDN esteja saudável antes de prosseguir. Se você implantar o SDN em um novo ambiente, também recomendamos criar VMs de teste e verificar a conectividade com os VIPs do balanceador de carga. Veja como criar e anexar VMs a uma rede virtual SDN usando o Windows Admin Center.
Passos para instalar o AKS
Inicialize e prepare todas as máquinas host físicas para o AKS Arc. Consulte Implantar um host AKS para obter as instruções mais atualizadas.
Instalar o módulo AKS-HCI PowerShell
Consulte Instalar o módulo AksHci PowerShell para obter informações sobre como instalar o módulo AKS-HCI PowerShell.
Nota
Depois de concluir esta etapa, atualize ou recarregue todas as sessões abertas do PowerShell para recarregar os módulos.
Registar o fornecedor de recursos na sua subscrição
Para obter informações sobre como registrar o provedor de recursos em sua assinatura, consulte Instalar o módulo AksHci PowerShell.
Prepare suas máquinas para implantação
Para obter informações sobre como preparar suas máquinas para implantação, consulte Preparar suas máquinas para implantação.
Configurar o AKS para instalação
Escolha um dos seus servidores Azure Stack HCI para impulsionar a criação do AKS Arc. Há três etapas que precisam ser feitas antes da instalação:
Configure as configurações de rede AKS para SDN; por exemplo, usando:
- SDN Rede virtual "10.20.0.0/24" (10.20.0.0 – 10.20.0.255). Uma rede virtualizada e você pode usar qualquer sub-rede IP. Essa sub-rede não precisa existir na sua rede física.
- vSwitch nome "Externo." O vSwitch externo nos servidores HCI do Azure Stack. Certifique-se de usar o mesmo vSwitch que foi usado para implantação de SDN.
- Gateway "10.20.0.1." Este endereço é a porta de entrada para a sua rede virtual.
- Servidor DNS "10.127.130.7." O servidor DNS da sua rede virtual.
$vnet = New-AksHciNetworkSetting –name "myvnet" –vswitchName "External" -k8sNodeIpPoolStart "10.20.0.2" -k8sNodeIpPoolEnd "10.20.0.255" -ipAddressPrefix "10.20.0.0/24" -gateway "10.20.0.1" -dnsServers "10.127.130.7"
Parâmetro Description -name
Nome da rede virtual no AKS ativado pelo Arc (deve ser minúsculo). -vswitchName
Nome do vSwitch externo nos servidores HCI do Azure Stack. Use o mesmo vSwitch que foi usado para a implantação do SDN. -k8sNodeIpPoolStart
-k8sNodeIpPoolEnd
Intervalo de início / fim IP da rede virtual SDN. -ipAddressPrefix
Sub-rede de rede virtual em notação CIDR. -gateway
-dnsServers
Gateway e servidor DNS da rede virtual SDN. Para obter mais informações sobre esses parâmetros, consulte New-AksHciNetworkSetting.
Na mesma janela do PowerShell que você usou na Etapa 1, crie um pool VIP para informar o AKS sobre nossos IPs que podem ser usados em nossa rede lógica de balanceamento de carga SDN:
$VipPool = New-AksHciVipPoolSetting -name "publicvip" -vipPoolStart "10.127.132.16" -vipPoolEnd "10.127.132.23
Parâmetro Description -name
A rede lógica "PublicVIP" que você forneceu ao configurar balanceadores de carga SDN. No cmdlet, esse nome deve ser minúsculo. -vipPoolStart
Intervalo de início IP da rede lógica usada para o pool VIP do balanceador de carga público. Você deve usar um intervalo de endereços da rede lógica SDN "PublicVIP". -vipPoolEnd
Intervalo final IP da rede lógica usada para o pool VIP do balanceador de carga público. Você deve usar um intervalo de endereços da rede lógica SDN "PublicVIP". Na mesma janela do PowerShell usada na Etapa 2, crie a configuração AKS para SDN fornecendo referências às redes SDN de destino e forneça as configurações de rede ($vnet, $vipPool) que definimos anteriormente:
Set-AksHciConfig –imageDir "C:\ClusterStorage\Volume1\ImageStore" –workingDir "C:\ClusterStorage\Volume1\WorkDir" –cloudConfigLocation "C:\ClusterStorage\Volume1\Config" –vnet $vnet –useNetworkController –NetworkControllerFqdnOrIpAddress "nc.contoso.com" –networkControllerLbSubnetRef "/logicalnetworks/PublicVIP/subnets/my_vip_subnet" –networkControllerLnetRef "/logicalnetworks/HNVPA" -vipPool $vipPool
A rede lógica HNVPA é usada como o provedor subjacente para a rede virtual AKS Arc.
Se você usar uma atribuição de endereço IP estático para seus nós de cluster HCI do Azure Stack, também deverá fornecer o
CloudServiceCidr
parâmetro. Esse parâmetro é o endereço IP do serviço de nuvem MOC e deve estar na mesma sub-rede que os nós de cluster HCI do Azure Stack. Para obter mais informações, consulte Serviço de nuvem local da Microsoft.Parâmetro Description –imageDir
O caminho para onde o AKS Arc armazena suas imagens VHD. Esse caminho deve ser um caminho de armazenamento compartilhado ou um compartilhamento SMB. –workingDir
O caminho para onde pequenos arquivos para o módulo são armazenados. Esse caminho deve ser um caminho de armazenamento compartilhado ou um compartilhamento SMB. -cloudConfigLocation
O caminho para o diretório onde a configuração do agente de nuvem é armazenada. Esse caminho deve ser um caminho de armazenamento compartilhado ou um compartilhamento SMB. -vnet
Nome da AksHciNetworkSetting
variável criada na etapa anterior-useNetworkController
Habilite a integração com SDN. -networkControllerFqdnOrIpAddress
FQDN do controlador de rede. Você pode obter o FQDN executando Get-NetworkController
na VM do controlador de rede e usando oRestName
parâmetro.-networkControllerLbSubnetRef
Referência à sub-rede lógica VIP pública configurada no controlador de rede. Você pode obter essa sub-rede executando o Get-NetworkControllerLogicalSubnet
cmdlet. Ao usar esse cmdlet, usePublicVIP
como oLogicalNetworkId
arquivo . OsVipPoolStart
parâmetros evipPoolEnd
noNew-AksHciVipPoolSetting
cmdlet devem fazer parte da sub-rede mencionada aqui.-networkControllerLnetRef
Normalmente, esse valor é "/logicalnetworks/HNVPA". -vipPool
Pool VIP usado como IPs de front-end para balanceamento de carga. Para obter mais informações sobre esses parâmetros, consulte Set-AksHciConfig.
Entre no Azure e defina as configurações de registro
Siga as instruções aqui para definir as configurações de registro.
Nota
Se você não tiver permissões de proprietário, é recomendável usar uma entidade de serviço do Azure.
Instalar o AKS
Quando a configuração do AKS for concluída, você estará pronto para instalar o AKS no Azure Stack HCI.
Install-AksHci
Quando a instalação for bem-sucedida, uma VM de plano de controle (cluster de gerenciamento) será criada e sua VmNIC será conectada à sua rede SDN.
Coletar logs de um SDN e AKS em ambiente HCI
Com SDN e AKS no HCI, obtemos isolamento dos nós AKS em redes virtuais. Como eles são isolados, devemos importar um novo script de coleta de logs SDN AKS-HCI e executar um comando modificado que usa o balanceador de carga para recuperar logs dos nós:
Install-Module -Name AksHciSdnLogCollector -Repository PSGallery
Get-AksHciLogsSdn
Feedback/problemas
Veja os recursos de autoajuda aqui para SDN e aqui para AKS-HCI.
Próximos passos
Em seguida, você pode criar clusters de carga de trabalho e implantar seus aplicativos. Todas as NICs AKS VM no AKS habilitadas pelo Arc são perfeitamente conectadas à rede virtual SDN que foi fornecida durante a instalação. O balanceador de carga do software SDN também é usado como o balanceador de carga externo para todos os serviços do Kubernetes e atua como o balanceador de carga para o servidor de API no(s) plano(s) de controle do Kubernetes.