検索
連載

ダウンタイムなしでディスクサイズが拡張可能に――Azure仮想マシンのデータディスクのライブ拡張が正式サポートMicrosoft Azure最新機能フォローアップ(179)

Microsoftは2022年8月31日(米国時間)、Azure仮想マシンのデータディスクのライブ拡張(LiveResize)が正式サポートされたことを発表しました。従来はAzure仮想マシンを割り当て解除状態にするか、ディスクをデタッチしてから拡張する必要がありましたが、LiveResizeによりダウンタイムなしでディスクサイズを拡張できるようになります。

PC用表示 関連情報
Share
Tweet
LINE
Hatena
「Microsoft Azure最新機能フォローアップ」のインデックス

Microsoft Azure最新機能フォローアップ

“LiveResize”の要件

 「LiveResize」(Azure仮想マシンのデータディスクのライブ拡張)の一般提供(Generally available、GA)のアナウンスは、以下のブログ記事で行われました。

 LiveResizeは、WindowsまたはLinuxを実行するAzure仮想マシンでサポートされます。LiveResizeを利用するには、以下の条件を満たす必要があります。そうでない場合は、従来と同じように、Azure仮想マシンを割り当て解除状態にするか、ディスクをデタッチしてからディスクサイズを拡張する必要があります。

  • Azure仮想マシンにアタッチされたデータディスク(OSディスクはLiveResizeの対象外)
  • Premium SSDまたはStandard SSD(Ultra Disk、Premium SSD v2、Standard HDDは対象外)
  • 4TBより小さいデータディスクの場合、4TBを超えてサイズを拡張することができない
  • 共有ディスクはサポートされない
  • 最新のAzure CLIまたはAzure PowerShell、Azureポータルまたは2021-04-01以降のAPIバージョンのAzure Resource Manager(ARM)テンプレートを使用すること

 LiveResizeの機能は既定では「無効」になっています。利用可能にするには、「Microsoft.Computeリソースプロバイダー」でLiveResize機能を登録する必要があります。Azure PowerShellの場合は、以下のコマンドラインを実行することで登録できます。AzureポータルのCloud Shellを利用するのがより簡単です。

Register-AzProviderFeature -FeatureName "LiveResize" -ProviderNamespace "Microsoft.Compute"

 登録が完了するまでにはしばらく時間がかかります。以下のコマンドラインを実行して「登録状態(RegistrationState)」が「登録済み(Registered)」になったことを確認してください(画面1)。

Get-AzProviderFeature -FeatureName "LiveResize" -ProviderNamespace "Microsoft.Compute"
画面1
画面1 Microsoft.ComputeリソースプロバイダーにLiveResize機能を登録し、登録完了を確認する

 Azure CLIの場合は、上記の操作を以下のコマンドラインで実行できます。

az feature register --namespace Microsoft.Compute --name LiveResize
az feature show --namespace Microsoft.Compute --name LiveResize

ダウンタイムなしでデータディスクを拡張するには

 LiveResizeの機能を利用して、Azure仮想マシンのデータディスクのサイズをダウンタイムなしで拡張する手順については、以下のドキュメントで説明されています。

 ただし、筆者の環境では、LiveResizeの機能を有効にした後も、Azureポータルを使用してのサイズ変更はできませんでした。従来と同じように、割り当て解除またはデータディスクのデタッチが要求されました(画面2)。Azure仮想マシンを新規作成して試してみましたが、できませんでした。本来であれば、Azureポータルから直感的な方法でサイズを変更できるはずです。

画面2
画面2 筆者の環境では、Azureポータルからのサイズ変更はできなかった(理由は不明)

 そこで、Azure PowerShellのコマンドラインから操作する方法で再挑戦してみました。データディスクとして16GBのStandard SSDをアタッチしたWindows仮想マシンを用意し、仮想マシンは実行中の状態のまま、Azure PowerShellで以下のコマンドラインを実行して、32GBにサイズを拡張してみます。

$rgName = 'リソースグループ名'
$vmName = '仮想マシン名'
$diskName = 'データディスク名'
$vm = Get-AzVM -ResourceGroupName $rgName -Name $vmName
$disk= Get-AzDisk -ResourceGroupName $rgName -DiskName $diskName
$disk.DiskSizeGB = 32
Update-AzDisk -ResourceGroupName $rgName -Disk $disk -DiskName $disk.Name

 この方法は成功し、Azure仮想マシンの「ディスクの管理」スナップインで確認すると、データディスクが32GBに拡張されていることを確認できました。新たに追加された未使用領域は、ボリュームを拡張することで使用可能にできます(画面3)。

画面3
画面3 Azure PowerShellのコマンドライン操作により、オンラインのままデータディスクのサイズを拡張することができた

筆者紹介

山市 良(やまいち りょう)

岩手県花巻市在住。Microsoft MVP 2009 to 2022(Cloud and Datacenter Management)。SIer、IT出版社、中堅企業のシステム管理者を経て、フリーのテクニカルライターに。Microsoft製品、テクノロジーを中心に、IT雑誌、Webサイトへの記事の寄稿、ドキュメント作成、事例取材などを手掛ける。個人ブログは『山市良のえぬなんとかわーるど』。近著は『Windows版Docker&Windowsコンテナーテクノロジ入門』(日経BP社)、『ITプロフェッショナル向けWindowsトラブル解決 コマンド&テクニック集』(日経BP社)。


Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る