Criar armazenamento de discos de VM no Azure Stack Hub
Este artigo descreve como criar armazenamento de discos de máquina virtual (VM) com o portal do Azure Stack Hub ou com o PowerShell.
Descrição Geral
O Azure Stack Hub suporta a utilização de discos geridos e discos não geridos em VMs, como um sistema operativo (SO) e um disco de dados.
Os discos geridos simplificam a gestão de discos para VMs IaaS do Azure ao gerir as contas de armazenamento associadas aos discos da VM. Só tem de especificar o tamanho do disco de que precisa e o Azure Stack Hub cria e gere o disco automaticamente.
Os discos não geridos exigem que crie uma conta de armazenamento para armazenar os discos. Os discos que criar são referidos como discos de VM e são armazenados em contentores na conta de armazenamento.
Diretrizes de melhores práticas
Recomenda-se que utilize discos geridos para VMs para facilitar a gestão e o equilíbrio de capacidade. Não tem de preparar uma conta de armazenamento e contentores antes de utilizar discos geridos. Ao criar vários discos geridos, os discos são distribuídos em múltiplos volumes, o que ajuda a equilibrar a capacidade dos volumes.
Para discos não geridos, para melhorar o desempenho e reduzir os custos gerais, recomendamos que coloque cada disco não gerido num contentor separado. Embora possa colocar discos de SO e discos de dados no mesmo contentor, a melhor prática é que um contentor tenha um disco de SO ou um disco de dados, mas não ambos ao mesmo tempo.
Se adicionar um ou mais discos de dados a uma VM, utilize contentores adicionais como localização para armazenar estes discos. O disco do SO para VMs adicionais também deve estar nos seus próprios contentores.
Quando cria VMs, pode reutilizar a mesma conta de armazenamento para cada nova máquina virtual. Apenas os contentores que criar devem ser exclusivos.
Adicionar novos discos
A tabela seguinte resume como adicionar discos com o portal e com o PowerShell:
Método | Opções |
---|---|
Portal do utilizador | - Adicione novos discos de dados a uma VM existente. Os novos discos são criados pelo Azure Stack Hub. - Adicione um ficheiro de disco (.vhd) existente a uma VM criada anteriormente. Para tal, tem de preparar o .vhd e, em seguida, carregar o ficheiro para o Azure Stack Hub. |
PowerShell | - Crie uma nova VM com um disco do SO e, ao mesmo tempo, adicione um ou mais discos de dados a essa VM. |
Utilizar o portal para adicionar discos a uma VM
Por predefinição, quando utiliza o portal para criar uma VM para a maioria dos itens do marketplace, apenas o disco do SO é criado.
Depois de criar uma VM, pode utilizar o portal para:
- Crie um novo disco de dados e anexe-o à VM.
- Carregue um disco de dados existente e anexe-o à VM.
Coloque cada disco não gerido que adicionar num contentor separado.
Utilizar o portal para criar e anexar um novo disco de dados
No portal, selecione Todos os serviços e, em seguida, Computação e, em seguida, Máquinas virtuais.
Selecione uma VM que tenha sido criada anteriormente a partir da lista.
Para a VM, selecione Discos e, em seguida, Adicionar disco de dados.
Para o disco de dados:
- Introduza o LUN. O LUN tem de ser um número válido.
- Selecione Criar disco.
No painel Criar disco gerido :
- Introduza o Nome do disco.
- Selecione um Grupo de recursos existente ou crie um novo.
- Selecione a Localização. Por predefinição, a localização está definida para o mesmo contentor que contém o disco do SO.
- Selecione o Tipo de conta.
Nota
Os discos Premium (SSD) e os discos padrão (HDD) são suportados pela mesma infraestrutura de armazenamento no Azure Stack Hub. Proporcionam o mesmo desempenho.
Selecione o Tipo de origem.
Crie um disco a partir de um instantâneo de outro disco, um blob numa conta de armazenamento ou crie um disco vazio.
Instantâneo: selecione um instantâneo, se estiver disponível. O instantâneo tem de estar disponível na subscrição e localização da VM.
Blob de armazenamento:
- Adicione o URI do blob de armazenamento que contém a imagem do disco.
- Selecione Procurar para abrir o painel contas de armazenamento. Para obter instruções, veja Adicionar um disco de dados a partir de uma conta de armazenamento.
- Selecione o tipo de SO da imagem: Windows, Linux ou None (disco de dados).
Selecione o Tamanho (GiB).
Os custos do disco aumentam com base no tamanho do disco.
Selecione Criar. O Azure Stack Hub cria e valida o disco gerido.
Depois de o Azure Stack Hub criar o disco e o anexar à VM, o novo disco é listado nas definições do disco da VM em Discos de dados.
Adicionar um disco de dados a partir de uma conta de armazenamento
Para obter mais informações sobre como trabalhar com contas de armazenamento no Azure Stack Hub, veja Introdução ao armazenamento do Azure Stack Hub.
Selecione a conta de Armazenamento a utilizar.
Selecione o Contentor onde pretende colocar o disco de dados. No painel Contentores , pode criar um novo contentor, se quiser. Em seguida, pode alterar a localização do novo disco para o seu próprio contentor. Quando utiliza um contentor separado para cada disco, distribui o posicionamento do disco de dados que melhora o desempenho.
Selecione Selecionar para guardar a seleção.
Anexar um disco de dados existente a uma VM
Preparar um ficheiro .vhd para utilização como disco de dados para uma VM. Carregue esse ficheiro .vhd para uma conta de armazenamento que utiliza com a VM à qual pretende anexar o ficheiro .vhd.
- Planeie utilizar um contentor diferente para conter o ficheiro .vhd do que o contentor que contém o disco do SO.
- Antes de carregar qualquer VHD para o Azure, deve seguir Preparar um VHD ou VHDX do Windows para carregar para o Azure.
- Reveja o Plano para a migração para Managed Disks antes de iniciar a migração para Managed Disks.
Depois de carregar o ficheiro .vhd, está pronto para anexar o VHD a uma VM. No menu do lado esquerdo, selecione Máquinas virtuais.
Selecione a VM na lista.
Na página da VM, selecione Discos e, em seguida, selecione Anexar existente.
Na página Anexar disco existente , selecione Ficheiro VHD. A página Contas de armazenamento é aberta.
Em Contas de armazenamento, selecione a conta a utilizar e, em seguida, selecione um contentor que contenha o ficheiro .vhd que carregou anteriormente. Selecione o ficheiro .vhd e, em seguida, selecione Selecionar para guardar a seleção.
Em Anexar disco existente, o ficheiro que selecionou está listado em Ficheiro VHD. Atualize a definição colocação em cache do anfitrião do disco e, em seguida, selecione OK para guardar a nova configuração do disco para a VM.
Depois de o Azure Stack Hub criar o disco e o anexar à VM, o novo disco é listado nas definições de disco da VM em Discos de Dados.
Utilizar o PowerShell para adicionar vários discos a uma VM
Pode utilizar o PowerShell para aprovisionar uma VM e adicionar novos discos de dados ou anexar um disco gerido pré-existente ou um ficheiro .vhd como um disco de dados.
O cmdlet Add-AzVMDataDisk adiciona um disco de dados a uma VM. Pode adicionar um disco de dados quando cria uma VM ou pode adicionar um disco de dados a uma VM existente. Para um disco não gerido, especifique o parâmetro VhdUri para distribuir os discos por diferentes contentores.
Adicionar discos de dados a uma nova VM
Os exemplos seguintes utilizam comandos do PowerShell para criar uma VM com três discos de dados. Os comandos são fornecidos com várias partes devido às pequenas diferenças ao utilizar discos geridos ou discos não geridos.
Criar a configuração da máquina virtual e os recursos de rede
O script seguinte cria um objeto de VM e, em seguida, armazena-o na $VirtualMachine
variável. Os comandos atribuem um nome e tamanho à VM e, em seguida, criam os recursos de rede (rede virtual, sub-rede, adaptador de rede virtual, NSG e endereço IP público) para a VM.
# Create new virtual machine configuration
$VirtualMachine = New-AzVMConfig -VMName "VirtualMachine" `
-VMSize "Standard_A2"
# Set variables
$rgName = "myResourceGroup"
$location = "local"
# Create a subnet configuration
$subnetName = "mySubNet"
$singleSubnet = New-AzVirtualNetworkSubnetConfig -Name $subnetName -AddressPrefix 10.0.0.0/24
# Create a vnet configuration
$vnetName = "myVnetName"
$vnet = New-AzVirtualNetwork -Name $vnetName -ResourceGroupName $rgName -Location $location `
-AddressPrefix 10.0.0.0/16 -Subnet $singleSubnet
# Create a public IP
$ipName = "myIP"
$pip = New-AzPublicIpAddress -Name $ipName -ResourceGroupName $rgName -Location $location `
-AllocationMethod Dynamic
# Create a network security group configuration
$nsgName = "myNsg"
$rdpRule = New-AzNetworkSecurityRuleConfig -Name myRdpRule -Description "Allow RDP" `
-Access Allow -Protocol Tcp -Direction Inbound -Priority 110 `
-SourceAddressPrefix Internet -SourcePortRange * `
-DestinationAddressPrefix * -DestinationPortRange 3389
$nsg = New-AzNetworkSecurityGroup -ResourceGroupName $rgName -Location $location `
-Name $nsgName -SecurityRules $rdpRule
# Create a NIC configuration
$nicName = "myNicName"
$nic = New-AzNetworkInterface -Name $nicName -ResourceGroupName $rgName `
-Location $location -SubnetId $vnet.Subnets[0].Id `
-NetworkSecurityGroupId $nsg.Id -PublicIpAddressId $pip.Id
Adicionar discos geridos
Os três comandos seguintes adicionam discos de dados geridos à máquina virtual armazenada no $VirtualMachine
. Cada comando especifica o nome e as propriedades adicionais do disco.
$VirtualMachine = Add-AzVMDataDisk -VM $VirtualMachine -Name 'DataDisk1' `
-Caching 'ReadOnly' -DiskSizeInGB 10 -Lun 0 `
-CreateOption Empty
$VirtualMachine = Add-AzVMDataDisk -VM $VirtualMachine -Name 'DataDisk2' `
-Caching 'ReadOnly' -DiskSizeInGB 11 -Lun 1 `
-CreateOption Empty
$VirtualMachine = Add-AzVMDataDisk -VM $VirtualMachine -Name 'DataDisk3' `
-Caching 'ReadOnly' -DiskSizeInGB 12 -Lun 2 `
-CreateOption Empty
O comando seguinte adiciona um disco do SO como um disco gerido à máquina virtual armazenada no $VirtualMachine
.
# Set OS Disk
$osDiskName = "osDisk"
$VirtualMachine = Set-AzVMOSDisk -VM $VirtualMachine -Name $osDiskName `
-CreateOption FromImage -Windows
Adicionar discos não geridos
Os três comandos seguintes atribuem caminhos de três discos de dados não geridos às $DataDiskVhdUri01
variáveis , $DataDiskVhdUri02
e $DataDiskVhdUri03
. Defina um nome de caminho diferente no URL para distribuir os discos por diferentes contentores:
$DataDiskVhdUri01 = "https://contoso.blob.local.azurestack.external/test1/data1.vhd"
$DataDiskVhdUri02 = "https://contoso.blob.local.azurestack.external/test2/data2.vhd"
$DataDiskVhdUri03 = "https://contoso.blob.local.azurestack.external/test3/data3.vhd"
Os três comandos seguintes adicionam discos de dados à máquina virtual armazenada no $VirtualMachine
. Cada comando especifica o nome e propriedades adicionais do disco. O URI de cada disco é armazenado em $DataDiskVhdUri01
, $DataDiskVhdUri02
e $DataDiskVhdUri03
.
$VirtualMachine = Add-AzVMDataDisk -VM $VirtualMachine -Name 'DataDisk1' `
-Caching 'ReadOnly' -DiskSizeInGB 10 -Lun 0 `
-VhdUri $DataDiskVhdUri01 -CreateOption Empty
$VirtualMachine = Add-AzVMDataDisk -VM $VirtualMachine -Name 'DataDisk2' `
-Caching 'ReadOnly' -DiskSizeInGB 11 -Lun 1 `
-VhdUri $DataDiskVhdUri02 -CreateOption Empty
$VirtualMachine = Add-AzVMDataDisk -VM $VirtualMachine -Name 'DataDisk3' `
-Caching 'ReadOnly' -DiskSizeInGB 12 -Lun 2 `
-VhdUri $DataDiskVhdUri03 -CreateOption Empty
Os seguintes comandos adicionam um disco de SO não gerido à máquina virtual armazenada no $VirtualMachine
.
# Set OS Disk
$osDiskUri = "https://contoso.blob.local.azurestack.external/vhds/osDisk.vhd"
$osDiskName = "osDisk"
$VirtualMachine = Set-AzVMOSDisk -VM $VirtualMachine -Name $osDiskName -VhdUri $osDiskUri `
-CreateOption FromImage -Windows
Criar nova máquina virtual
Utilize os seguintes comandos do PowerShell para definir a imagem do SO, adicionar a configuração de rede à VM e, em seguida, iniciar a nova VM.
#Create the new VM
$VirtualMachine = Set-AzVMOperatingSystem -VM $VirtualMachine -Windows -ComputerName VirtualMachine -ProvisionVMAgent | `
Set-AzVMSourceImage -PublisherName MicrosoftWindowsServer -Offer WindowsServer `
-Skus 2016-Datacenter -Version latest | Add-AzVMNetworkInterface -Id $nic.Id
New-AzVM -ResourceGroupName $rgName -Location $location -VM $VirtualMachine
Adicionar discos de dados a uma VM existente
Os exemplos seguintes utilizam comandos do PowerShell para adicionar três discos de dados a uma VM existente:
Obter máquina virtual
O primeiro comando obtém a VM com o nome VirtualMachine com o cmdlet Get-AzVM . O comando armazena a VM na $VirtualMachine
variável:
$VirtualMachine = Get-AzVM -ResourceGroupName "myResourceGroup" `
-Name "VirtualMachine"
Adicionar disco gerido
Os três comandos seguintes adicionam os discos de dados geridos à VM armazenada na $VirtualMachine
variável. Cada comando especifica o nome e as propriedades adicionais do disco.
Add-AzVMDataDisk -VM $VirtualMachine -Name "DataDisk1" -Lun 0 `
-Caching ReadOnly -DiskSizeinGB 10 -CreateOption Empty
Add-AzVMDataDisk -VM $VirtualMachine -Name "DataDisk2" -Lun 1 `
-Caching ReadOnly -DiskSizeinGB 11 -CreateOption Empty
Add-AzVMDataDisk -VM $VirtualMachine -Name "DataDisk3" -Lun 2 `
-Caching ReadOnly -DiskSizeinGB 12 -CreateOption Empty
Adicionar disco não gerido
Os três comandos seguintes atribuem caminhos para três discos de dados às $DataDiskVhdUri01
variáveis , $DataDiskVhdUri02
e $DataDiskVhdUri03
. Os diferentes nomes de caminhos nos URIs do VHD indicam contentores diferentes para a colocação do disco:
$DataDiskVhdUri01 = "https://contoso.blob.local.azurestack.external/test1/data1.vhd"
$DataDiskVhdUri02 = "https://contoso.blob.local.azurestack.external/test2/data2.vhd"
$DataDiskVhdUri03 = "https://contoso.blob.local.azurestack.external/test3/data3.vhd"
Os três comandos seguintes adicionam os discos de dados à VM armazenada na $VirtualMachine
variável. Cada comando especifica o nome, a localização e as propriedades adicionais do disco. O URI de cada disco é armazenado em $DataDiskVhdUri01
, $DataDiskVhdUri02
e $DataDiskVhdUri03
.
Add-AzVMDataDisk -VM $VirtualMachine -Name "DataDisk1" `
-VhdUri $DataDiskVhdUri01 -LUN 0 `
-Caching ReadOnly -DiskSizeinGB 10 -CreateOption Empty
Add-AzVMDataDisk -VM $VirtualMachine -Name "DataDisk2" `
-VhdUri $DataDiskVhdUri02 -LUN 1 `
-Caching ReadOnly -DiskSizeinGB 11 -CreateOption Empty
Add-AzVMDataDisk -VM $VirtualMachine -Name "DataDisk3" `
-VhdUri $DataDiskVhdUri03 -LUN 2 `
-Caching ReadOnly -DiskSizeinGB 12 -CreateOption Empty
Atualizar o estado da máquina virtual
Este comando atualiza o estado da VM armazenada em $VirtualMachine
-ResourceGroupName
:
Update-AzVM -ResourceGroupName "myResourceGroup" -VM $VirtualMachine
Passos seguintes
Para saber mais sobre as VMs do Azure Stack Hub, veja Considerações para Máquinas Virtuais no Azure Stack Hub.
Comentários
https://aka.ms/ContentUserFeedback.
Brevemente: Ao longo de 2024, vamos descontinuar progressivamente o GitHub Issues como mecanismo de feedback para conteúdos e substituí-lo por um novo sistema de feedback. Para obter mais informações, veja:Submeter e ver comentários