Implementar uma infraestrutura SDN com o SDN Express

Aplica-se a: Azure Stack HCI, versões 22H2 e 21H2; Windows Server 2022, Windows Server 2019, Windows Server 2016

Neste tópico, vai implementar uma infraestrutura de Rede Definida por Software (SDN) ponto a ponto com scripts do SDN Express PowerShell. A infraestrutura inclui um Controlador de Rede (HA) de elevada disponibilidade (NC) e, opcionalmente, uma Balanceador de Carga de Software (SLB) de elevada disponibilidade e um Gateway (GW) de elevada disponibilidade. Os scripts suportam uma implementação faseada, onde pode implementar apenas o componente Controlador de Rede para obter um conjunto de funcionalidades principal com requisitos de rede mínimos.

Também pode implementar uma infraestrutura SDN com Windows Admin Center ou com System Center Virtual Machine Manager (VMM). Para obter mais informações, veja Criar um cluster – Passo 5: SDN e veja Gerir recursos SDN nos recursos de infraestrutura do VMM.

Importante

Não pode utilizar o Microsoft System Center Virtual Machine Manager 2019 para gerir clusters com o Azure Stack HCI, versão 21H2 ou Windows Server 2022.

Antes de começar

Antes de iniciar uma implementação do SDN, planeie e configure a sua infraestrutura de rede física e de anfitrião. Veja os seguintes artigos:

Não tem de implementar todos os componentes SDN. Veja a secção Implementação faseada do Plano de uma infraestrutura de Rede Definida pelo Software para determinar que componentes de infraestrutura precisa e, em seguida, execute os scripts em conformidade.

Certifique-se de que todos os servidores anfitriões têm o sistema operativo Azure Stack HCI instalado. Veja Implementar o sistema operativo Azure Stack HCI sobre como fazê-lo.

Requisitos

Os seguintes requisitos têm de ser cumpridos para uma implementação SDN bem-sucedida:

  • Todos os servidores anfitriões têm de ter o Hyper-V ativado.
  • Todos os servidores anfitriões têm de estar associados ao Active Directory.
  • Tem de ser criado um comutador virtual.
  • A rede física tem de ser configurada para as sub-redes e VLANs definidas no ficheiro de configuração.
  • O script SDN Express tem de ser executado a partir de um computador Windows Server 2016 ou posterior.
  • O ficheiro VHDX especificado no ficheiro de configuração tem de estar acessível a partir do computador onde o script SDN Express é executado.

Transferir o ficheiro VHDX

O SDN utiliza um ficheiro VHDX que contém o sistema operativo Azure Stack HCI ou Windows Server (SO) como uma origem para criar as máquinas virtuais (VMs) do SDN.

Nota

A versão do SO no VHDX tem de corresponder à versão utilizada pelos anfitriões Hyper-V do Azure Stack HCI. Este ficheiro VHDX é utilizado por todos os componentes da infraestrutura SDN.

Para transferir uma versão em inglês do ficheiro VHDX, veja Transferir o sistema operativo Azure Stack HCI a partir do portal do Azure. Certifique-se de que seleciona VHDX em inglês na lista pendente Escolher idioma .

Atualmente, não está disponível um ficheiro VHDX não inglês para transferência. Se precisar de uma versão não inglesa, transfira o ficheiro ISO correspondente e converta-o em VHDX com o Convert-WindowsImage cmdlet. Tem de executar este script a partir de um computador cliente Windows. Provavelmente terá de executar este script como Administrador e modificar a política de execução dos scripts com o Set-ExecutionPolicy comando .

A sintaxe seguinte mostra um exemplo de utilização Convert-WindowsImagede :

Install-Module -Name Convert-WindowsImage
Import-Module Convert-WindowsImage

$wimpath = "E:\sources\install.wim"
$vhdpath = "D:\temp\AzureStackHCI.vhdx"
$edition=1
Convert-WindowsImage -SourcePath $wimpath -Edition $edition -VHDPath $vhdpath -SizeBytes 500GB -DiskLayout UEFI

Transferir o repositório do GitHub

Os ficheiros de script do SDN Express estão em direto no GitHub. O primeiro passo é colocar os ficheiros e pastas necessários no computador de implementação.

  1. Aceda ao repositório do GitHub do Microsoft SDN .

  2. No repositório, expanda a lista pendente Código e, em seguida, selecione Clonar ou Transferir ZIP para transferir os ficheiros SDN para o computador de implementação designado.

    Nota

    O computador de implementação designado tem de estar a ser executado Windows Server 2016 ou posterior.

  3. Extraia o ficheiro ZIP e copie a SDNExpress pasta para a pasta do computador de C:\ implementação.

Editar o ficheiro de configuração

O ficheiro de dados de configuração do PowerShell MultiNodeSampleConfig.psd1 contém todos os parâmetros e definições necessários para o script SDN Express como entrada para os vários parâmetros e definições de configuração. Este ficheiro tem informações específicas sobre o que precisa de ser preenchido com base no facto de estar a implementar apenas o componente do controlador de rede ou o balanceador de carga de software e os componentes do gateway. Para obter informações detalhadas, veja Planear um tópico de infraestrutura de Rede Definida pelo Software .

Navegue para a C:\SDNExpress\scripts pasta e abra o MultiNodeSampleConfig.psd1 ficheiro no seu editor de texto favorito. Altere valores de parâmetros específicos para se ajustarem à sua infraestrutura e implementação:

Definições e parâmetros gerais

As definições e parâmetros são utilizados pelo SDN em geral para todas as implementações. Para obter recomendações específicas, veja Requisitos de função de VM de infraestrutura SDN.

  • VHDPath – caminho de ficheiro VHD utilizado por todas as VMs de infraestrutura SDN (NC, SLB, GW)
  • VHDFile – nome de ficheiro VHDX utilizado por todas as VMs de infraestrutura do SDN
  • VMLocation – caminho de ficheiro para VMs de infraestrutura SDN. Tenha em atenção que os caminhos da Convenção de Nomenclatura Universal (UNC) não são suportados. Para caminhos baseados no armazenamento de clusters, utilize um formato como C:\ClusterStorage\...
  • JoinDomain – domínio ao qual as VMs de infraestrutura do SDN estão associadas
  • SDNMacPoolStart – endereço de conjunto MAC de início para VMs de carga de trabalho do cliente
  • SDNMacPoolEnd – endereço de conjunto MAC final para VMs de carga de trabalho do cliente
  • ManagementSubnet - sub-rede de rede de gestão utilizada pelo NC para gerir os componentes anfitriões, SLB e GW do Hyper-V
  • ManagementGateway - Endereço de gateway para a rede de gestão
  • ManagementDNS - servidor DNS para a rede de gestão
  • ManagementVLANID - ID de VLAN para a rede de gestão
  • DomainJoinUsername - nome de utilizador administrador. Tenha em atenção que o nome de utilizador deve estar no seguinte formato: domainname\username. Por exemplo, se o domínio for contoso.com, introduza o nome de utilizador como contoso\<username>. Não utilize formatos como contoso.com\<username> ou username@contoso.com
  • LocalAdminDomainUser - nome de utilizador do administrador local. Tenha em atenção que o nome de utilizador deve estar no seguinte formato: domainname\username. Por exemplo, se o domínio for contoso.com, introduza o nome de utilizador como contoso\<username>. Não utilize formatos como contoso.com\<username> ou username@contoso.com
  • RestName - nome DNS utilizado pelos clientes de gestão (como Windows Admin Center) para comunicar com NC
  • RestIpAddress – endereço IP estático para a API REST, que é alocado a partir da sua rede de gestão. Pode ser utilizado para resolução de DNS ou implementações baseadas em IP REST
  • HyperVHosts – servidores anfitriões a serem geridos pelo Controlador de Rede
  • NCUsername - Nome de utilizador da conta do Controlador de Rede
  • ProductKey - chave de produto para VMs de infraestrutura SDN
  • SwitchName - apenas necessário se existir mais do que um comutador virtual nos anfitriões Hyper-V
  • VMMemory – memória (em GB) atribuída a VMs de infraestrutura. A predefinição é 4 GB
  • VMProcessorCount – número de processadores atribuídos a VMs de infraestrutura. A predefinição é 8
  • Região – se não for especificado, é utilizada a região do computador de implementação
  • Fuso Horário – se não for especificado, é utilizado o fuso horário local do computador de implementação

Opcionalmente, as palavras-passe podem ser incluídas se forem armazenadas encriptadas como cadeias seguras codificadas por texto. As palavras-passe só serão utilizadas se os scripts do SDN Express forem executados no mesmo computador onde as palavras-passe foram encriptadas, caso contrário, pedirá estas palavras-passe:

  • DomainJoinSecurePassword - para conta de domínio
  • LocalAdminSecurePassword - para a conta de administrador local
  • NCSecurePassword - para a conta do Controlador de Rede

Secção VM do Controlador de Rede

É recomendado um mínimo de três VMs do Controlador de Rede para SDN.

A NCs = @() secção é utilizada para as VMs do Controlador de Rede. Certifique-se de que o endereço MAC de cada VM NC está fora do SDNMACPool intervalo listado nas definições Gerais.

  • ComputerName - nome da VM NC
  • HostName - nome do anfitrião do servidor onde está localizada a VM NC
  • ManagementIP - endereço IP de rede de gestão para a VM NC
  • MACAddress - endereço MAC para a VM NC

Secção Balanceador de Carga VM de software

É recomendado um mínimo de duas VMs de Balanceador de Carga de Software para SDN.

A Muxes = @() secção é utilizada para as VMs SLB. Certifique-se de que os MACAddress parâmetros e PAMACAddress de cada VM SLB estão fora do SDNMACPool intervalo listado nas definições Gerais. Certifique-se de que obtém o PAIPAddress parâmetro de fora do Conjunto de PA especificado no ficheiro de configuração, mas parte da PASubnet especificada no ficheiro de configuração.

Deixe esta secção vazia (Muxes = @()) se não implementar o componente SLB:

  • ComputerName - nome da VM SLB
  • HostName - nome do anfitrião do servidor onde está localizada a VM do SLB
  • ManagementIP - endereço IP de rede de gestão para a VM do SLB
  • MACAddress – endereço MAC para a VM do SLB
  • PAIPAddress – Endereço IP de rede do fornecedor (PA) para a VM do SLB
  • PAMACAddress – Endereço IP de rede do fornecedor (PA) para a VM do SLB

Secção VM do Gateway

Recomenda-se um mínimo de duas VMs de Gateway (uma ativa e outra redundante) para o SDN.

A Gateways = @() secção é utilizada para as VMs do Gateway. Certifique-se de que o MACAddress parâmetro de cada VM de Gateway está fora do SDNMACPool intervalo listado nas definições Gerais. O FrontEndMac e BackendMac tem de estar dentro do SDNMACPool intervalo. Certifique-se de que obtém os FrontEndMac parâmetros e BackendMac a partir do fim do SDNMACPool intervalo.

Deixe esta secção vazia (Gateways = @()) se não implementar o componente gateway:

  • ComputerName - nome da VM do Gateway
  • HostName - nome do anfitrião do servidor onde está localizada a VM do Gateway
  • ManagementIP – endereço IP de rede de gestão da VM do Gateway
  • MACAddress – endereço MAC da VM do Gateway
  • FrontEndMac - Endereço MAC de front-end de rede do fornecedor para a VM do Gateway
  • BackEndMac - Endereço MAC de back-end de rede do fornecedor para a VM do Gateway

Definições adicionais para SLB e Gateway

Os seguintes parâmetros adicionais são utilizados pelas VMs do SLB e do Gateway. Deixe estes valores em branco se não estiver a implementar VMs de SLB ou Gateway:

  • SDNASN – Número de Sistema Autónomo (ASN) utilizado pelo SDN para peering com comutadores de rede
  • RouterASN - ASN do router de gateway
  • RouterIPAddress - Endereço IP do router de gateway
  • PrivateVIPSubnet – endereço IP virtual (VIP) para a sub-rede privada
  • PublicVIPSubnet – endereço IP virtual da sub-rede pública

Os seguintes parâmetros adicionais são utilizados apenas pelas VMs do Gateway. Deixe estes valores em branco se não estiver a implementar VMs de Gateway:

  • PoolName - nome do conjunto utilizado por todas as VMs do Gateway

  • GRESubnet - sub-rede VIP para GRE (se utilizar ligações GRE)

  • Capacidade – capacidade em Kbps para cada VM de Gateway no conjunto

  • RedundantCount - número de gateways no modo redundante. O valor predefinido é 1. Os gateways redundantes não têm ligações ativas. Assim que um gateway ativo fica inativo, as ligações desse gateway movem-se para o gateway redundante e o gateway redundante fica ativo.

    Nota

    Se preencher um valor para RedundantCount, certifique-se de que o número total de VMs de gateway é, pelo menos, mais um do que a RedundantCount. Por predefinição, a RedundantCount é 1, pelo que tem de ter, pelo menos, 2 VMs de gateway para garantir que existe pelo menos 1 gateway ativo para alojar ligações de gateway.

Definições para redes de sobreposição de inquilinos

Os parâmetros seguintes são utilizados se estiver a implementar e a gerir redes virtualizadas de sobreposição para inquilinos. Se estiver a utilizar o Controlador de Rede para gerir redes VLAN tradicionais, estes valores podem ficar em branco.

  • PASubnet - sub-rede para a rede de Endereços do Fornecedor (PA)
  • PAVLANID - ID de VLAN para a rede PA
  • PAGateway – endereço IP do Gateway de rede pa
  • PAPoolStart - endereço IP de início para o conjunto de rede PA
  • PAPoolEnd – endereço IP final do conjunto de rede PA

Eis como a rede lógica do Fornecedor de Virtualização de Rede Hyper-V (HNV) atribui endereços IP. Utilize esta opção para planear o seu espaço de endereços para a rede do Fornecedor HNV.

  • Atribui dois endereços IP a cada servidor físico
  • Atribui um endereço IP a cada VM do SLB MUX
  • Atribui um endereço IP a cada VM de gateway

Executar o script de implementação

O script SDN Express implementa a infraestrutura SDN especificada. Quando o script estiver concluído, a sua infraestrutura SDN está pronta para ser utilizada para implementações de cargas de trabalho de VM.

  1. Reveja o README.md ficheiro para obter informações de última hora sobre como executar o script de implementação.

  2. Execute o seguinte comando a partir de uma conta de utilizador com credenciais administrativas para os servidores anfitriões do cluster:

    SDNExpress\scripts\SDNExpress.ps1 -ConfigurationDataFile MultiNodeSampleConfig.psd1 -Verbose
    
  3. Após a criação das VMs NC, configure as atualizações DNS dinâmicas para o nome do cluster do Controlador de Rede no servidor DNS. Para obter mais informações, veja Atualizações DNS dinâmicas.

Ficheiros de exemplo de configuração

Os seguintes ficheiros de exemplo de configuração para implementar o SDN estão disponíveis no repositório do GitHub do Microsoft SDN :

  • Redes VLAN tradicionais.psd1 – Implemente o Controlador de Rede para gerir políticas de rede, como microsegmentação e Qualidade de Serviço em Redes VLAN tradicionais.

  • Redes virtualizadas.psd1 – Implementar o Controlador de Rede para gerir redes virtuais e políticas de rede em redes virtuais.

  • Software Balanceador de Carga.psd1 - Implementar Controlador de Rede e Balanceador de Carga de Software para balanceamento de carga em redes virtuais.

  • SDN Gateways.psd1 – Implementar Controlador de Rede, Balanceador de Carga de Software e Gateway para conectividade a redes externas.

Passos seguintes