Azure Managed Disk Premium SSD v2の使いどころを考えてみる
はじめに
2022年10月、Azureのマネージドディスクの「Premium SSD v2」がGAされました。
もともと高性能なディスクとしては「Premium SSD」(本記事ではv1と呼ぶことにします)が提供されており、v1自体は継続して提供されているようです。今後「どちらのディスクを選べばよいの?」という問いに応えられるように、自分なりに情報を整理したいと思います。
Premium SSD v2の概要
上記のGA記事に載っているv2の特徴は下記の通りです。
- Ability to increase disk storage capacity in 1 GiB increments.
元々、v1はP1~P80まで、14段階の固定されたディスク容量で提供されていました。これに対し、v2はGiB単位で容量を指定でき、効率的にプロビジョニングすることができます。
例えば、「200GBの容量が欲しい」といった場合、v1だとP10(128GB)では容量が足りず、P15(256GB)のディスクを選択する必要がありました。56GB分無駄にプロビジョニングされ、お金もかかることになります。v2だと、必要な「200GB」ぴったりプロビジョニングできるようになります。
- The capability to separately provision IOPS, throughput, and disk storage capacity.
v1では、ディスクのサイズ(P1~P80)に従って性能が決まっており、「サイズは小さくてもいいけど高性能が欲しい!」というときに無駄に大きなディスクを使う必要がありました。
v2では、(最低限のディスクサイズが無いと引き出せない性能がありますが)基本的にディスクサイズと性能は別々に指定できるようになっています。
- Consistent sub-millisecond latency.
「ミリ秒未満」は今まではUltra Diskに対する宣伝文句でした。v1よりv2の方が早くなっているのかもしれません。要チェックポイントです。
- Easier maintenance with scaling performance up and down without downtime.
v2ではオンラインのまま、パフォーマンスを変更できるようです。v1ではちょっと前に容量拡張(含:性能向上)だけはオンラインでできるようになっていましたが、上に書いた通り容量と性能はセットになっているので、そもそも「パフォーマンス」だけを変更することはできませんでした。
- Up to 64TiBs, 80,000 IOPS and 1200 MB/s on a single disk.
スペックの上限が高くなりました。
なお、v1はバースト込み・v2は最大性能までプロビジョニングした場合のスペックです。
v1 | v2 | |
---|---|---|
サイズ | 32TiB | 64TiB |
IOPS | 30,000 | 80,000 |
スループット | 900 | 1,200 |
1ディスクでは賄えないスペックが必要になる場合、LinuxでいうLVMを使うなど工夫や制約が必要になりますので、スペック上限が高くなることはウェルカムですね。
Premium SSD(v1)との比較
単純なスペックと特徴の違いは分かりましたので、v1とv2の使い分け含めたもう少し細かい比較を見ていきます。
なお、本記事執筆時点(2022/10/31)の米国東部リージョンの数値を採用しています。
(引用元:「価格」ページ)
性能の比較
v1では「バースト」という機能があり、一時的な性能開放が可能です。
そのため、v1は「ベース性能は低めに抑えられ、一時的な要求をバーストで補う」という考え方になっています。
一方でv2は「小さいディスクでもベース性能が高い代わりに、ディスクサイズを大きくしても性能は伸びない。性能を伸ばすためには、IOPS・スループットを追加プロビジョニングしそこにコストが掛かる」という考え方になっています。
具体的にどう違うか、IOPSを例にとって見てみます。
v2はディスクサイズを変えても性能が一定のまま、v1はディスクサイズに合わせてIOPSが伸びてますね。しかしv2のIOPSの最大性能が圧倒的で、ココまで高性能を求めるならv2しかないなって感じです。(なお、v2も最大性能を引き出すのにある程度のディスクサイズが必要です)
次にディスクサイズが小さい範囲を拡大して見てみます。
v1のバースト性能とv2のベース性能があまり差がありません。特に小さいサイズのディスクでは、v2のベース<v1のバースト<v2の最大、という性能関係になるので、v1を使いたくなる要件はだいぶ限定的になりそうです。
ベース性能での価格比較・v1のバースト相当での価格比較
ディスクに性能を求めず、単純なディスクサイズだけで良い場合は単純な価格の比較を行います。
明らかに、v2の方が単位容量あたりの価格も安くなっていることが分かります。また、v1はメニューからサイズを選ぶ形式であるため、離散的。v2はGiB単位でサイズを指定できる形式のため連続的に見えているというのも大きな違いです。v1の場合は、例えば"513GiB"必要な場合でも"1024GiB"のP30ストレージをプロビジョニングする必要がありますので、無駄になるパターンが多く発生します。
よって、性能を求めない場合は、v2を選択するのが正解と断言して良いでしょう。
v1のベース相当、バースト相当での価格比較
さらに、バーストも含めて、v1相当の性能をv2で引き出すなら…という比較を行ってみます。
v1のバースト※は時間の制約があったり、バーストIOに対してお金が掛かる機能なので、本来は単純比較できません。
今回は「バースト込みのv1で賄えた処理を、v2でも実行できるようにする」という条件を想定し、バースト性能と同等の性能をv2でプロビジョニングする(≒保守的に見積もる)として考えます。
v1のベース性能相当にプロビジョニングした場合、基本的にv2がお得になっています。
v1のバースト性能相当にプロビジョニングした場合は、ディスクサイズが小さい時に限りv1の方がお得になります。
v1の「クレジットバースト」は、短時間(30分以内)のディスクバーストが無料で行える機能ですので、v1のメニュー体系(サイズ)にバッチリ合って、ディスクバーストをうまく使いこなしている場合のみv1の方がお得と言えます。
使いどころ
ということで、全体的にまとめると下記の方針になるのかなと思います。
v1に適した要求
・小さめ(1024GiB以下)でピッタリのサイズがあり、
・v2のベース性能では足りなくて、
・v1のバースト性能に収まり、v1のバースト可能な時間の範囲で処理が賄える場合
となかなか稀な場合だと思いますが、v1の方が適した(同じ性能を安く賄える場合)もありそうです。
v2に適した要求
・性能を求めずにサイズだけあればよい場合
又は
・そもそも要求性能が高く、v1では満たせない場合
その他はケースバイケースになってしまいますが、基本的には「必要なサイズ・IOPS・スループットを必要な分だけ用意できる」という点でv2に軍配が上がりそうです。v1が必要になるシーンは、非常に限定的、と思います。
注意点
最後に、v2の現時点での制約を確認します。
- Premium SSD v2 ディスクを OS ディスクとして使用することはできません。
- 現在、Premium SSD v2 ディスクはゾーン VM にのみ接続できます。
- 現時点では、スナップショットの作成はサポートされていません。また、別のディスクの種類のスナップショットから Premium SSD v2 を作成することはできません。
- 現在、Premium SSD v2 ディスクは、ホストでの暗号化が有効になっている VM に接続できません。
- Azure Disk Encryption は、Premium SSD v2 ディスクを搭載した VM ではサポートされていません。
- 現在、Premium SSD v2 ディスクは可用性セット内の VM に接続できません。
Azure Backup と Azure Site Recovery は、Premium SSD v2 ディスクを搭載した VM ではサポートされていません。
(引用元:Microsoft Learn)
ADEが出来ない、Azure Backupが使えない、スナップショットがサポートされていないなど、なかなか本番環境での実運用には厳しい条件が並んでいます。
また、対応リージョンについても現時点では
- 米国東部
- 西ヨーロッパ
ということで、東日本リージョンには対応していません。待ち遠しいですね~。
おわりに
Premium SSDのv1/v2の比較し整理しました。
ほとんどの場合、v2ストレージの方が良さそう、ということが見えましたが、残念ながらまだ東日本リージョンで使えない・運用制約があるなど我々日本のユーザーが使うにはもう少しかかりそうということが分かりました。
とはいえ、性能・仕様的にはとても良さそうですので、早く使えるようになると嬉しいですね。
今回は机上の仕様確認でしたが、実際のレイテンシや、操作上の制約が無いか?など実機で見てみないと分からないこともありますので、次回にでも試してみたいと思います。
Discussion