Управляемые диски Azure Stack Hub. Различия и рекомендации
В этой статье описаны различия между управляемыми дисками в Azure Stack Hub и управляемыми дисками в Azure. Чтобы узнать об общих различиях между Azure Stack Hub и Azure, прочитайте эту статью.
Управляемые диски упрощают управление дисками виртуальных машин Azure IaaS. Они позволяют управлять учетными записями хранения, связанными с этими дисками.
Управляемые диски включены по умолчанию при создании виртуальных машин с помощью портала Azure Stack Hub.
Памятка. Различия между управляемыми дисками
Компонент | Azure (глобальная) | Azure Stack Hub |
---|---|---|
Варианты резервного копирования | Служба Azure Backup | Еще не поддерживается |
Параметры аварийного восстановления | Azure Site Recovery | Еще не поддерживается |
Производительность аналитики дисков | Поддерживаются сводные и дисковые метрики. | Еще не поддерживается |
Размер диска | Диски Azure ценовой категории "Премиум": от P4 (32 ГиБ) до P80 (32 ТиБ) Диски SSD Azure ценовой категории "Стандартный": от E10 (128 ГиБ) до E80 (32 ТиБ) Диски HDD Azure ценовой категории "Стандартный": от S4 (32 ГиБ) до S80 (32 ТиБ) |
M4: 32 Гиб M6: 64 Гиб M10: 128 ГБ M15: 256 Гиб M20: 512 ГБ M30: 1023 ГиБ |
Моментальные снимки дисков | Поддерживается создание моментальных снимков управляемых дисков Azure, подключенных к запущенной виртуальной машине. | Поддерживается поставщиками резервных копий. Обратитесь к поставщику, чтобы проверить поддержку. |
Типы дисков | SSD (цен. категория "Премиум"), SSD (цен. категория "Стандартный") и HDD (цен. категория "Стандартный"). | SSD (цен. категория "Премиум"), SSD (цен. категория "Стандартный") |
Шифрование неактивных данных | Шифрование службы хранилища Azure (SSE) и шифрование дисков Azure (ADE). | 128-битное шифрование AES BitLocker |
Развернуть диск — управляемый диск | Поддерживается | Поддерживается Windows Linux |
Образ — | Управляемый пользовательский образ | Поддерживается |
Миграция | Представляются средства для миграции из существующих неуправляемых виртуальных машин Azure Resource Manager без необходимости повторно создавать виртуальную машину. | Еще не поддерживается |
Диски уровня "Премиум" | Полностью поддерживается. | Может быть подготовлено, но не имеет ограничений производительности или гарантий |
Операции ввода-вывода дисков уровня "Премиум" | Зависит от размера диска. | 2300 операций ввода-вывода в секунду на диск |
Пропускная способность дисков уровня "Премиум" | Зависит от размера диска. | 145 МБ/с на диск |
Примечание
Число операций ввода-вывода в управляемых дисках и объем пропускной способности в Azure Stack Hub зависят от ограничений, а не задаются в ходе подготовки и могут обуславливаться аппаратным обеспечением и рабочими нагрузками, выполняющимися в Azure Stack Hub.
Метрики
Кроме того, есть различия в метриках хранилища:
- С помощью Azure Stack Hub данные транзакций в метриках хранилища не различают внутреннюю или внешнюю пропускную способность сети.
- Данные транзакции Azure Stack Hub в метриках хранилища не включают доступ виртуальных машин к подключенным дискам.
Версии API
Управляемые диски Azure Stack Hub поддерживают следующие версии API:
- 07.01.2019
- 2019-03-01
- 2018-09-30
- 2018-06-01
- 2018-04-01
- 2017-03-30
- 2017-03-30
- 2017-12-01 (только управляемые образы, без дисков, без моментальных снимков)
Преобразование виртуальной машины для использования управляемых дисков
Примечание
Командлет Azure PowerShell ConvertTo-AzVMManagedDisk нельзя использовать для преобразования неуправляемого диска в управляемый диск в Azure Stack Hub. Azure Stack Hub сейчас не поддерживает этот командлет.
С помощью приведенного ниже сценария можно переключить заранее подготовленную виртуальную машину с неуправляемых дисков на управляемые. Замените значения заполнителей на собственные.
$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
Управляемые образы
Azure Stack Hub поддерживает управляемые образы, которые позволяют создавать объект управляемого образа на универсальной виртуальной машине (как неуправляемой, так и управляемой), которая может создавать только виртуальные машины управляемого диска в будущем. Управляемые образы включают следующие два сценария.
- Вы обобщили неуправляемые виртуальные машины и хотите использовать управляемые диски в будущем.
- У вас есть универсальная управляемая виртуальная машина и вы хотите создать несколько похожих управляемых виртуальных машин.
Шаг 1. Подготовка виртуальной машины к использованию
Для Windows: см. раздел Generalize the Windows VM using Sysprep (Подготовка виртуальной машины Windows к использованию с помощью Sysprep). Для Linux: выполните шаг 1, описанный здесь.
Примечание
Обязательно подготовьте виртуальную машину к использованию. Если должным образом не подготовить образ для создания виртуальной машины, может произойти ошибка VMProvisioningTimeout.
Шаг 2. Создание управляемого образа
Для создания управляемого образа можно использовать портал, PowerShell или Azure CLI. Воспользуйтесь сведениями, данными в статье Создание управляемого образа универсальной виртуальной машины в Azure.
Шаг 3. Выбор варианта использования
Вариант 1. Миграция неуправляемых виртуальных машин на управляемые диски
Перед выполнением этого шага необходимо правильно подготовить виртуальную машину к использованию. После подготовки вы больше не сможете использовать эту виртуальную машину. Создание виртуальной машины из образа, не подготовленного должным образом, приведет к возникновению ошибки VMProvisioningTimeout.
Следуйте инструкциям, описанным в разделе Create an image from a VM that uses a storage account (Создание образа из виртуальной машины, которая использует учетную запись хранения), чтобы создать управляемый образ с помощью универсального виртуального жесткого диска в учетной записи хранения. Этот образ можно использовать в дальнейшем для создания управляемых виртуальных машин.
Вариант 2. Создание управляемой виртуальной машины из управляемого образа с помощью PowerShell
После создания образа на основе существующей виртуальной машины с управляемым диском с помощью сценария, указанного в разделе Создание образа из управляемого диска с помощью PowerShell, используйте следующий пример сценария, чтобы создать аналогичную виртуальную машину Linux на основе существующего объекта образа.
Для модуля Azure Stack Hub PowerShell 1.7.0 или более поздней версии: следуйте инструкциям, приведенным в статье Создание виртуальной машины из управляемого образа.
Для модуля Azure Stack Hub PowerShell 1.6.0 или более ранней версии:
# 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
Также можно создать виртуальную машину на основе управляемого образа с помощью портала. Дополнительные сведения см. в статьях управляемого образа Azure Создание управляемого образа универсальной виртуальной машины в Azure и Создание виртуальной машины из управляемого образа.
Конфигурация
После применения обновления 1808 или более поздней версии необходимо выполнить приведенные ниже изменения конфигурации, прежде чем использовать управляемые диски.
- Если подписка была создана до пакета обновления версии 1808, выполните следующие шаги, чтобы обновить подписку. В противном случае во время развертывания виртуальных машин для этой подписки может произойти сбой с сообщением об ошибке "Internal error in disk manager" (В диспетчере дисков произошла внутренняя ошибка).
- На портале пользователя Azure Stack Hub перейдите в раздел Подписки и найдите подписку. Щелкните Поставщики ресурсов, затем Microsoft.Compute и выберите Повторная регистрация.
- В той же подписке перейдите в раздел Управление доступом (IAM) и убедитесь, что указан Azure Stack Hub — управляемый диск.
- Если вы используете мультитенантную среду, попросите оператора облака (кто может быть в вашей организации или у поставщика услуг) перенастроить каждый из гостевых каталогов, выполнив действия, описанные в разделе Настройка мультитенантности в Azure Stack Hub. В противном случае при развертывании виртуальных машин в этой подписке, связанной с гостевым каталогом, может произойти сбой с сообщением об ошибке "В диспетчере дисков произошла внутренняя ошибка".