Azure Stack Hub マネージド ディスク: 相違点と考慮事項
この記事は、Azure Stack Hub の"マネージド ディスク" と Azure のマネージド ディスクの相違点をまとめたものです。 Azure Stack Hub と Azure の相違点の概要については、「主な考慮事項」をご覧ください。
マネージド ディスクを使用すると、VM ディスクに関連付けられているストレージ アカウントを管理できるため、IaaS 仮想マシン (VM) のディスク管理が簡素化されます。
Azure Stack Hub ポータルを使用して VM を作成すると、マネージド ディスクが既定で有効になります。
チート シート: マネージド ディスクの相違点
機能 | Azure (グローバル) | Azure Stack Hub |
---|---|---|
バックアップ オプション | Azure Backup サービス | まだサポートされていません |
ディザスター リカバリーのオプション | Azure Site Recovery | まだサポートされていません |
ディスクのパフォーマンス分析 | 集計メトリックおよびディスクあたりのメトリックはサポートされています。 | まだサポートされていません |
ディスク サイズ | Azure Premium ディスク:P4 (32 GiB) ~ P80 (32 TiB) Azure Standard SSD ディスク:E10 (128 GiB) ~ E80 (32 TiB) Azure Standard HDD ディスク:S4 (32 GiB) ~ S80 (32 TiB) |
M4:32 GiB M6:64 GiB M10:128 GiB M15:256 GiB M20:512 GiB M30:1023 GiB |
ディスクのスナップショット コピー | 実行中の VM にアタッチされている Azure マネージド ディスクのスナップショットはサポートされています。 | バックアップ ベンダーを通じてサポートされます。 サポートについてはベンダーに確認してください。 |
ディスクの種類 | Premium SSD、Standard SSD、および Standard HDD。 | Premium SSD、Standard HDD |
保存データの暗号化 | Azure Storage Service Encryption (SSE)、Azure Disk Encryption (ADE)。 | BitLocker 128 ビット AES 暗号化 |
ディスクを拡張する - マネージド ディスク | サポートされています | サポートされています Windows Linux |
Image | マネージド カスタム イメージ | サポートされています |
移行 | VM を再作成せずに既存のアンマネージド Azure Resource Manager VM から移行するためのツールを提供します。 | まだサポートされていません |
Premium Disk | 完全にサポートされます。 | プロビジョニング可能ですがパフォーマンス制限や保証がありません |
Premium Disk の IOP | ディスク サイズによって異なります。 | ディスクあたりの 2300 IOP |
Premium ディスクのスループット | ディスク サイズによって異なります。 | ディスクあたり 145 MB/秒 |
Note
Azure Stack Hub のマネージド ディスクの IOP とスループットは、プロビジョニングされた数値ではなく上限数です。これは Azure Stack Hub で実行されているハードウェアとワークロードによって影響を受ける可能性があります。
メトリック
ストレージ メトリックにも相違点があります。
- Azure Stack Hub では、ストレージ メトリックのトランザクション データで、内部と外部のネットワーク帯域幅は区別されません。
- ストレージ メトリックの Azure Stack Hub トランザクション データには、マウントされたディスクへの仮想マシンのアクセスは含まれません。
API のバージョン
Azure Stack Hub のマネージド ディスクでは、次の 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 (マネージド イメージのみ、ディスクなし、スナップショットなし)
マネージド ディスクへの変換
Note
Azure PowerShell コマンドレット ConvertTo-AzVMManagedDisk を使用して、Azure Stack Hub 内のアンマネージド ディスクをマネージド ディスクに変換することはできません。 Azure Stack Hub では現在、このコマンドレットはサポートされていません。
次のスクリプトを使用して、現在プロビジョニングされている VM をアンマネージド ディスクからマネージド ディスクに変換できます。 プレースホルダーを実際の値に置き換えてください。
$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 では "マネージド イメージ" がサポートされています。これにより、汎用化された VM (アンマネージドとマネージドの両方) でマネージド イメージ オブジェクトを作成できます。以降、このオブジェクトではマネージド ディスク VM のみを作成できます。 マネージド イメージにより、次の 2 つのシナリオが可能になります。
- 汎用化されたアンマネージド VM があり、今後はマネージド ディスクを使用する。
- 汎用化されたマネージド VM があり、同様のマネージド VM を複数作成する。
手順 1:VM の汎用化
Windows の場合は、「Sysprep を使用して Windows VM を一般化する」のセクションに従います。 Linux の場合は、手順 1 (こちら) に従います。
Note
必ず VM を一般化してください。 適切に一般化されていないイメージから VM を作成すると、VMProvisioningTimeout エラーが発生する可能性があります。
手順 2:マネージド イメージを作成する
ポータル、PowerShell、または Azure CLI を使用してマネージド イメージを作成できます。 マネージド イメージを作成する手順に従います。
手順 3:ユース ケースを選択する
ケース 1: アンマネージド VM をマネージド ディスクに移行する
この手順を実行する前に、VM を適切に一般化してください。 一般化の後ではその VM を使用できなくなります。 適切に一般化されていないイメージから VM を作成すると、VMProvisioningTimeout エラーが発生します。
「ストレージ アカウントを使用する VM からイメージを作成する」の手順に従って、ストレージ アカウント内の一般化された VHD からマネージド イメージを作成します。 このイメージは、後でマネージド VM を作成するために使用できます。
ケース 2: PowerShell を使用してマネージド イメージからマネージド VM を作成する
「PowerShell を使ってマネージド ディスクからイメージを作成する」のスクリプトを使って既存のマネージド ディスク VM からイメージを作成した後、次のサンプル スクリプトを使って、既存のイメージ オブジェクトから類似の Linux VM を作成します。
Azure Stack Hub PowerShell モジュール 1.7.0 以上: マネージド イメージから VM を作成するの手順に従います。
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
ポータルを使用して、マネージド イメージから VM を作成することもできます。 詳細については、Azure マネージド イメージに関する記事「Azure で汎用化された VM のマネージド イメージを作成する」および「マネージド イメージから VM を作成する」を参照してください。
構成
1808 以降の更新プログラムを適用した後、マネージド ディスクを使用する前に次の構成変更を行う必要があります。
- 1808 更新プログラムの前にサブスクリプションが作成された場合は、次の手順に従ってサブスクリプションを更新します。 そうでないと、このサブスクリプションに VM をデプロイする操作がエラー メッセージ "ディスク マネージャーでの内部エラーです" で失敗することがあります。
- Azure Stack Hub ユーザー ポータルで、 [サブスクリプション] に移動して、サブスクリプションを検索します。 [リソース プロバイダー] をクリックし、 [Microsoft.Compute] をクリックした後、 [再登録] をクリックします。
- 同じサブスクリプションで、 [アクセス制御 (IAM)] に移動し、 [Azure Stack Hub - マネージド ディスク] がリストに含まれていることを確認します。
- マルチテナント環境を使用している場合は、「Azure Stack Hub でマルチテナントを構成する」の手順に従って、各ゲスト ディレクトリを再構成するように (お客様の組織内またはサービス プロバイダーからの) クラウド オペレーターに依頼してください。 そうしないと、そのゲスト ディレクトリに関連付けられているサブスクリプションに VM をデプロイした場合に、"ディスク マネージャーでの内部エラーです" というエラー メッセージが表示され、失敗することがあります。
次のステップ
- Azure Stack Hub 仮想マシンについて確認してください。
- 「Azure Stack Hub マネージド ディスクの相違点と考慮事項」もご覧ください。
- 仮想マシンにアタッチされているアンマネージド仮想ハードディスクを拡張する方法。