Implantar um Azure Stack HCI virtual, versão 23H2 do sistema

Aplica-se a: Azure Stack HCI, versão 23H2

Este artigo descreve como implantar um servidor único virtualizado ou um Azure Stack HCI de vários nós, versão 23H2, em um sistema host que executa o Hyper-V no Sistema Operacional (SO) do Windows Server 2022, Windows 11 ou posterior.

Você precisa de privilégios de administrador para a implantação virtual do Azure Stack HCI e deve estar familiarizado com a solução existente do Azure Stack HCI. A implantação pode levar cerca de 2,5 horas para ser concluída.

Importante

Uma implantação virtual do Azure Stack HCI, versão 23H2 destina-se apenas a fins educacionais e de demonstração. Suporte da Microsoft não dá suporte a implantações virtuais.

Pré-requisitos

Aqui estão o hardware, a rede e outros pré-requisitos para a implantação virtual:

Requisitos de host físico

Veja a seguir os requisitos mínimos para implantar com êxito o Azure Stack HCI, versão 23H2.

Antes de começar, verifique se:

  • Você tem acesso a um sistema de host físico que está executando o Hyper-V no Windows Server 2022, Windows 11 ou posterior. Esse host é usado para provisionar uma implantação virtual do Azure Stack HCI.

  • Você tem capacidade suficiente. Mais capacidade é necessária para executar cargas de trabalho reais, como máquinas virtuais ou contêineres.

  • O hardware físico usado para a implantação virtual atende aos seguintes requisitos:

    Componente Mínimo
    Processador Intel VT-x ou AMD-V, com suporte para virtualização aninhada. Para obter mais informações, consulte Meu processador dá suporte à tecnologia de virtualização Intel®?.
    Memória O host físico deve ter um mínimo de 32 GB de RAM para implantações de nó virtual único. A VM do host virtual deve ter pelo menos 24 GB de RAM.

    O host físico deve ter um mínimo de 64 GB de RAM para duas implantações de nó virtual. Cada VM de host virtual deve ter pelo menos 24 GB de RAM.
    Adaptadores de rede de host Um único adaptador de rede.
    Armazenamento SSD (unidade de estado sólido) de 1 TB.

Requisitos de host virtual

Antes de começar, verifique se cada sistema de host virtual pode dedicar os seguintes recursos para provisionar seu sistema virtualizado do Azure Stack HCI:

Componente Requisito
Tipo de VM (máquina virtual) Inicialização Segura e TPM (Trusted Platform Module) habilitado.
vCPUs Quatro núcleos.
Memória Um mínimo de 24 GB.
Rede Pelo menos dois adaptadores de rede conectados à rede interna. A falsificação de MAC deve ser habilitada.
Disco de inicialização Um disco para instalar o sistema operacional Azure Stack HCI do ISO.
Discos rígidos para Espaços de Armazenamento Diretos Seis discos de expansão dinâmica. O tamanho máximo do disco é de 1024 GB.
Disco de dados Pelo menos 127 GB.
Sincronização de tempo na integração Desabilitado.

Observação

Esses são os requisitos mínimos para implantar com êxito o Azure Stack HCI, versão 23H2. Aumente a capacidade, como núcleos virtuais e memória ao executar cargas de trabalho reais, como máquinas virtuais ou contêineres.

Configurar o comutador virtual

Ao implantar o Azure Stack HCI em um ambiente virtual, você pode usar suas redes existentes e usar endereços IP dessa rede se elas estiverem disponíveis. Nesse caso, você só precisa criar um comutador externo e conectar todos os adaptadores de rede virtual a esse comutador virtual. Os hosts virtuais terão conectividade com sua rede física sem nenhuma configuração extra.

No entanto, se sua rede física em que você planeja implantar o ambiente virtual do Azure Stack HCI for escassa em IPs, você poderá criar um comutador virtual interno com NAT habilitado para isolar os hosts virtuais da rede física, mantendo a conectividade de saída com a Internet.

O seguinte lista as etapas para as duas opções:

Implantar com o comutador virtual externo

No computador host físico, execute o seguinte comando do PowerShell para criar um comutador virtual externo:

New-VMSwitch -Name "external_switch_name" -SwitchType External -NetAdapterName "network_adapter_name" -AllowManagementOS $true

Implantar com comutador virtual interno e NAT habilitado

No computador host físico, execute o seguinte comando do PowerShell para criar um comutador virtual interno. O uso dessa opção garante que a implantação do Azure Stack HCI seja isolada.

New-VMSwitch -Name "internal_switch_name" -SwitchType Internal -NetAdapterName "network_adapter_name" 

Depois que o comutador virtual interno é criado, um novo adaptador de rede é criado no host. Você deve atribuir um endereço IP a esse adaptador de rede para se tornar o gateway padrão dos hosts virtuais depois de conectado a essa rede de comutador interno. Você também precisa definir a sub-rede de rede NAT em que os hosts virtuais estão conectados.

O script de exemplo a seguir cria uma rede HCINAT NAT com prefixo 192.168.44.0/24 e define o 192.168.44.1 IP como o gateway padrão para a rede usando a interface no host:

#Check interface index of the new network adapter on the host connected to InternalSwitch:
Get-NetAdapter -Name "vEthernet (InternalSwitch)"

#Create the NAT default gateway IP on top of the InternalSwitch network adapter:
New-NetIPAddress -IPAddress 192.168.44.1 -PrefixLength 24 -InterfaceAlias "vEthernet (InternalSwitch)"

#Create the NAT network:
New-NetNat -Name "HCINAT"-InternalIPInterfaceAddressPrefix 192.168.44.0/24

Create o host virtual

Create uma VM para servir como o host virtual com a configuração a seguir. Você pode criar essa VM usando o Gerenciador do Hyper-V ou o PowerShell:

Siga estas etapas para criar uma VM de exemplo chamada Node1 usando cmdlets do PowerShell:

  1. Crie a VM:

    New-VHD -Path "your_VHDX_path" -SizeBytes 127GB
    New-VM -Name Node1 -MemoryStartupBytes 20GB -VHDPath "your_VHDX_path" -Generation 2 -Path "VM_config_files_path"
    
  2. Desabilitar memória dinâmica:

    Set-VMMemory -VMName "Node1" -DynamicMemoryEnabled $false
    
  3. Desabilitar pontos de verificação de VM:

    Set-VM -VMName "Node1" -CheckpointType Disabled
    
  4. Remova o adaptador de rede padrão criado durante a criação da VM na etapa anterior:

    Get-VMNetworkAdapter -VMName "Node1" | Remove-VMNetworkAdapter
    
  5. Adicione novos adaptadores de rede à VM usando nomes personalizados. Este exemplo adiciona quatro NICs, mas você pode adicionar apenas duas, se necessário. Ter quatro NICs permite testar duas intenções de rede (Mgmt_Compute e Storage , por exemplo), com duas NICs cada:

    Add-VmNetworkAdapter -VmName "Node1" -Name "NIC1"
    Add-VmNetworkAdapter -VmName "Node1" -Name "NIC2"
    Add-VmNetworkAdapter -VmName "Node1" -Name "NIC3"
    Add-VmNetworkAdapter -VmName "Node1" -Name "NIC4"
    
  6. Anexe todos os adaptadores de rede ao comutador virtual. Especifique o nome do comutador virtual criado, seja ele externo sem NAT ou interno com NAT:

    Get-VmNetworkAdapter -VmName "Node1" |Connect-VmNetworkAdapter -SwitchName "virtual_switch_name"
    
  7. Habilite a falsificação de MAC em todos os adaptadores de rede na VM Node1. A falsificação de endereço MAC é uma técnica que permite que um adaptador de rede se disfarça de outro alterando seu endereço MAC (Controle de Acesso de Mídia). Isso é necessário em cenários em que você planeja usar a virtualização aninhada:

    Get-VmNetworkAdapter -VmName "Node1" |Set-VmNetworkAdapter -MacAddressSpoofing On
    
  8. Habilite a porta de tronco (somente para implantações de vários nós) para todos os adaptadores de rede na VM Node1. Esse script configura o adaptador de rede de uma VM específica para operar no modo tronco. Normalmente, isso é usado em implantações de vários nós em que você deseja permitir que várias VLANs (Redes de Área Local Virtual) se comuniquem por meio de um único adaptador de rede:

    Get-VmNetworkAdapter -VmName "Node1" |Set-VMNetworkAdapterVlan -Trunk -NativeVlanId 0 -AllowedVlanIdList 0-1000
    
  9. Create um novo protetor de chave e atribua-o a Node1. Isso normalmente é feito no contexto da configuração de uma malha protegida no Hyper-V, um recurso de segurança que protege as VMs contra acesso ou violação não autorizados.

    Depois que o script a seguir for executado, Node1 terá um novo protetor de chave atribuído a ele. Esse protetor de chave protege as chaves da VM, ajudando a proteger a VM contra acesso não autorizado ou adulteração:

    $owner = Get-HgsGuardian UntrustedGuardian
    $kp = New-HgsKeyProtector -Owner $owner -AllowUntrustedRoot
    Set-VMKeyProtector -VMName "Node1" -KeyProtector $kp.RawData
    
  10. Habilite o vTPM para Node1. Ao habilitar o vTPM em uma VM, você pode usar o BitLocker e outros recursos que exigem TPM na VM. Depois que esse comando for executado, Node1 terá um vTPM habilitado, supondo que o hardware do computador host e a configuração da VM ofereçam suporte a esse recurso.

    Enable-VmTpm -VMName "Node1"
    
  11. Altere os processadores virtuais para 8:

     Set-VmProcessor -VMName "Node1" -Count 8
    
  12. Create unidades extras a serem usadas como disco de inicialização e discos rígidos para Espaços de Armazenamento Diretos. Depois que esses comandos forem executados, seis novos VHDXs serão criados no C:\vms\Node1 diretório, conforme mostrado neste exemplo:

     new-VHD -Path "C:\vms\Node1\s2d1.vhdx" -SizeBytes 1024GB
     new-VHD -Path "C:\vms\Node1\s2d2.vhdx" -SizeBytes 1024GB
     new-VHD -Path "C:\vms\Node1\s2d3.vhdx" -SizeBytes 1024GB
     new-VHD -Path "C:\vms\Node1\s2d4.vhdx" -SizeBytes 1024GB
     new-VHD -Path "C:\vms\Node1\s2d5.vhdx" -SizeBytes 1024GB
     new-VHD -Path "C:\vms\Node1\s2d6.vhdx" -SizeBytes 1024GB
    
  13. Anexe unidades aos VHDXs recém-criados para a VM. Nesses comandos, seis VHDs localizados no C:\vms\Node1 diretório e nomeados s2d1.vhdx por meio s2d6.vhdx de são adicionados a Node1. Cada Add-VMHardDiskDrive comando adiciona um VHD à VM, portanto, o comando é repetido seis vezes com valores de parâmetro diferentes -Path .

    Posteriormente, a Node1 VM tem seis VHDs anexados a ela. Esses VHDXs são usados para habilitar Espaços de Armazenamento Diretos na VM, que são necessárias para implantações do Azure Stack HCI:

     Add-VMHardDiskDrive -VMName "Node1" -Path "C:\vms\Node1\s2d1.vhdx"
     Add-VMHardDiskDrive -VMName "Node1" -Path "C:\vms\Node1\s2d2.vhdx"
     Add-VMHardDiskDrive -VMName "Node1" -Path "C:\vms\Node1\s2d3.vhdx"
     Add-VMHardDiskDrive -VMName "Node1" -Path "C:\vms\Node1\s2d4.vhdx"
     Add-VMHardDiskDrive -VMName "Node1" -Path "C:\vms\Node1\s2d5.vhdx"
     Add-VMHardDiskDrive -VMName "Node1" -Path "C:\vms\Node1\s2d6.vhdx"
    
  14. Desabilitar a sincronização de tempo:

    Get-VMIntegrationService -VMName "Node1" |Where-Object {$_.name -like "T*"}|Disable-VMIntegrationService
    
  15. Habilitar virtualização aninhada:

    Set-VMProcessor -VMName "Node1" -ExposeVirtualizationExtensions $true
    
  16. Inicie a VM:

    Start-VM "Node1"
    

Instalar o sistema operacional nas VMs do host virtual

Conclua as seguintes etapas para instalar e configurar o sistema operacional do Azure Stack HCI nas VMs de host virtual:

  1. Baixe o ISO do Azure Stack HCI 23H2 e instale o sistema operacional Azure Stack HCI.

  2. Atualize a senha, pois essa é a primeira inicialização da VM. Verifique se a senha atende aos requisitos de complexidade do Azure. A senha tem pelo menos 12 caracteres e inclui 1 caractere maiúsculo, 1 caractere minúsculo, 1 número e 1 caractere especial.

  3. Depois que a senha é alterada, a Ferramenta de Configuração do Servidor (SConfig) é carregada automaticamente. Selecione a opção 15 para sair para a linha de comando e execute as próximas etapas a partir daí.

  4. Inicie o SConfig executando o seguinte comando:

      SConfig
    

    Para obter informações sobre como usar o SConfig, consulte Configurar com a ferramenta de Configuração do Servidor (SConfig).

  5. Altere o nome do host para Node1. Use a opção 2 para Computer name no SConfig para fazer isso.

    A alteração do nome do host resulta em uma reinicialização. Quando solicitado a reiniciar, insira Yes e aguarde a conclusão da reinicialização. O SConfig é iniciado novamente automaticamente.

  6. No host físico, execute os Get-VMNetworkAdapter cmdlets e ForEach-Object para configurar os quatro nomes de adaptador de rede para VM Node1 mapeando os endereços MAC atribuídos para os adaptadores de rede correspondentes no sistema operacional convidado.

    1. O Get-VMNetworkAdapter cmdlet é usado para recuperar o objeto do adaptador de rede para cada NIC na VM, em que o -VMName parâmetro especifica o nome da VM e o -Name parâmetro especifica o nome do adaptador de rede. A MacAddress propriedade do objeto do adaptador de rede é acessada para obter o endereço MAC:
    Get-VMNetworkAdapter -VMName "Node1" -Name "NIC1"
    
    1. O endereço MAC é uma cadeia de caracteres de números hexadecimais. O ForEach-Object cmdlet é usado para formatar essa cadeia de caracteres inserindo hifens em intervalos específicos. Especificamente, o Insert método do objeto de cadeia de caracteres é usado para inserir um hífen nas posições 2, 5, 8, 11 e 14 na cadeia de caracteres. Em join seguida, o operador é usado para concatenar a matriz resultante de cadeias de caracteres em uma única cadeia de caracteres com espaços entre cada elemento.

    2. Os comandos são repetidos para cada uma das quatro NICs na VM e o endereço MAC formatado final para cada NIC é armazenado em uma variável separada:

    ($Node1finalmacNIC1, $Node1finalmacNIC2, $Node1finalmacNIC3, $Node1finalmacNIC4).
    
    1. O script a seguir gera o endereço MAC formatado final para cada NIC:
    $Node1macNIC1 = Get-VMNetworkAdapter -VMName "Node1" -Name "NIC1"
    $Node1macNIC1.MacAddress
    $Node1finalmacNIC1=$Node1macNIC1.MacAddress|ForEach-Object{($_.Insert(2,"-").Insert(5,"-").Insert(8,"-").Insert(11,"-").Insert(14,"-"))-join " "}
    $Node1finalmacNIC1
    
    $Node1macNIC2 = Get-VMNetworkAdapter -VMName "Node1" -Name "NIC2"
    $Node1macNIC2.MacAddress
    $Node1finalmacNIC2=$Node1macNIC2.MacAddress|ForEach-Object{($_.Insert(2,"-").Insert(5,"-").Insert(8,"-").Insert(11,"-").Insert(14,"-"))-join " "}
    $Node1finalmacNIC2
    
    $Node1macNIC3 = Get-VMNetworkAdapter -VMName "Node1" -Name "NIC3"
    $Node1macNIC3.MacAddress
    $Node1finalmacNIC3=$Node1macNIC3.MacAddress|ForEach-Object{($_.Insert(2,"-").Insert(5,"-").Insert(8,"-").Insert(11,"-").Insert(14,"-"))-join " "}
    $Node1finalmacNIC3
    
    $Node1macNIC4 = Get-VMNetworkAdapter -VMName "Node1" -Name "NIC4"
    $Node1macNIC4.MacAddress
    $Node1finalmacNIC4=$Node1macNIC4.MacAddress|ForEach-Object{($_.Insert(2,"-").Insert(5,"-").Insert(8,"-").Insert(11,"-").Insert(14,"-"))-join " "}
    $Node1finalmacNIC4
    
    
  7. Obtenha as credenciais de administrador local da Node1 VM e, em seguida, renomeie Node1:

    $cred = get-credential
    
  8. Renomeie e mapeie as NICs em Node1. A renomeação é baseada nos endereços MAC das NICs atribuídas pelo Hyper-V quando a VM é iniciada pela primeira vez. Esses comandos devem ser executados diretamente do host:

    Use o Get-NetAdapter comando para recuperar os adaptadores de rede física na VM, filtrá-los com base em seu endereço MAC e renomeá-los para o adaptador correspondente usando o Rename-NetAdapter cmdlet .

    Isso é repetido para cada uma das quatro NICs na VM, com o endereço MAC e o novo nome de cada NIC especificados separadamente. Isso estabelece um mapeamento entre o nome das NICs no Gerenciador do Hyper-V e o nome das NICs no sistema operacional da VM:

    Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {param($Node1finalmacNIC1) Get-NetAdapter -Physical | Where-Object {$_.MacAddress -eq $Node1finalmacNIC1} | Rename-NetAdapter -NewName "NIC1"} -ArgumentList $Node1finalmacNIC1
    
    Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {param($Node1finalmacNIC2) Get-NetAdapter -Physical | Where-Object {$_.MacAddress -eq $Node1finalmacNIC2} | Rename-NetAdapter -NewName "NIC2"} -ArgumentList $Node1finalmacNIC2
    
    Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {param($Node1finalmacNIC3) Get-NetAdapter -Physical | Where-Object {$_.MacAddress -eq $Node1finalmacNIC3} | Rename-NetAdapter -NewName "NIC3"} -ArgumentList $Node1finalmacNIC3
    
    Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {param($Node1finalmacNIC4) Get-NetAdapter -Physical | Where-Object {$_.MacAddress -eq $Node1finalmacNIC4} | Rename-NetAdapter -NewName "NIC4"} -ArgumentList $Node1finalmacNIC4
    
  9. Desabilite o DHCP (Dynamic Host Configuration Protocol) nas quatro NICs para VM Node1 executando os comandos a seguir.

    Observação

    As interfaces não obterão automaticamente endereços IP de um servidor DHCP e, em vez disso, precisarão ter endereços IP atribuídos manualmente a eles:

    Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {Set-NetIPInterface -InterfaceAlias "NIC1" -Dhcp Disabled}
    
    Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {Set-NetIPInterface -InterfaceAlias "NIC2" -Dhcp Disabled}
    
    Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {Set-NetIPInterface -InterfaceAlias "NIC3" -Dhcp Disabled}
    
    Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {Set-NetIPInterface -InterfaceAlias "NIC4" -Dhcp Disabled}
    
  10. Defina IP de gerenciamento, gateway e DNS. Depois que os comandos a seguir forem executados, Node1 o terá o adaptador de rede configurado com o endereço IP, a máscara de sub-rede, o gateway padrão e o NIC1 endereço do servidor DNS especificados. Verifique se o endereço IP de gerenciamento pode resolve Active Directory e tem conectividade de saída com a Internet:

    Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {New-NetIPAddress -InterfaceAlias "NIC1" -IPAddress "192.168.44.201" -PrefixLength 24 -AddressFamily IPv4 -DefaultGateway "192.168.44.1"}
    
    Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {Set-DnsClientServerAddress -InterfaceAlias "NIC1" -ServerAddresses "192.168.1.254"}
    
  11. Habilite a função Hyper-V. Esse comando reinicia a VM Node1:

    Invoke-Command -VMName "Node1"
    -Credential $cred -ScriptBlock {Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All }
    
  12. Depois que Node1 for reiniciado e a função Hyper-V for instalada, instale as Ferramentas de Gerenciamento do Hyper-V:

    Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {Install-WindowsFeature -Name Hyper-V -IncludeManagementTools}
    
  13. Quando o servidor host virtual estiver pronto, você deverá registrá-lo e atribuir permissões no Azure como um recurso do Arc.

  14. Depois que o servidor for registrado no Azure como um recurso do Arc e todas as extensões obrigatórias forem instaladas, escolha um dos métodos a seguir para implantar o Azure Stack HCI do Azure.

Repita o processo acima para nós extras se você planeja testar implantações de vários nós. Verifique se os nomes de host virtual e os IPs de gerenciamento são exclusivos e na mesma sub-rede:

Próximas etapas