この記事では、Azure Stack Hub で
マネージド ディスクは、VM ディスクに関連付けられている
チートシート: マネージドディスクの違い
| 特徴 | Azure (グローバル) | Azure Stack Hub |
|---|---|---|
| バックアップ オプション | Azure Backup サービス | まだサポートされていません |
| ディザスター リカバリー のオプション | Azure Site Recovery | Azure Stack Hub 上の Azure Site Recovery |
| ディスクのパフォーマンス分析 | 集約メトリックとディスクごとのメトリックがサポートされています。 | まだサポートされていません |
| ディスク サイズ | Azure Premium Disk: 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 暗号化 |
| ディスクの拡張 – マネージド ディスク | サポート済み | サポート済み ウィンドウズ リナックス |
| Image | マネージド カスタム イメージ | サポート済み |
| 移動 | VM を再作成する必要なく、既存のアンマネージド Azure Resource Manager VM から移行するツールを提供します。 | まだサポートされていません |
| Premium Disk | 完全にサポートされています。 | プロビジョニングはできますが、パフォーマンスの制限や保証はありません |
| Premium Disk の IOP | ディスク サイズによって異なります。 | ディスクあたり 2300 IOPS |
| プレミアム ディスクのスループット | ディスク サイズによって異なります。 | ディスクあたり 145 MB/秒 |
手記
Azure Stack Hub のマネージド ディスクの IOPS とスループットは、プロビジョニングされた数ではなく上限番号です。これは、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 (マネージド イメージのみ、ディスクなし、スナップショットなし)
マネージド ディスクへの変換
手記
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 is to 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 を一般化する
手記
必ず VM を一般化してください。 適切に一般化されていないイメージから VM を作成すると、 VMProvisioningTimeout エラーが発生する可能性があります。
手順 2: マネージド イメージを作成する
ポータル、PowerShell、または Azure CLI を使用して、マネージド イメージを作成できます。 マネージド イメージの作成
手順 3: ユース ケースを選択する
ケース 1: アンマネージド VM をマネージド ディスクに移行する
この手順の前に、VM を正しく一般化してください。 VM を一般化した後は使用できません。 適切に一般化されていないイメージから VM を作成すると、 VMProvisioningTimeout エラーが発生します。
ストレージ アカウント内の一般化された VHD からマネージド イメージを作成するには、「ストレージ アカウント を使用する VM からイメージを作成する」を参照してください。 このイメージは、将来、マネージド VM を作成するために使用できます。
ケース 2: PowerShell を使用してマネージド イメージからマネージド VM を作成する
「PowerShell を使用してマネージド ディスクからイメージを作成する」のスクリプトを使用して既存の マネージド ディスク VM からイメージを作成した後、次のサンプル スクリプトを使用して、既存のイメージ オブジェクトから同様の Linux VM を作成します。
Azure Stack Hub PowerShell モジュール 1.7.0 以降: マネージド イメージからの VM の作成に関する記事の手順に従います。
PowerShell モジュール 1.6.0 以前を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
ポータルを使用して、マネージド イメージから VM を作成することもできます。 詳細については、Azure で一般化された VM のマネージド イメージを作成
構成
1808 以降の更新プログラムを適用した後、マネージド ディスクを使用する前に、次の構成変更を行います。
- 1808 更新プログラムの前にサブスクリプションを作成した場合は、次のセクションの手順に従ってサブスクリプションを更新します。 それ以外の場合、このサブスクリプションに VM をデプロイすると、"ディスク マネージャーの内部エラー" というエラー メッセージで失敗する可能性があります。
- Azure Stack Hub ユーザー ポータルで、サブスクリプション に移動し、サブスクリプションを見つけます。 [リソース プロバイダー] を選択し、[Microsoft] を選択します。コンピューティング。 [再登録] を選択します。
- 同じサブスクリプションで、
アクセス制御 (IAM) に移動し、Azure Stack Hub - マネージド ディスクが一覧表示されていることを確認します。
- マルチテナント環境を使用する場合は、「Azure Stack Hub でマルチテナントを構成する」の手順に従って、クラウド オペレーター (自分の組織またはサービス プロバイダーから) に各ゲスト ディレクトリを再構成するよう依頼します。 そうしないと、そのゲスト ディレクトリに関連付けられているサブスクリプションに VM をデプロイすると、"ディスク マネージャーの内部エラー" というエラー メッセージで失敗する可能性があります。