Compartilhar via


Implantar SDN (Rede Definida pelo Software) da Microsoft

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 do AKS em uma Rede Virtual SDN usando nosso Balanceador de Carga de Software SDN para todos os cenários de balanceamento de carga do AKS Arc. O AKS habilitado pelo Azure Arc oferece uma plataforma de contêiner com suporte total que pode executar aplicativos nativos de nuvem na plataforma de orquestração de contêiner do Kubernetes. A arquitetura dá suporte à execução de cargas de trabalho virtualizadas do Windows e do Linux.

Limitações

Os seguintes recursos estão fora do escopo e não têm suporte nesta versão GA:

  • Anexar pods e contêineres a uma rede virtual SDN.
    • Os pods usam Flannel ou Calico (padrão) como provedor de rede.
  • Imposiçã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 de VM do AKS Arc a redes lógicas SDN.
  • Instalação usando Windows Admin Center.
  • Host físico para conectividade de VM do AKS Arc: as NICs de VM são ingressadas em uma rede virtual SDN e, portanto, não podem ser acessadas 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, verifique se o ambiente atende aos critérios de implantação do AKS Arc e do SDN.

Observação

A integração de 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.

Instalar e preparar SDN para 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][].

Depois que a implantação do SDN Express for concluída, deverá haver uma tela que relate o status como íntegro.

Se algo deu errado ou está sendo relatado como não íntegro, consulte Solucionando problemas de SDN.

É importante que o SDN esteja íntegro 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 Windows Admin Center.

Etapas para instalar o AKS

Inicialize e prepare todos os computadores host físicos para o AKS Arc. Consulte Implantar um host do AKS para obter as instruções mais atualizadas.

Instalar o módulo do PowerShell do AKS-HCI

Consulte Instalar o módulo AksHci PowerShell para obter informações sobre como instalar o módulo AKS-HCI PowerShell.

Observação

Depois de concluir esta etapa, atualize ou recarregue todas as sessões abertas do PowerShell para recarregar os módulos.

Registre o provedor de recursos em sua assinatura

Para obter informações sobre como registrar o provedor de recursos em sua assinatura, consulte Instalar o módulo AksHci PowerShell.

Preparar suas máquinas para implantação

Para obter informações sobre como preparar seus computadores para implantação, consulte Preparar seus computadores para implantação.

Configurar o AKS para instalação

Escolha um dos seus computadores locais do Azure para conduzir a criação do AKS Arc. Há três etapas que precisam ser executadas antes da instalação:

  1. Defina as configurações de rede do AKS para SDN; Por exemplo, usando:

    1. Rede virtual SDN "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 em sua rede física.
    2. vSwitch nome "Externo". O vSwitch externo nos computadores locais do Azure. Certifique-se de usar o mesmo vSwitch que foi usado para a implantação de SDN.
    3. Gateway "10.20.0.1". Esse endereço é o gateway para sua rede virtual.
    4. 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 Descrição
    -name Nome da rede virtual no AKS habilitado pelo Arc (deve ser minúsculo).
    -vswitchName Nome do vSwitch externo nos computadores locais do Azure. Use o mesmo vSwitch que foi usado para implantação de SDN.
    -k8sNodeIpPoolStart
    -k8sNodeIpPoolEnd
    Intervalo de início/término de IP da rede virtual SDN.
    -ipAddressPrefix Sub-rede de rede virtual na 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.

  2. 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 Descrição
    -name A rede lógica "PublicVIP" que você forneceu ao configurar balanceadores de carga SDN. Dentro do cmdlet, esse nome deve ser minúsculo.
    -vipPoolStart Intervalo inicial de 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 de 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".
  3. Na mesma janela do PowerShell usada na Etapa 2, crie a configuração do 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 os nós de cluster local do Azure, 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 local do Azure. Para obter mais informações, consulte Serviço de nuvem local da Microsoft.

    Parâmetro Descrição
    –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 os arquivos pequenos do 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 no qual a configuração do Cloud Agent é 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 o RestName parâmetro.
    -networkControllerLbSubnetRef Referência à sub-rede de 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, use PublicVIP o LogicalNetworkId. Os VipPoolStart parâmetros and vipPoolEnd no New-AksHciVipPoolSetting cmdlet devem fazer parte da sub-rede referenciada 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.

Observação

Se você não tiver permissões de proprietário, é recomendável usar uma entidade de serviço do Azure.

Instalar o AKS

Depois que a configuração do AKS for concluída, você estará pronto para instalar o AKS no Azure Local.

Install-AksHci

Depois que a instalação for bem-sucedida, uma VM do painel de controle (cluster de gerenciamento) será criada e sua VmNIC será anexada à sua rede SDN.

Coletar logs de um SDN e AKS no ambiente local do Azure

Com o SDN e o AKS no Azure Local, obtemos o isolamento dos nós do AKS em redes virtuais. Como eles estã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

Comentários/problemas

Consulte os recursos de autoajuda aqui para SDN e aqui para AKS-HCI.

Próximas etapas

Em seguida, você pode criar clusters de carga de trabalho e implantar seus aplicativos. Todas as NICs de VM do AKS no AKS habilitadas pelo Arc são conectadas diretamente à rede virtual SDN fornecida durante a instalação. O balanceador de carga do Software SDN também é usado como balanceador de carga externo para todos os serviços do Kubernetes e atua como balanceador de carga para o servidor de API no(s) plano(s) de controle do Kubernetes.