Azure VM で利用可能な高パフォーマンスのディスクとして、Premium SSD が提供されています。本記事では、Premium SSD をはじめとした Azue VM で利用できるディスクの性能および、利用時の注意点に関して触れます。

目次

  1. Premium SSD を使ってみよう ~性能と注意点をチェック~(本記事)
  2. Premium SSD を使ってみよう ~IOPS とスループットの関係~
  3. Premium SSD を使ってみよう ~システムが生成する IOPS の計測方法~
  4. Premium SSD を使ってみよう ~ボトルネックの原因がディスクなのかどうかを特定する~

Azure VM で利用できるディスクの種類

Azure VM で利用できるディスクには以下の三種類があり、ディスク一台あたりのそれぞれの性能は以下の通りです。

ディスクの種類 1TB あたりの IOPS 1TB あたりのスループット 東日本リージョンでの月額
Premium SSD 5,000 200 MB/秒 ¥17,409.28
Standard SSD 500 60 MB/秒 ¥8,601.60
Standard HDD 500 60 MB/秒 ¥4,587.52

参考情報:
管理対象の仮想マシン ディスク
https://docs.microsoft.com/ja-jp/azure/virtual-machines/windows/disk-scalability-targets#managed-virtual-machine-disks

Managed Disks の価格
https://azure.microsoft.com/ja-jp/pricing/details/managed-disks/

性能が高い順に、Premium SSD、Standard SSD、Standard HDD となります。

また、IOPS/スループットの性能はディスクのサイズに応じて変化します。例えば、ディスク サイズが 1TB の Premium SSD の場合、IOPS 性能の期待値は 5,000 になります。5,000 を超えた IOPS が必要になった場合、複数台のディスクを Azure VM に接続し、記憶域プールなどを用いて 1 つの論理ディスクとして束ねることにより、IOPS を確保します。

IOPS/スループットの上限は Azure VM のサイズに対しても設けられている

Azure VM に接続されたディスク性能に影響を及ぼす要素として、以下の三点があります。

  • ディスクの種類(SKU)
  • ディスク サイズ
  • Azure VM のサイズ

ディスクの種類およびサイズが IOPS/スループット性能に及ぼす影響については、上記の参考資料(管理対象の仮想マシン ディスク)に記載の表をご覧ください。Premium SSD が最も高速で、ディスク サイズが大きいほど IOPS/スループット性能が上がります。

Azure の場合、ディスク自体の性能に加えて、Azure VM のサイズがディスク性能に影響します。Azure VM のサイズが適切でない場合、Premium SSD を利用して高速なディスク構成を展開しても、思うような性能が引き出せないケースがありますので、ご注意ください。

ディスク性能を引き出すための Azure VM の適切なサイズですが、まず SSD に対応しているサイズを選択します。例えば、D v3 シリーズの D2 を利用する場合、同じ D2 v3 でも Standard_D2_v3 と Standard_D2s_v3 という、サイズ名に「s」が付与されているものがあります。SSD に対応しているサイズは「s」が付与されているものになります。Premium SSD/Standard SSD を利用する際には、「s」付きのサイズを選択します。

次に、サイズに応じて設定された IOPS/スループットの性能を確認します。以下の参考情報をご覧ください。

参考情報:
Azure の Windows 仮想マシンのサイズ
https://docs.microsoft.com/ja-jp/azure/virtual-machines/windows/sizes

汎用仮想マシンのサイズ
https://docs.microsoft.com/ja-jp/azure/virtual-machines/windows/sizes-general

汎用仮想マシンのサイズに記載の表を見ると、IOPS/スループット性能に関する列があります。例えば、Standard_D2s_v3 のキャッシュ無効時の IOPS/スループット性能はそれぞれ、3,200 IOPS/48 MB/秒 になります。

サイズが 1TB の Premium SSD のディスク一台あたりの性能は 5,000 IOPS/200 MB/秒 になります。従って、Standard_D2s_v3 でサイズ 1TB の Premium SSD を利用した場合、Azure VM のサイズに設けられた IOPS/スループットの上限によって Premium SSD の性能をフルに引き出すことができません。

Standard_D2s_v3 以外のサイズを確認すると、Standard_D8s_v3 のキャッシュ無効時のディスク性能は 12,800 IOPS/192 MB/秒、Standard_D16s_v3 のキャッシュ無効時のディスク性能は 25,600 IOPS/384 MB/秒 になります。サイズが 1TB の Premium SSD の性能をフルに引き出す場合、最低でも Standard_D8s_v3、出来れば Standard_D16s_v3 以上のサイズを設定するのが望ましいということになります。

Premium SSD の IOPS を測定

Standard_D16s_v3 の Azure VM に 1TB の Premium SSD のディスクを接続し、ディスクのホスト キャッシュを「なし」に設定して IOPS の測定を行います。IOPS の測定には Iometer を使用します。Iometer は、ディスクに負荷をかけながらディスク性能のベンチマーク データを取得できるツールになります。

今回の測定で利用した Iometer の設定は以下の通りです。16 個の Worker を実行して 4 KB 100% Read / 0% Random の負荷をかけます。これは、1 レコードあたり 4KB のデータをディスクからシーケンシャルに読み込み続ける、という負荷のかけ方になります。また、Worker が 16 個なのは、Standard_D16s_v3 の CPU が 16 個あるためです。

Iometer

以上の条件で IOPS の測定を行うと、1TB の Premium SSD の IOPS 性能の期待値である 5,000 IOPS が得られていることが確認できます。

IOPS

まとめ

  • Azure VM で利用できるディスクには、Premium SSD/Standard SSD/Standard HDD の三種類があります
  • ディスクの性能は、利用するディスクの種類(SKU)およびディスク サイズに応じて変化します
  • Azure VM のディスク性能は、ディスク自体の性能に加えて Azure VM のサイズが影響します
  • サイズが 1TB の Premium SSD を利用した場合、ディスク一台あたりの IOPS 性能の期待値は 5,000 IOPS です

関連記事

  1. Premium SSD を使ってみよう ~性能と注意点をチェック~(本記事)
  2. Premium SSD を使ってみよう ~IOPS とスループットの関係~
  3. Premium SSD を使ってみよう ~システムが生成する IOPS の計測方法~
  4. Premium SSD を使ってみよう ~ボトルネックの原因がディスクなのかどうかを特定する~