マネージドディスク(Azure Managed Disks)の整理とパフォーマンスレベルを変更してIOPS測定

マネージドディスク(Azure Managed Disks)種類別で性能関連を中心にSLAや価格関連の情報を整理をしてみました。併せてPremium SSDのパフォーマンスレベルを変更からDISKPDを使った性能(IOPS)測定までしてみました。

マネージドディスクのサイズの変更については、Linuxはこちら、Windowsはこちらを参照願います。

こちらの記事を見ると2021年9月3日にオンラインでの変更がGAしたと記載があったので試してみたのですがVM停止済みにしないと出来なかったので今回はオフラインで実施しています。

スポンサーリンク

マネージドディスク(Azure Managed Disks )について

マネージドディスクの種類は4種類

Azure 仮想マシンのマネージドディスク(Azure Managed Disks)には4種類あります。パフォーマンス順にUltra Disk、Premium SSD、Standard SSD、Standard HDDの4種類になります。性能だけではなくSLAも異なります。性能だけではなくSLAの要求要件に応じてManaged Disksの種類を選択します。

※マネージドディスクのタイプ詳細は公式サイトに記載を参照ください。
※マネージドディスクのSLAは仮想マシンのSLAに関連します。SLAに関する詳細は公式サイトを参照ください。
※マネージドディスクのバーストについては公式サイトを参照ください。
※Ultra diskはデータディスクのみで使用可能です。またサイズ、IOPS、スループット値それぞれを個別に指定する必要があります。Azure Ultra Diskの詳細は公式サイトを参照ください。

種類 主な利用用途 SLA IOPS(256GBの場合) バースト有無
Ultra Disk 高性能のデータベース等でディスク性能を求めたい場合に利用する

99.9% 以上

76,800(2,000MB/秒)(上限値) ×(バーストではなく上限値を指定する)
Premium SSD 商用環境などで可用性や性能が要求されるようなVMに利用される 99.9% 以上 1,100(125 MB/秒) 〇バースト時(IOPS3500、スループット170 MB/秒)
Standard SSD 可用性が求められない仮想マシン(開発や検証用)で利用する場合

99.5% 以上

最大 500(最大 60 MB/秒) 〇バースト時(IOPS600、スループット150 MB/秒)
Standard HDD データ保管等で利用し価格を安く抑えたい場合

95% 以上

最大 500(最大 60 MB/秒)

マネージドディスクのサイズによるパフォーマンスの違いや変更可否

UltradiskやPremium SSDではマネージドディスクのパフォーマンスはディスクのサイズによって異なります。ディスクサイズを変更せずにパフォーマンスレベルだけを変える事も可能です。

種類 サイズによるパフォーマンスの違い サイズ変更 パフォーマンスレベルの変更 アップグレード(ディスクサイズ、パフォーマンスレベル)
Ultra Disk 〇(上限値が変わる) 〇(上限値を指定) IOPS(上限値)やスループット値(上限値)が向上
Premium SSD IOPSやスループット値が向上
Standard SSD × ×
Standard HDD × ×

マネージドディスクの種類によって価格も違う

マネージドディスクにはUltra Disk、Premium SSD、Standard SSD、Standard HDDの4種類ありますがパフォーマンスレベルが高くなるほど価格も高くなります。価格の詳細は公式サイトを参照ください。

ディスクの種類 IOPS(256GBの場合) 価格(東日本リージョン)(月額) トランザクションによる課金
Ultra Disk 76,800(2,000MB/秒)(上限値) ¥33,928.60(IOPS値:2200 スループット値:250MB/秒の場合) 無し
Premium SSD 1,100(125 MB/秒) ¥4,896.72 無し
Standard SSD 最大 500(最大 60 MB/秒) ¥2,150.40 有り(10,000 トランザクション ユニットあたり ¥0.224)
Standard HDD 最大 500(最大 60 MB/秒) ¥1,268.74 有り(トランザクション 10,000 回あたり ¥0.056)

※Ultra diskは料金計算ツールを利用。今回は料金計算にあたってディスクサイズ256GB、IOPS値:2200、スループット値:250MB/秒として計算しています。
※Standard SSD、Standard HDDはトランザクションによる課金が発生します。

マネージドディスク(Premium SSD)のパフォーマンスレベルに応じて価格が上がる

Premium SSDの例です。パフォーマンスレベルがアップグレードするほどIOPSや価格が高くなります。詳細は公式サイトを参照ください。価格の詳細は公式サイトを参照ください。

パフォーマンスレベル ディスクサイズ IOPS(スループット値) 価格(東日本リージョン)(月額)
P10 128GB 500(100MB/Sec) ¥2,539.04
P15 256GB 1100(125MB/Sec) ¥4,896.72
P20 512GB 2300(150MB/Sec) ¥9,430.40
P30 1024GB 5000(200MB/Sec) ¥17,409.28

マネージドディスクのサイズ変更とパフォーマンスレベル変更の違い

Azure 仮想マシンのマネージドディスクにはディスクサイズを一度大きくすると小さく出来ないという制限があります。パフォーマンスレベルはアップグレードだけじゃなくダウングレードも出来ます。(ただしパフォーマンスレベルを12時間に制限があります。詳細は公式サイトを参照ください。)

項目 アップグレード ダウングレード
ディスクサイズ変更 サイズアップによるパフォーマンス向上 一度アップグレードするとダウングレードする事が出来ない
パフォーマンスレベル変更 パフォーマンスレベルアップによるパフォーマンス向上 パフォーマンスレベルのダウングレードが可能

マネージドディスクのサイズアップグレードを行ってしまうとダウングレードできません。一時的な高負荷処理の場合にはパフォーマンスレベルのアップグレードで乗り切り高負荷状態が終わったのちにダウングレードしコストを抑えると言った事が可能です。

※パフォーマンスレベルをアップグレードしている場合は、アップグレードしたパフォーマンスレベルの課金が発生します。

※Premium SSDの場合はバーストで対応可能な事もあります。但しバースト可能な時間は30分以内となります。

仮想マシンサイズによる制限

マネージドディスクの上限だけではなく、Azure 仮想マシンのサイズによってマネージドディスクの本数やパフォーマンスに制限があります。

項目 制約事項
最大IOPS 仮想マシン自体のIOPS上限
  • D2ds_v4 3200IOPS
  • D2ds_v4 6400IOPS
データディスク本数 仮想マシンに接続出来るデータディスク本数に上限
  • D2ds_v4 4本
  • D2ds_v4 8本
Premiumディスク使用可否 Premium SSDが利用できるかどうか D2d_v4などサポートされていなシリーズがあります

実例で考えてみるとこのような感じになります。仮想マシンとディスクパフォーマンスの詳細については公式サイトを参照ください。

仮想マシンサイズ 仮想マシン(IOPS)  P30マネージドディスク(IOPS) 期待されるIOPS値
Standard_D2as_v4(P30) 3200 5000 3200
Standard_D4as_v4(P30) 6400 5000 5000

マネージドディスク(Azure Managed Disks)のパフォーマンスレベル変更

マネージドディスクのパフォーマンスレベルをアップグレード

マネージドディスクのパフォーマンスレベルをアップグレードしてみます。

パフォーマンスレベルのアップグレード

仮想マシンのメニューでディスクを選択します。

ディスクをクリックします。

ディスクのメニューでサイズおよびパフォーマンスを選択します。

パフォーマンスレベルを選択します。

アップグレード可能なパーティションレベルのリストが表示されます。今回はP30を選択してみます。

ディスクのサイズは変わらずパフォーマンスレベルだけが変わっている事が確認出来ます。

サイズ変更をクリックします。

サイズは127GBのままパフォーマンスレベルが5000IOPSに拡大している事が確認出来ます。

DISKPDを使ってIOPSを測定(アップグレード時)

アップグレードした状態でDISKPDを使ってパフォーマンスレベル変更後のIOPSを測定してみました。DISKPDについてはこちらを参照ください

今回の仮想マシンスペックは以下の通りになります。P30が5000IOPSなのでそれを満たす仮想マシンサイズを選択しています。

仮想マシンサイズ メモリ、CPU IOPS
Standard_D4as_v4 2 vcpu 数、8 GiB メモリ 6400

今回はP10からP30へパフォーマンスレベルをアップグレードしています。P10とP30それぞれのIOPS値は表の通りになります。

ディスク層 IOPS
P10 500
P30 5000

パフォーマンスレベルをアップグレードした状態で測定してみました。

 DISKPDを使ってIOPSを測定する

IOPS値を確認するとIOPS値が5953とP10(IOPS:500(バースト時3500))以上の値が計測されておりパフォーマンスレベルがアップグレードされている事が分かります。

//IOPSを測定(パフォーマンスレベルP30の場合)

PS> C:\DiskSpd\x86\diskspd.exe -t4 -o32 -b4k -r4k -w0 -d120 -Sh -D -L -c10G c:\IO.dat

Total IO
thread | bytes | I/Os | MiB/s | I/O per s | AvgLat | IopsStdDev | LatStdDev | file
——————————————————————————————————————
0 | 728678400 | 177900 | 5.79 | 1482.44 | 21.585 | 135.28 | 22.569 | c:\IO.dat (10240MiB)
1 | 732319744 | 178789 | 5.82 | 1489.85 | 21.478 | 133.14 | 22.554 | c:\IO.dat (10240MiB)
2 | 733229056 | 179011 | 5.83 | 1491.70 | 21.451 | 133.73 | 22.548 | c:\IO.dat (10240MiB)
3 | 732200960 | 178760 | 5.82 | 1489.61 | 21.482 | 133.05 | 22.548 | c:\IO.dat (10240MiB)
——————————————————————————————————————
total: 2926428160 | 714460 | 23.26 | 5953.59 | 21.499 | 531.76 | 22.555

 

※P30以上の性能値が計測されています。何度か試してみたのですが実際の提供性能値よりも10%から20%上振れした性能が出るようです。

マネージドディスクのパフォーマンスレベルをダウングレード

マネージドディスクのパフォーマンスレベルをダウングレードしてみます。

パフォーマンスレベルのダウングレード

仮想マシンのメニューでディスクを選択します。

ディスクをクリックします。

ディスクのメニューでサイズおよびパフォーマンスを選択します。

パフォーマンスレベルを選択します。

アップグレード可能なパーティションレベルのリストが表示されます。規定値のP10を選択します。

パフォーマンスレベルが規定値に変わっている事が確認出来ます。

サイズ変更をクリックします。

サイズは127GBでパフォーマンスレベルが500IOPSに戻っている事が確認出来ます。

DISKPDを使ってIOPSを測定してみる(ダウングレード後)

パフォーマンスレベルダウングレード後のIOPSをDISKPDを使って測定してみました。

 DISKPDを使ってIOPSを測定する

IOPS値を確認するとIOPS値が3886.72とP10のバースト値(P10バースト時のIOPS値は3500)が計測されておりますが、P30にパフォーマンスレベルをアップグレードした時よりもIOPS値(5953→3886)が下がっている事が確認出来ました。

//IOPSを測定(パフォーマンスレベルP30の場合)

PS> C:\DiskSpd\x86\diskspd.exe -t4 -o32 -b4k -r4k -w0 -d120 -Sh -D -L -c10G c:\IO.dat

Total IO
thread | bytes | I/Os | MiB/s | I/O per s | AvgLat | IopsStdDev | LatStdDev | file
——————————————————————————————————————
0 | 478318592 | 116777 | 3.80 | 973.04 | 32.881 | 56.54 | 23.295 | c:\IO.dat (10240MiB)
1 | 478081024 | 116719 | 3.80 | 972.56 | 32.897 | 54.00 | 23.295 | c:\IO.dat (10240MiB)
2 | 477417472 | 116557 | 3.79 | 971.21 | 32.943 | 55.48 | 23.289 | c:\IO.dat (10240MiB)
3 | 476774400 | 116400 | 3.79 | 969.90 | 32.987 | 54.85 | 23.267 | c:\IO.dat (10240MiB)
——————————————————————————————————————
total: 1910591488 | 466453 | 15.18 | 3886.72 | 32.927 | 217.99 | 23.286

 

※P30以上の性能値が計測されています。何度か試してみたのですが実際の提供性能値よりも10%から20%上振れした性能が出るようです。

パフォーマンスレベルダウングレードにあたっての注意点

ダウングレードはアップグレード後12時間経過しないと実施出来ない制限があります。実施するとこのようなエラーメッセージが表示されます。この場合は既定の時間まで待つことになります。

【エラーメッセージ】

ディスク 'test-win-01_OsDisk_1_XXXXXXXX’ を更新できませんでした。エラー: 9/4/2021 8:10:56 AM +00:00 の BLOB に対して上位の階層が明示的に設定されました。階層は 12 時間後にのみダウングレードできます