Partilhar via


Discos gerenciados do Azure Stack Hub: diferenças e considerações

Este artigo resume as diferenças entre discos gerenciados no Azure Stack Hub e discos gerenciados no Azure. Para saber mais sobre as diferenças de alto nível entre o Azure Stack Hub e o Azure, consulte o artigo Principais considerações.

Os discos gerenciados simplificam o gerenciamento de disco para máquinas virtuais (VMs) IaaS gerenciando as contas de armazenamento associadas aos discos de VM.

Os discos gerenciados são habilitados por padrão ao criar VMs usando o portal do Azure Stack Hub.

Guia rápido: diferenças de discos geridos

Funcionalidade Azure (global) Azure Stack Hub
Opções de backup Serviço de Backup do Azure Ainda não suportado
Opções de recuperação de desastres Azure Site Recovery (Recuperação de Sites Azure) Azure Site Recovery em Azure Stack Hub
Análise de desempenho de discos Métricas agregadas e métricas por disco suportadas. Ainda não suportado
Tamanho do disco Azure Premium Disk: P4 (32 GiB) a P80 (32 TiB)
Disco SSD padrão do Azure: E10 (128 GiB) a E80 (32 TiB)
Disco HDD padrão do Azure: S4 (32 GiB) a S80 (32 TiB)
M4: 32 GiB
M6: 64 GiB
M10: 128 GiB
M15: 256 GiB
M20: 512 GiB
M30: 1023 GiB
Cópia de instantâneo de discos Snapshot de discos gerenciados do Azure anexados a uma VM em execução com suporte. Suporte proveniente de fornecedores de backup. Consulte o seu fornecedor para verificar o suporte.
Tipos de disco SSD premium, SSD padrão e HDD padrão. SSD Premium, HDD padrão
Criptografia para dados em repouso Azure Storage Service Encryption (SSE), Azure Disk Encryption (ADE). Encriptação AES BitLocker de 128 bits
Expandir disco – disco gerenciado Suportado Suportado
Windows
Linux
Imagem Imagem personalizada gerenciada Suportado
Migração Forneça uma ferramenta para migrar de VMs existentes e não gerenciadas do Azure Resource Manager sem a necessidade de recriar a VM. Ainda não suportado
Discos de Alta Qualidade Totalmente suportado. Pode ser provisionado, mas sem limite de desempenho ou garantia
IOPs de discos de nível premium Depende do tamanho do disco. 2300 IOPs por disco
Desempenho de unidades de disco premium Depende do tamanho do disco. 145 MB/segundo por disco

Observação

IOPs e taxa de transferência de discos geridos no Azure Stack Hub são números limite em vez de números provisionados, que podem ser afetados pelo hardware e pelas cargas de trabalho em execução no Azure Stack Hub.

Métricas

Também há diferenças com as métricas de armazenamento:

  • Com o Azure Stack Hub, os dados de transação nas métricas de armazenamento não diferenciam a largura de banda da rede interna ou externa.
  • Os dados de transação do Azure Stack Hub nas métricas de armazenamento não incluem o acesso da máquina virtual aos discos montados.

Versões da API

Os discos gerenciados do Azure Stack Hub oferecem suporte às seguintes versões de API:

  • 2019-07-01
  • 2019-03-01
  • 2018-09-30
  • 2018-06-01
  • 01-04-2018
  • 2017-03-30
  • 2017-03-30
  • 2017-12-01 (Somente imagens gerenciadas, sem discos, sem instantâneos)

Converter em discos gerenciados

Observação

O cmdlet do Azure PowerShell ConvertTo-AzVMManagedDisk não pode ser usado para converter um disco não gerenciado em um disco gerenciado no Azure Stack Hub. Atualmente, o Azure Stack Hub não oferece suporte a esse cmdlet.

Você pode usar o script a seguir para converter uma VM atualmente provisionada de discos não gerenciados para gerenciados. Substitua os espaços reservados pelos seus próprios valores.

$SubscriptionId = "SubId"

# The name of your resource group where your VM to be converted exists.
$ResourceGroupName ="MyResourceGroup"

# The name of the managed disk to be created.
$DiskName = "mngddisk"

# The size of the disks in GB. It should be greater than the VHD file size.
$DiskSize = "50"

# The URI of the VHD file that will be used to create the managed disk.
# The VHD file can be deleted as soon as the managed disk is created.
$VhdUri = "https://rgmgddisks347.blob.local.azurestack.external/vhds/unmngdvm20181109013817.vhd"

# The storage type for the managed disk: PremiumLRS or StandardLRS.
$AccountType = "StandardLRS"

# The Azure Stack Hub location where the managed disk will be located.
# The location should be the same as the location of the storage account in which VHD file is stored.
# Configure the new managed VM point to the old unmanaged VM configuration (network config, VM name, location).
$Location = "local"
$VirtualMachineName = "unmngdvm"
$VirtualMachineSize = "Standard_D1"
$PIpName = "unmngdvm-ip"
$VirtualNetworkName = "unmngdrg-vnet"
$NicName = "unmngdvm"

# Set the context to the subscription ID in which the managed disk will be created.
Select-AzSubscription -SubscriptionId $SubscriptionId

# Delete old VM, but keep the OS disk.
Remove-AzVm -Name $VirtualMachineName -ResourceGroupName $ResourceGroupName

# Create the managed disk configuration.
$DiskConfig = New-AzDiskConfig -AccountType $AccountType -Location $Location -DiskSizeGB $DiskSize -SourceUri $VhdUri -CreateOption Import

# Create managed disk.
New-AzDisk -DiskName $DiskName -Disk $DiskConfig -ResourceGroupName $resourceGroupName
$Disk = Get-AzDisk -DiskName $DiskName -ResourceGroupName $ResourceGroupName
$VirtualMachine = New-AzVMConfig -VMName $VirtualMachineName -VMSize $VirtualMachineSize

# Use the managed disk resource ID to attach it to the virtual machine.
# Change the OS type to "-Windows" if the OS disk has the Windows OS.
$VirtualMachine = Set-AzVMOSDisk -VM $VirtualMachine -ManagedDiskId $Disk.Id -CreateOption Attach -Linux

# Create a public IP for the VM.
$PublicIp = Get-AzPublicIpAddress -Name $PIpName -ResourceGroupName $ResourceGroupName

# Get the virtual network where the virtual machine will be hosted.
$VNet = Get-AzVirtualNetwork -Name $VirtualNetworkName -ResourceGroupName $ResourceGroupName

# Create NIC in the first subnet of the virtual network.
$Nic = Get-AzNetworkInterface -Name $NicName -ResourceGroupName $ResourceGroupName

$VirtualMachine = Add-AzVMNetworkInterface -VM $VirtualMachine -Id $Nic.Id

# Create the virtual machine with managed disk.
New-AzVM -VM $VirtualMachine -ResourceGroupName $ResourceGroupName -Location $Location

Imagens gerenciadas

O Azure Stack Hub dá suporte a imagens gerenciadas , que permitem criar um objeto de imagem gerenciado em uma VM generalizada (não gerenciada e gerenciada) que só pode criar VMs de disco gerenciadas no futuro. As imagens gerenciadas permitem os dois cenários a seguir:

  • Você generalizou VMs não gerenciadas e deseja usar discos gerenciados no futuro.
  • Você tem uma VM gerenciada generalizada e gostaria de criar várias VMs gerenciadas semelhantes.

Etapa 1: Generalizar a VM

Para Windows, siga a seção Generalizar a VM do Windows usando o Sysprep. Para Linux, siga o passo 1 aqui.

Observação

Certifique-se de generalizar sua VM. Criar uma VM a partir de uma imagem que não foi corretamente generalizada pode resultar num erro VMProvisioningTimeout.

Etapa 2: Criar a imagem gerenciada

Você pode usar o portal, o PowerShell ou a CLI do Azure para criar a imagem gerenciada. Siga as etapas em Criar uma imagem gerenciada.

Etapa 3: Escolha o caso de uso

Caso 1: Migrar VMs não gerenciadas para discos gerenciados

Certifique-se de generalizar sua VM corretamente antes de executar esta etapa. Após a generalização, você não pode mais usar essa VM. Criar uma VM a partir de uma imagem que não foi corretamente generalizada levará a um erro de VMProvisioningTimeout.

Siga as instruções em para criar uma imagem a partir de uma VM que usa uma conta de armazenamento para criar uma imagem gerida a partir de um VHD generalizado numa conta de armazenamento. Você pode usar essa imagem no futuro para criar VMs gerenciadas.

Caso 2: Criar VM gerenciada a partir de imagem gerenciada usando o PowerShell

Depois de criar uma imagem de uma VM de disco gerenciado existente usando o script em Criar uma imagem de um disco gerenciado usando o PowerShell, use o script de exemplo a seguir para criar uma VM Linux semelhante a partir de um objeto de imagem existente.

Módulo do PowerShell do Azure Stack Hub 1.7.0 ou posterior: siga as instruções em Criar uma VM a partir de uma imagem gerenciada.

Módulo 1.6.0 ou anterior do Azure Stack Hub PowerShell:

# Variables for common values
$ResourceGroupName = "MyResourceGroup"
$Location = "local"
$VirtualMachineName = "MyVM"
$ImageRG = "managedlinuxrg"
$ImageName = "simplelinuxvmm-image-2019122"

# Create credential object
$Cred = Get-Credential -Message "Enter a username and password for the virtual machine."

# Create a resource group
New-AzResourceGroup -Name $ResourceGroupName -Location $Location

# Create a subnet configuration
$SubnetConfig = New-AzVirtualNetworkSubnetConfig -Name "MySubnet" -AddressPrefix "192.168.1.0/24"

# Create a virtual network
$VNet = New-AzVirtualNetwork -ResourceGroupName $ResourceGroupName -Location $Location `
  -Name "MyVNet" -AddressPrefix "192.168.0.0/16" -Subnet $SubnetConfig

# Create a public IP address and specify a DNS name
$PIp = New-AzPublicIpAddress -ResourceGroupName $ResourceGroupName -Location $Location `
  -Name "mypublicdns$(Get-Random)" -AllocationMethod Static -IdleTimeoutInMinutes 4

# Create an inbound network security group rule for port 3389
$NsgRuleSSH = New-AzNetworkSecurityRuleConfig -Name "MyNetworkSecurityGroupRuleSSH"  -Protocol Tcp `
  -Direction Inbound -Priority 1000 -SourceAddressPrefix * -SourcePortRange * -DestinationAddressPrefix * `
  -DestinationPortRange 22 -Access Allow

# Create a network security group
$Nsg = New-AzNetworkSecurityGroup -ResourceGroupName $ResourceGroupName -Location $Location `
  -Name "MyNetworkSecurityGroup" -SecurityRules $NsgRuleSSH

# Create a virtual network card and associate with public IP address and NSG
$Nic = New-AzNetworkInterface -Name "MyNic" -ResourceGroupName $ResourceGroupName -Location $Location `
  -SubnetId $VNet.Subnets[0].Id -PublicIpAddressId $PIp.Id -NetworkSecurityGroupId $Nsg.Id

$Image = Get-AzImage -ResourceGroupName $ImageRG -ImageName $ImageName

# Create a virtual machine configuration
$VmConfig = New-AzVMConfig -VMName $VirtualMachineName -VMSize "Standard_D1" | `
Set-AzVMOperatingSystem -Linux -ComputerName $VirtualMachineName -Credential $Cred | `
Set-AzVMSourceImage -Id $Image.Id | `
Set-AzVMOSDisk -VM $VmConfig -CreateOption FromImage -Linux | `
Add-AzVMNetworkInterface -Id $Nic.Id

# Create a virtual machine
New-AzVM -ResourceGroupName $ResourceGroupName -Location $Location -VM $VmConfig

Você também pode usar o portal para criar uma VM a partir de uma imagem gerenciada. Para obter mais informações, consulte os artigos de imagem gerenciada do Azure Criar uma imagem gerenciada de uma VM generalizada no Azure e Criar uma VM a partir de uma imagem gerenciada.

Configuração

Depois de aplicar a atualização 1808 ou posterior, você deve fazer a seguinte alteração de configuração antes de usar discos gerenciados:

  • Se uma assinatura foi criada antes da atualização 1808, siga as etapas abaixo para atualizar a assinatura. Caso contrário, a implantação de VMs nesta assinatura pode falhar com uma mensagem de erro "Erro interno no gerenciador de discos".
    1. No portal do usuário do Azure Stack Hub, vá para Assinaturas e localize a assinatura. Clique em Resource Providers, clique em Microsoft.Computee, em seguida, clique em Registrar novamente.
    2. Sob a mesma assinatura, vá para de Controle de Acesso (IAM) e verifique se Azure Stack Hub - Managed Disk está listado.
  • Se você usar um ambiente multilocatário, peça ao seu operador de nuvem (que pode estar em sua própria organização ou do provedor de serviços) para reconfigurar cada um dos seus diretórios convidados seguindo as etapas em Configurar multilocação no Azure Stack Hub. Caso contrário, a implantação de VMs em uma assinatura associada a esse diretório convidado pode falhar com a mensagem de erro "Erro interno no gerenciador de discos".

Próximos passos