Implantar um sistema virtual Azure Local, versão 23H2
Aplica-se a: Azure Local, versão 23H2
Importante
O Azure Stack HCI agora faz parte do Azure Local. A renomeação da documentação do produto está em andamento. As alterações textuais estão completas e as atualizações visuais serão finalizadas em breve. Mais informações.
Este artigo descreve como implantar uma instância local virtualizada do Azure executando a versão 23H2 em um sistema host que executa o Hyper-V no sistema operacional (SO) Windows Server 2022, Windows 11 ou posterior.
Você precisa de privilégios de administrador para a implantação virtual do Azure Local e deve estar familiarizado com a solução existente do Azure Local. A implantação pode levar cerca de 2,5 horas para ser concluída.
Importante
Uma implantação virtual do Azure Local, versão 23H2, destina-se apenas para fins educacionais e de demonstração. O Suporte da Microsoft não oferece suporte a implantações virtuais.
Pré-requisitos
Aqui estão os pré-requisitos de hardware, rede e outros pré-requisitos para a implantação virtual:
Requisitos do host físico
A seguir estão os requisitos mínimos para implantar com êxito o Azure Local, versão 23H2.
Antes de começar, certifique-se de que:
Você tem acesso a um sistema host físico que esteja executando o Hyper-V no Windows Server 2022, Windows 11 ou posterior. Esse host é usado para provisionar uma implantação virtual do Azure Local.
Você tem capacidade suficiente. É necessária mais capacidade 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 suporta a 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 Unidade de estado sólido (SSD) de 1 TB.
Requisitos de host virtual
Antes de começar, certifique-se de que cada sistema de host virtual possa dedicar os seguintes recursos para provisionar sua instância local do Azure virtualizada:
Componente | Necessidade |
---|---|
Tipo de máquina virtual (VM) | 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 MAC deve ser ativada. |
Disco de inicialização | Um disco para instalar o sistema operacional Azure Stack HCI a partir da ISO. |
Discos rígidos para espaços de armazenamento diretos | Seis discos dinâmicos em expansão. O tamanho máximo do disco é de 1024 GB. |
Disco de dados | Pelo menos 127 GB. |
Sincronização de tempo na integração | Desativado. |
Nota
Estes são os requisitos mínimos para implantar com êxito o Azure Local, 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 Local em um ambiente virtual, você pode usar suas redes existentes e usar endereços IP dessa rede, se 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 qualquer configuração extra.
No entanto, se sua rede física onde você planeja implantar o ambiente virtual Local do Azure for escassa em IPs, você poderá criar um comutador virtual interno com NAT habilitado, para isolar os hosts virtuais de sua rede física, mantendo a conectividade de saída com a Internet.
A seguir estão listadas as etapas para as duas opções:
Implantar com 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 Local do Azure seja isolada.
New-VMSwitch -Name "internal_switch_name" -SwitchType Internal -NetAdapterName "network_adapter_name"
Uma vez 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 de seus hosts virtuais uma vez conectado a essa rede de switch interno. Você também precisa definir a sub-rede de rede NAT onde 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
Criar o host virtual
Crie uma VM para servir como host virtual com a seguinte configuração. Você pode criar essa VM usando o Gerenciador do Hyper-V ou o PowerShell:
Gerenciador do Hyper-V. Para obter mais informações, consulte Criar uma máquina virtual usando o Gerenciador do Hyper-V para espelhar sua rede de gerenciamento físico.
Cmdlets do PowerShell. Certifique-se de ajustar os parâmetros de configuração da VM referenciados nos requisitos de host virtual antes de executar os cmdlets do PowerShell.
Siga estas etapas para criar uma VM de exemplo nomeada Node1
usando cmdlets do PowerShell:
Criar 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"
Desative a memória dinâmica:
Set-VMMemory -VMName "Node1" -DynamicMemoryEnabled $false
Desative os pontos de verificação da VM:
Set-VM -VMName "Node1" -CheckpointType Disabled
Remova o adaptador de rede padrão criado durante a criação da VM na etapa anterior:
Get-VMNetworkAdapter -VMName "Node1" | Remove-VMNetworkAdapter
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
Storage
e 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"
Conecte todos os adaptadores de rede ao comutador virtual. Especifique o nome do comutador virtual que você criou, se ele era externo sem NAT ou interno com NAT:
Get-VmNetworkAdapter -VmName "Node1" |Connect-VmNetworkAdapter -SwitchName "virtual_switch_name"
Habilite a falsificação MAC em todos os adaptadores de rede na VM
Node1
. A falsificação de endereços MAC é uma técnica que permite que um adaptador de rede se passe por outro alterando seu endereço MAC (Media Access Control). Isso é necessário em cenários em que você planeja usar a virtualização aninhada:Get-VmNetworkAdapter -VmName "Node1" |Set-VmNetworkAdapter -MacAddressSpoofing On
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 de tronco. Isso geralmente é usado em implantações de vários nós em que você deseja permitir que várias VLANs (Virtual Local Area Networks) se comuniquem por meio de um único adaptador de rede:Get-VmNetworkAdapter -VmName "Node1" |Set-VMNetworkAdapterVlan -Trunk -NativeVlanId 0 -AllowedVlanIdList 0-1000
Crie um novo protetor de chave e atribua-o ao
Node1
. Isso geralmente é feito no contexto da configuração de uma malha protegida no Hyper-V, um recurso de segurança que protege as VMs contra acesso não autorizado ou adulteração.Depois que o script a seguir for executado,
Node1
terá um novo protetor de chave atribuído a ele. Este 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
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 da máquina host e a configuração da VM suportem esse recurso.Enable-VmTpm -VMName "Node1"
Altere os processadores virtuais para
8
:Set-VmProcessor -VMName "Node1" -Count 8
Crie unidades extras para 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
Anexe unidades aos VHDXs recém-criados para a VM. Nesses comandos, seis VHDs localizados no
C:\vms\Node1
diretório e nomeadoss2d1.vhdx
atravéss2d6.vhdx
são adicionados aoNode1
. CadaAdd-VMHardDiskDrive
comando adiciona um VHD à VM, para que o comando seja repetido seis vezes com valores de parâmetros diferentes-Path
.Depois, a
Node1
VM tem seis VHDs conectados a ela. Esses VHDXs são usados para habilitar Espaços de Armazenamento Diretos na VM, que são necessários para implantações do Azure Local: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"
Desative a sincronização de tempo:
Get-VMIntegrationService -VMName "Node1" |Where-Object {$_.name -like "T*"}|Disable-VMIntegrationService
Habilite a virtualização aninhada:
Set-VMProcessor -VMName "Node1" -ExposeVirtualizationExtensions $true
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 HCI do Azure Stack nas VMs de host virtual:
Baixe o software Azure Local 23H2 e instale o sistema operacional Azure Stack HCI.
Atualize a senha, pois esta é 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.
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í.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).
Altere o nome do host para
Node1
. Use a opção2
forComputer name
no SConfig para fazer isso.A alteração do nome do host resulta em uma reinicialização. Quando for solicitada uma reinicialização, digite
Yes
e aguarde a conclusão da reinicialização. O SConfig é iniciado novamente automaticamente.No host físico, execute os
Get-VMNetworkAdapter
cmdlets eForEach-Object
para configurar os quatro nomes de adaptador de rede para VMNode1
mapeando os endereços MAC atribuídos para os adaptadores de rede correspondentes no SO convidado.- O
Get-VMNetworkAdapter
cmdlet é usado para recuperar o objeto do adaptador de rede para cada NIC na VM, onde o-VMName
parâmetro especifica o nome da VM e o-Name
parâmetro especifica o nome do adaptador de rede. AMacAddress
propriedade do objeto do adaptador de rede é então acessada para obter o endereço MAC:
Get-VMNetworkAdapter -VMName "Node1" -Name "NIC1"
O endereço MAC é uma cadeia de números hexadecimais. O
ForEach-Object
cmdlet é usado para formatar essa cadeia de caracteres inserindo hífenes em intervalos específicos. Especificamente, oInsert
método do objeto string é usado para inserir um hífen nas 2ª, 5ª, 8ª, 11ª e 14ª posições na cadeia de caracteres. Ojoin
operador é então usado para concatenar a matriz resultante de cadeias de caracteres em uma única cadeia de caracteres com espaços entre cada elemento.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).
- O script a seguir produz 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
- O
Obtenha as credenciais de administrador local da
Node1
VM e renomeieNode1
:$cred = get-credential
Renomeie e mapeie as NICs no
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, filtre-os com base em seu endereço MAC e renomeie-os para o adaptador correspondente usando oRename-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
Desative o protocolo DHCP (Dynamic Host Configuration Protocol) nas quatro NICs para VM
Node1
executando os seguintes comandos.Nota
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 elas:
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}
Defina IP, gateway e DNS de gerenciamento. Depois que os comandos a seguir forem executados,
Node1
a interface de rede será configurada com o endereço IP especificado, a máscara deNIC1
sub-rede, o gateway padrão e o endereço do servidor DNS. Verifique se o endereço IP de gerenciamento pode resolver o Ative 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"}
Habilite a função Hyper-V. Este comando reinicia a VM
Node1
:Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All }
Depois que
Node1
for reiniciado e a função Hyper-V estiver instalada, instale as Ferramentas de Gerenciamento do Hyper-V:Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {Install-WindowsFeature -Name Hyper-V -IncludeManagementTools}
Quando a máquina host virtual estiver pronta, você deverá registrá-la e atribuir permissões no Azure como um recurso Arc.
Depois que a máquina estiver registrada no Azure como um recurso Arc e todas as extensões obrigatórias estiverem instaladas, escolha um dos seguintes métodos para implantar o Azure Local do Azure.
Implante o Azure Local usando o portal do Azure.
Implante o Azure Local usando um modelo do Azure Resource Manager.
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 estão na mesma sub-rede: