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

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

Os discos geridos simplificam a gestão de discos para máquinas virtuais IaaS (VMs) ao gerir as contas de armazenamento associadas aos discos da VM.

Os discos geridos são ativados por predefinição ao criar VMs com o portal do Azure Stack Hub.

Folha de truques fraudulentos: diferenças no disco gerido

Funcionalidade Azure (global) Azure Stack Hub
Opções de cópia de segurança serviço Azure Backup Ainda não suportado
Opções de recuperação após desastre Azure Site Recovery Ainda não suportado
Análise de desempenho dos discos Agregar métricas e métricas por disco suportadas. Ainda não suportado
Tamanho do disco Disco Premium do Azure: P4 (32 GiB) para P80 (32 TiB)
Disco SSD Standard do Azure: E10 (128 GiB) para E80 (32 TiB)
Disco HDD Standard do Azure: S4 (32 GiB) para 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 Instantâneo dos discos geridos do Azure anexados a uma VM em execução suportada. Suportado através de fornecedores de cópias de segurança. Contacte o fornecedor para verificar o suporte.
Tipos de disco SSD Premium, SSD Standard e HDD Standard. SSD Premium, HDD Standard
Encriptação de dados inativos Encriptação do Serviço de Armazenamento do Azure (SSE), Azure Disk Encryption (ADE). Encriptação AES bitLocker de 128 bits
Expandir disco – disco gerido Suportado Suportado
Windows
Linux
Imagem Imagem personalizada gerida Suportado
Migração Forneça uma ferramenta para migrar a partir de VMs do Azure Resource Manager não geridas existentes sem a necessidade de recriar a VM. Ainda não suportado
Discos Premium Totalmente suportado. Pode ser aprovisionado, mas sem limite de desempenho ou garantia
IOPs de discos Premium Depende do tamanho do disco. 2300 IOPs por disco
Débito de discos Premium Depende do tamanho do disco. 145 MB/segundo por disco

Nota

Os IOPs de discos geridos e o débito no Azure Stack Hub são um número de limite em vez de um número aprovisionado, que pode ser afetado por hardware e cargas de trabalho em execução no Azure Stack Hub.

Métricas

Também existem 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 de rede interna ou externa.
  • Os dados de transação do Azure Stack Hub nas métricas de armazenamento não incluem o acesso de máquina virtual aos discos montados.

Versões da API

Os discos geridos do Azure Stack Hub suportam as seguintes versões da API:

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

Converter para discos geridos

Nota

Não é possível utilizar o cmdlet Azure PowerShell ConvertTo-AzVMManagedDisk para converter um disco não gerido num disco gerido no Azure Stack Hub. Atualmente, o Azure Stack Hub não suporta este cmdlet.

Pode utilizar o seguinte script para converter uma VM atualmente aprovisionada de discos não geridos para discos geridos. Substitua os marcadores de posição 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 geridas

O Azure Stack Hub suporta imagens geridas, que lhe permitem criar um objeto de imagem gerida numa VM generalizada (não gerida e gerida) que só pode criar VMs de disco gerido em curso. As imagens geridas ativam os dois cenários seguintes:

  • Generalizou as VMs não geridas e quer utilizar discos geridos daqui para a frente.
  • Tem uma VM gerida generalizada e gostaria de criar várias VMs geridas semelhantes.

Passo 1: Generalizar a VM

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

Nota

Certifique-se de que generaliza a VM. Criar uma VM a partir de uma imagem que não tenha sido devidamente generalizada pode produzir um erro VMProvisioningTimeout .

Passo 2: Criar a imagem gerida

Pode utilizar o portal, o PowerShell ou a CLI do Azure para criar a imagem gerida. Siga os passos em Criar uma imagem gerida.

Passo 3: escolher o caso de utilização

Caso 1: Migrar VMs não geridas para discos geridos

Certifique-se de que generaliza corretamente a VM antes de efetuar este passo. Após a generalização, já não pode utilizar esta VM. Criar uma VM a partir de uma imagem que não tenha sido generalizada corretamente levará a um erro VMProvisioningTimeout .

Siga as instruções em Criar uma imagem a partir de uma VM que utiliza uma conta de armazenamento para criar uma imagem gerida a partir de um VHD generalizado numa conta de armazenamento. Pode utilizar esta imagem no futuro para criar VMs geridas.

Caso 2: Criar uma VM gerida a partir da imagem gerida com o PowerShell

Depois de criar uma imagem a partir de uma VM de disco gerido existente com o script em Criar uma imagem a partir de um disco gerido com o PowerShell, utilize o seguinte script de exemplo para criar uma VM do Linux semelhante a partir de um objeto de imagem existente.

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

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

# 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

Também pode utilizar o portal para criar uma VM a partir de uma imagem gerida. Para obter mais informações, veja os artigos de imagem gerida do Azure Criar uma imagem gerida de uma VM generalizada no Azure e Criar uma VM a partir de uma imagem gerida.

Configuração

Depois de aplicar a atualização 1808 ou posterior, tem de fazer a seguinte alteração de configuração antes de utilizar os discos geridos:

  • Se uma subscrição tiver sido criada antes da atualização 1808, siga os passos abaixo para atualizar a subscrição. Caso contrário, a implementação de VMs nesta subscrição poderá falhar com uma mensagem de erro "Erro interno no gestor de discos".
    1. No portal de utilizador do Azure Stack Hub, aceda a Subscrições e localize a subscrição. Clique em Fornecedores de Recursos, clique em Microsoft.Compute e, em seguida, clique em Voltar a registar.
    2. Na mesma subscrição, aceda a Controlo de Acesso (IAM) e verifique se o Azure Stack Hub – Disco Gerido está listado.
  • Se utilizar um ambiente multi-inquilino, peça ao operador da cloud (que pode estar na sua própria organização ou do fornecedor de serviços) para reconfigurar cada um dos seus diretórios convidados ao seguir os passos em Configurar multi-inquilinos no Azure Stack Hub. Caso contrário, a implementação de VMs numa subscrição associada a esse diretório convidado poderá falhar com a mensagem de erro "Erro interno no gestor de discos".

Passos seguintes