Partilhar via


Implantar uma infraestrutura de rede definida por software usando scripts

Neste tópico, você implanta uma infraestrutura Microsoft Software Defined Network (SDN) usando scripts. A infraestrutura inclui um controlador de rede altamente disponível (HA), um HA Software Load Balancer (SLB)/MUX, redes virtuais e ACLs (Access Control Lists) associadas. Além disso, outro script implanta uma carga de trabalho de cliente para validar a sua infraestrutura SDN.

Se desejar que suas cargas de trabalho de locatário se comuniquem fora de suas redes virtuais, você pode configurar regras NAT SLB, túneis de gateway site a site ou encaminhamento de camada 3 para rotear entre cargas de trabalho virtuais e físicas.

Você também pode implantar uma infraestrutura SDN usando o Virtual Machine Manager (VMM). Para obter mais informações, consulte Configurar uma infraestrutura SDN (Software Defined Network) na malha do VMM.

Pré-implantação

Importante

Antes de começar a implantação, você deve planejar e configurar seus hosts e infraestrutura de rede física. Para obter mais informações, consulte Planejar uma infraestrutura de rede definida por software.

Todos os Hyper-V hosts devem ter o Windows Server 2019 ou 2016 instalado.

Etapas de implantação

Comece por configurar o comutador virtual e a atribuição de endereço IP do host Hyper-V (servidores físicos) Hyper-V. Qualquer tipo de armazenamento compatível com o Hyper-V, compartilhado ou local pode ser usado.

Instalar rede de host

  1. Instale os drivers de rede mais recentes disponíveis para seu hardware NIC.

  2. Instale a função Hyper-V em todos os hosts. Para obter mais informações, consulte Instalar a função Hyper-V no Windows Server.

    Install-WindowsFeature -Name Hyper-V -ComputerName <computer_name> -IncludeManagementTools -Restart
    
  3. Crie o comutador virtual Hyper-V.

    Use o mesmo nome de switch para todos os hosts, por exemplo, sdnSwitch. Configure pelo menos um adaptador de rede ou, se estiver usando SET, configure pelo menos dois adaptadores de rede. A dispersão máxima de entrada ocorre quando se utilizam duas NICs.

    New-VMSwitch "<switch name>" -NetAdapterName "<NetAdapter1>" [, "<NetAdapter2>" -EnableEmbeddedTeaming $True] -AllowManagementOS $True
    

    Sugestão

    Você pode pular as etapas 4 e 5 se tiver NICs de gerenciamento separadas.

  4. Consulte o tópico de planejamento Planejar uma infraestrutura de rede definida por software e trabalhe com o administrador da rede para obter a ID de VLAN da VLAN de gerenciamento. Ligue a vNIC de gestão do novo Switch Virtual criado à VLAN de gestão. Esta etapa pode ser omitida se seu ambiente não usar tags VLAN.

    Set-VMNetworkAdapterIsolation -ManagementOS -IsolationMode Vlan -DefaultIsolationID <Management VLAN> -AllowUntaggedTraffic $True
    
  5. Consulte o tópico de planejamento Planejar uma infraestrutura de rede definida por software e trabalhe com o administrador da rede para usar atribuições DHCP ou IP estático para atribuir um endereço IP à vNIC de gerenciamento do vSwitch recém-criado. O exemplo a seguir mostra como criar um endereço IP estático e atribuí-lo à vNIC de gerenciamento do vSwitch:

    New-NetIPAddress -InterfaceAlias "vEthernet (<switch name>)" -IPAddress <IP> -DefaultGateway <Gateway IP> -AddressFamily IPv4 -PrefixLength <Length of Subnet Mask - for example: 24>
    
  6. [Opcional] Implantar uma máquina virtual para hospedar os Serviços de Domínio Ative Directory Instale os Serviços de Domínio Ative Directory (Nível 100) e um Servidor DNS.

    a) Conecte a máquina virtual do Ative Directory/Servidor DNS à VLAN de gerenciamento:

    Set-VMNetworkAdapterIsolation -VMName "<VM Name>" -Access -VlanId <Management VLAN> -AllowUntaggedTraffic $True
    

    b) Instale os Serviços de Domínio Ative Directory e o DNS.

    Observação

    O controlador de rede suporta certificados Kerberos e X.509 para autenticação. Este guia usa ambos os mecanismos de autenticação para fins diferentes (embora apenas um seja necessário).

  7. Junte todos os Hyper-V anfitriões ao domínio. Verifique se a entrada do servidor DNS para o adaptador de rede que tem um endereço IP atribuído à rede de gerenciamento aponta para um servidor DNS que pode resolver o nome de domínio.

    Set-DnsClientServerAddress -InterfaceAlias "vEthernet (<switch name>)" -ServerAddresses <DNS Server IP>
    

    a) Clique com o botão direito do rato em Iniciar, selecione Sistema e, em seguida, selecione Alterar Definições. Altere as configurações. b) Selecione Alterar. c. Selecione Domínio e especifique o nome do domínio. d. Selecione OK. e. Digite as credenciais de nome de usuário e senha quando solicitado. f. Reinicie o servidor.

Validação

Use as etapas a seguir para validar se a rede de host está configurada corretamente.

  1. Verifique se o Switch de VM foi criado com êxito:

    Get-VMSwitch "<switch name>"
    
  2. Verifique se a vNIC de Gestão no Comutador de VM está conectada à VLAN de Gestão.

    Observação

    Relevante somente se o tráfego de Gerenciamento e Locatário compartilharem a mesma NIC.

    Get-VMNetworkAdapterIsolation -ManagementOS
    
  3. Valide todos os hosts Hyper-V e recursos de gestão externos, por exemplo, servidores DNS. Certifique-se de que eles estejam acessíveis via ping usando seu endereço IP de gerenciamento e/ou FQDN (nome de domínio totalmente qualificado).

    ping <Hyper-V Host IP>
    ping <Hyper-V Host FQDN>
    
  4. Execute o seguinte comando no host de implantação e especifique o FQDN de cada host Hyper-V para garantir que as credenciais Kerberos usadas forneçam acesso a todos os servidores.

    winrm id -r:<Hyper-V Host FQDN>
    

Executar scripts SDN Express

  1. Vá para o Microsoft SDN GitHub Repository para os arquivos de instalação.

  2. Transfira os ficheiros de instalação do repositório para o computador de implementação designado. Clique em Clonar ou baixar e, em seguida, clique em Baixar ZIP.

    Observação

    O computador de implantação designado deve estar executando o Windows Server 2016 ou posterior.

  3. Expanda o arquivo zip e copie a pasta SDNExpress para a pasta do computador de C:\ implantação.

  4. Compartilhe a C:\SDNExpress pasta como "SDNExpress" com permissão para todoslerem / gravarem.

  5. Navegue até a pasta C:\SDNExpress.

    Você verá as seguintes pastas:

    Nome da pasta Descrição
    AgentConf Contém cópias atualizadas dos esquemas OVSDB usados pelo Agente de Host SDN em cada host do Windows Server 2016 Hyper-V para programar a diretiva de rede.
    Certificados Local compartilhado temporário para o arquivo de certificado NC.
    Imagens Vazio, coloque sua imagem vhdx do Windows Server 2016 aqui
    Ferramentas Utilitários para solução de problemas e debugging. Copiado para os hosts e máquinas virtuais. Recomendamos que você coloque Network Monitor ou Wireshark aqui para que esteja disponível, se necessário.
    Roteiros Scripts de implantação.

    - SDNExpress.ps1
    Implanta e configura a malha, incluindo as máquinas virtuais do controlador de rede, as máquinas virtuais SLB Mux, o(s) pool(s) de gateway e a(s) máquina(s) virtual(is) de gateway HNV correspondente(s) ao(s) pool(s).
    - FabricConfig.psd1
    Um modelo de arquivo de configuração para o script SDNExpress. Você personalizará isso para seu ambiente.
    - SDNExpressTenant.ps1
    Implanta uma carga de trabalho de locatário de exemplo em uma rede virtual com um VIP com balanceamento de carga.
    Também provisiona uma ou mais conexões de rede (IPSec S2S VPN, GRE, L3) nos gateways de borda do provedor de serviços que estão conectados à carga de trabalho do locatário criada anteriormente. Os gateways IPSec e GRE estão disponíveis para conectividade através do endereço IP VIP correspondente, e o gateway de encaminhamento L3 através do pool de endereços correspondente.
    Esse script também pode ser usado para excluir a configuração correspondente com uma opção Desfazer.
    - TenantConfig.psd1
    Um ficheiro de configuração de modelo para carga de trabalho de locatário e configuração do gateway S2S.
    - SDNExpressUndo.ps1
    Limpa o ambiente de malha e o redefine para um estado inicial.
    - SDNExpressEnterpriseExample.ps1
    Provisiona um ou mais ambientes de site corporativo com um Gateway de Acesso Remoto e (opcionalmente) uma máquina virtual corporativa correspondente por site. Os gateways empresariais IPSec ou GRE ligam-se ao endereço IP VIP correspondente do gateway do fornecedor de serviços para estabelecer os túneis S2S. O gateway de encaminhamento L3 se conecta pelo endereço IP correspondente do Peer.
    Esse script também pode ser usado para excluir a configuração correspondente com uma opção Desfazer.
    - EnterpriseConfig.psd1
    Um arquivo de configuração de modelo para o gateway corporativo site a site e a configuração da VM cliente.

    TenantApps Arquivos usados para implantar cargas de trabalho de locatário de exemplo.
  6. Verifique se o arquivo VHDX do Windows Server 2016 está na pasta Imagens .

  7. Personalize o arquivo SDNExpress\scripts\FabricConfig.psd1 alterando as tags << Substituir >> por valores específicos para se adequar à sua infraestrutura de laboratório, incluindo nomes de host, nomes de domínio, nomes de utilizador e senhas, e informações de rede para as redes listadas no tópico Rede de Planeamento.

  8. Crie um registro Host A no DNS para o NetworkControllerRestName (FQDN) e NetworkControllerRestIP.

  9. Execute o script como um usuário com credenciais de administrador de domínio:

    SDNExpress\scripts\SDNExpress.ps1 -ConfigurationDataFile FabricConfig.psd1 -Verbose
    
  10. Para desfazer todas as operações, execute o seguinte comando:

 SDNExpress\scripts\SDNExpressUndo.ps1 -ConfigurationDataFile FabricConfig.psd1 -Verbose

Validação

Supondo que o script SDN Express tenha sido executado até ao fim sem reportar erros, pode realizar o passo seguinte para garantir que os recursos de rede foram implantados corretamente e estão disponíveis para implantação de inquilino.

Use as Ferramentas de Diagnóstico para garantir que não haja erros em nenhum recurso de malha no controlador de rede.

Debug-NetworkControllerConfigurationState -NetworkController <FQDN of Network Controller Rest Name>

Implantar uma carga de trabalho de locatário de exemplo com o balanceador de carga de software

Agora que os recursos de infraestrutura foram implantados, pode validar a sua implantação SDN de ponta a ponta ao implementar uma carga de trabalho de exemplo para o cliente. Essa carga de trabalho de locatário consiste em duas sub-redes virtuais (camada da Web e camada de banco de dados) protegidas por meio de regras de Lista de Controle de Acesso (ACL) usando o firewall distribuído SDN. A sub-rede virtual da camada Web é acessível através do SLB/MUX usando um endereço IP Virtual (VIP). O script implanta automaticamente duas máquinas virtuais de camada da Web e uma máquina virtual de camada de banco de dados e as conecta às sub-redes virtuais.

  1. Personalize o arquivo SDNExpress\scripts\TenantConfig.psd1 alterando as << tags Replace >> com valores específicos (por exemplo: nome da imagem VHD, nome REST do controlador de rede, nome vSwitch, etc., conforme definido anteriormente no arquivo FabricConfig.psd1)

  2. Executa o script. Por exemplo:

    SDNExpress\scripts\SDNExpressTenant.ps1 -ConfigurationDataFile TenantConfig.psd1 -Verbose
    
  3. Para desfazer a configuração, execute o mesmo script com o parâmetro undo . Por exemplo:

    SDNExpress\scripts\SDNExpressTenant.ps1 -Undo -ConfigurationDataFile TenantConfig.psd1 -Verbose
    

Validação

Para validar se a implantação do locatário foi bem-sucedida, faça o seguinte:

  1. Faça logon na máquina virtual da camada de banco de dados e tente executar ping no endereço IP de uma das máquinas virtuais da camada da Web (verifique se o Firewall do Windows está desativado nas máquinas virtuais da camada da Web).

  2. Verifique se há erros nos recursos do locatário do controlador de rede. Execute o seguinte a partir de qualquer host Hyper-V com conectividade de camada 3 para o controlador de rede:

    Debug-NetworkControllerConfigurationState -NetworkController <FQDN of Network Controller REST Name>
    
  3. Para verificar se o balanceador de carga está sendo executado corretamente, execute o seguinte a partir de qualquer host Hyper-V:

    wget <VIP IP address>/unique.htm -disablekeepalive -usebasicparsing
    

    onde <VIP IP address> é o endereço IP VIP da camada da Web que você configurou no arquivo TenantConfig.psd1.

    Sugestão

    Procure a VIPIP variável em TenantConfig.psd1.

    Execute isto várias vezes para observar como o balanceador de carga alterna entre os DIPs disponíveis. Você também pode observar esse comportamento usando um navegador da Web. Navegue até <VIP IP address>/unique.htm. Feche o navegador, abra uma nova instância e navegue novamente. Você verá a página azul e a página verde alternarem, exceto se o navegador armazenar a página em cache antes de o cache atingir o tempo limite.