適用対象: ✔️ Windows VM ✔️ フレキシブル スケール セット
Azure Marketplace からイメージをデプロイしてリソース グループに新しい仮想マシン (VM) を作成する場合、既定のオペレーティング システム (OS) ディスクは通常 127 GiB です。 (一部のイメージでは、OS ディスク サイズが既定で小さくなります)。VM にデータ ディスクを追加できます。 量は、選択した VM のバージョンによって異なります。
データ ディスクには、アプリケーションと CPU 負荷の高いワークロードをインストールする必要があります。 OS ディスクにコンポーネントをインストールするレガシ アプリケーションをサポートしている場合、またはより大きな OS ディスクを持つオンプレミスから物理 PC または VM を移行する場合は、OS ディスクの拡張が必要になる場合があります。 この記事では、OS ディスク、データ ディスクのいずれかを拡張する場合について説明します。
OS ディスクの最大容量は 4,095 GiB です。 ただし、多くのオペレーティング システムは既定でマスター ブート レコード (MBR) でパーティション分割されます。 MBR では、使用可能なサイズが 2 TiB に制限されています。 2 TiB 以上必要な場合は、データディスクを作成して接続し、データストレージ用に使用します。 OS ディスクにデータを格納する必要があり、追加の領域が必要な場合は、 GUID パーティション テーブル (GPT) に変換します。 Windows デプロイでの MBR と GPT の違いについては、「Windows と GPT のよくあるご質問」を参照してください。
「ダウンタイムなしで拡張する」を使用しない場合、データ ディスクを拡張するためには VM の割り当てを解除する必要があります。 既存のディスクの圧縮はサポートされていないため、データが失われる可能性があります。
ディスクを展開したら、 OS のボリュームを展開 して、より大きなディスクを利用します。 ストライプ ボリュームのサイズを拡大することはできません。
ダウンタイムなしで拡張する
VM の割り当てを解除せずに、データ ディスクを拡張できます。 ディスクのホスト キャッシュ設定によって、VM の割り当てを解除せずにデータ ディスクを拡張できるかどうかは変わりません。
この機能には次の制限があります。
重要
この制限は、Premium SSD v2 または Ultra Disks には適用されません。
Standard HDD、Standard SSD、または Premium SSD ディスクが 4 TiB 以下の場合は、4 TiB を超えて拡張する前に、VM の割り当てを解除し、ディスクをデタッチします。 これらのディスクの種類のいずれかが既に 4 TiB を超えている場合は、VM の割り当てを解除してディスクをデタッチすることなく拡張できます。
- データ ディスクに対してのみサポートされます。
- 共有ディスクではサポートされていません。
- インストールし、次のいずれかのオプションを使用する必要があります。
- 最新の Azure CLI。
- 最新の Azure PowerShell モジュール。
- Azure ポータル。
-
2021-04-01
以降の API バージョンを持つ Azure Resource Manager テンプレート。
- 一部のクラシック VM では使用できません。 このスクリプトを使用して、ダウンタイムなしで拡張をサポートするクラシック VM 製品の一覧を取得します。
Ultra Disks と Premium SSD v2 で拡張する
ダウンタイムなしで Ultra Disks と Premium SSD v2 ディスクを拡張するには、次の追加の制限があります。
- データの バックグラウンド コピー もそのディスクで行われている間は、ディスクを拡張できません。 たとえば、 ディスクがスナップショットからバックフィルされている場合です。
- このパブリック プレビューでは、Ultra Disks または Premium SSD v2 ディスクで NVMe コントローラーを使用することで、ダウンタイムなしで VM を拡張できます。 このリリースはパブリック プレビューであるため、ダウンタイムなしで拡張の機能をテストするためにのみ使用する必要があります。 運用環境で VM を拡張しないでください。
次のリージョンでは、ダウンタイムなしで Ultra Disks または Premium SSD v2 ディスクで NVMe コントローラー を使用している VM を拡張できます。 Azure portal、Azure CLI、または Azure PowerShell モジュールのいずれかを使用します。
- 東南アジア
- ブラジル南部
- カナダ中部
- ドイツ中西部
- インド中部 (V6 VM では現在サポートされていません)
次のリージョンでは、ダウンタイムなしで Ultra Disks または Premium SSD v2 ディスクで NVMe コントローラー を使用している VM を拡張できます。 Azure CLI または Azure PowerShell モジュールのみを使用します。 現在、Azure portal を使用することはできません。
- 東アジア
- 米国中西部 (V6 VM では現在サポートされていません)
Windows VM と Linux VM に正しいサイズが反映されるまで、最大 10 分かかります。 Linux VM の場合は、Linux 再スキャン機能を実行する必要があります。 ワークロードがない Windows VM の場合は、 Windows 再スキャン機能を実行する必要があります。 すぐに再スキャンできますが、時間が 10 分以内の場合は、正しいサイズを表示するために再スキャンが必要になる場合があります。
Azure portal でマネージド ディスクのサイズを変更する
重要
「ダウンタイムなしで拡張する」の要件をディスクが満たしている場合は、手順 1 を省略できます。
Azure portal で、ディスクを展開する VM に移動します。 [停止] を選択して VM の割り当てを解除します。
左側のメニューの [設定] で、[ ディスク] を選択します。
[ ディスク名] で、展開するディスクを選択します。
左側のメニューの [設定] で、[ サイズ + パフォーマンス] を選択します。
[ サイズ + パフォーマンス] で、目的のディスク サイズを選択します。
新しいサイズには、既存のディスク サイズより大きい値を指定する必要があります。 OS ディスクで許可される最大値は、4,095 GB です。 仮想ハード ディスク (VHD) BLOB をそのサイズを超えて拡張することはできますが、OS は最初の 4,095 GB の領域でのみ機能します。
ページの下部にある [サイズ変更] を選択します。
PowerShell を使用してマネージド ディスクのサイズを変更する
管理モードで PowerShell ウィンドウを開き、次の手順に従います。
リソース管理モードで Azure アカウントにサインインし、サブスクリプションを選択します。
Connect-AzAccount Select-AzSubscription –SubscriptionName 'my-subscription-name'
リソース グループ名と VM 名を設定します。
$rgName = 'my-resource-group-name' $vmName = 'my-vm-name' $diskName = 'my-disk-name'
VM への参照を取得します。
$vm = Get-AzVM -ResourceGroupName $rgName -Name $vmName
重要
ディスクがダウンタイムなしで Expand の要件を満たしている場合は、手順 4 と 6 をスキップできます。
ディスクのサイズを変更する前に VM を停止します。
Stop-AzVM -ResourceGroupName $rgName -Name $vmName
マネージド OS ディスクへの参照を取得します。 マネージド OS ディスクのサイズを目的の値に設定し、ディスクを更新します。
$disk= Get-AzDisk -ResourceGroupName $rgName -DiskName $diskName $disk.DiskSizeGB = 1023 Update-AzDisk -ResourceGroupName $rgName -Disk $disk -DiskName $disk.Name
新しいサイズには、既存のディスク サイズより大きい値を指定する必要があります。 OS ディスクで許可される最大値は、4,095 GB です。 VHD BLOB はそのサイズを超えて拡張できますが、OS は最初の 4,095 GB の領域でのみ機能します。
VM の更新には数秒かかる可能性があります。 コマンドの実行が完了したら、VM を再起動します。
Start-AzVM -ResourceGroupName $rgName -Name $vmName
VM にリモート接続し、 コンピューター管理 (または ディスク管理) を開き、新しく割り当てられた領域を使用してドライブを展開します。
オペレーティング システムでボリュームを拡張する
VM のディスクを展開したら、OS に移動し、ボリュームを展開して新しい領域を含めます。 パーティションを拡張するには、いくつかの方法があります。 このセクションでは、リモート デスクトップ プロトコル (RDP) 接続を使用して VM を接続し、 DiskPart または Disk Manager を使用してパーティションを拡張する方法について説明します。
DiskPart を使用する
VM への RDP 接続を開きます。
コマンド プロンプトを開き、「
diskpart
」と入力します。DISKPART
プロンプトで、「list volume
」と入力します。 拡張するボリュームをメモしておきます。DISKPART
プロンプトで、「select volume <volumenumber>
」と入力します。 この操作により、同じディスク上の連続した空き領域に拡張するボリュームvolumenumber
が選択されます。DISKPART
プロンプトで、「extend [size=<size>]
」と入力します。 このアクションにより、選択したボリュームのサイズが MB (MB) 単位で拡張されます。
ディスク マネージャーを使用する
VM でリモート デスクトップ セッションを開始します。
[ディスクの管理] を開きます。
既存の C: ドライブ パーティションを右クリックし、[ ボリュームの拡張] を選択します。
ウィザードの手順に従って、容量が更新されたディスクを表示します。
ダウンタイムなしで拡張するクラシック VM SKU のサポート
クラシック VM SKU またはバージョンを使用している場合は、ダウンタイムなしでディスクの拡張がサポートされない可能性があります。
次の PowerShell スクリプトを使用して、使用できる VM のバージョンを確認します。
Connect-AzAccount
$subscriptionId="yourSubID"
$___location="desiredRegion"
Set-AzContext -Subscription $subscriptionId
$vmSizes=Get-AzComputeResourceSku -Location $___location | where{$_.ResourceType -eq 'virtualMachines'}
foreach($vmSize in $vmSizes){
foreach($capability in $vmSize.Capabilities)
{
if(($capability.Name -eq "EphemeralOSDiskSupported" -and $capability.Value -eq "True") -or ($capability.Name -eq "PremiumIO" -and $capability.Value -eq "True") -or ($capability.Name -eq "HyperVGenerations" -and $capability.Value -match "V2"))
{
$vmSize.Name
}
}
}
関連コンテンツ
Azure portal を使用してディスクを接続することもできます。