こんにちは。クラウドインテグレーション部の竹本です。
前回のre:Inventで発表されたAmazon EBSのgp3ボリュームを
ご提案する・採用いただく事例がかなり増えてきたように感じます。
gp3について既に昨年時点で弊社 @satakeの素晴らしい記事がありますが
よりライトなAWSユーザーの方々に向け、EC2を新規構築する際の
ボリュームタイプ検討シーンを想定しパフォーマンス・料金面の
違いについて簡単に解説してみたいと思います。(内容の重複が多くございます)
blog.serverworks.co.jp
ターゲットにしている想定読者
- はじめてgp3ボリュームの利用を検討される方
- いろいろ読んでみたけど、結局gp3にすると
どれぐらいメリットがあるのかピンとこない方
なお、既存環境に対するgp2からgp3への切り替えや、よりコスト削減にフォーカスした
内容を知りたいという方は、ぜひ上記の素晴らしい記事をご覧ください。
gp2について
gp3の紹介をする前に、まずはgp2のパフォーマンス・料金体系についておさらいします。
当記事の料金記載および試算は当記事執筆時点(2021/3/31)の東京リージョンでの
価格を前提としています。最新の価格は こちら よりご確認ください。
パフォーマンスについて
- プロビジョニングした容量に従ってIOPS・スループットが決定されます。
これらの値は既定の計算式に従い自動設定され、ユーザーによる変更はできません。 - gp2にはバーストクレジットがあります。
料金体系
- プロビジョニングした容量により1ヶ月あたりの料金が決まります。
執筆時点(2021/3/31)の東京リージョンの場合、1GBにつき0.12USDとなります。
これに対して、gp3ではこれらがどうなるかを見ていきます。
gp3について
パフォーマンスについて
- ボリュームサイズに関係なく、IOPS:3000、スループット:125MB/秒を
最低値として、静的な設定値をプロビジョニングすることが可能です。 - gp3にはバーストクレジットがありません。
静的な設定が可能になった点が大きく、また1TBに満たないボリュームであれば
ほとんどのケースで十分な最低値が設定されますね。
では、気になる価格面はどうなるかをみていきます。
料金体系
- プロビジョニングした容量により1ヶ月あたりの料金が決まる点は変わらず、
東京リージョンの場合、1GBにつき0.096USDとなります。 - 最低値であるIOPS:3000、スループット:125MB/秒を超えて設定した場合
設定した分だけ追加料金が発生します。(<おまけ>に詳細を記載しています)
追加パフォーマンスを設定しなかった場合、gp2と比較すると
料金について0.024USDお安く使えることがわかります。
もし1TB分のEBSボリュームを作成すると月額で24USD・年額で288USDの
コスト差が出ると考えると、シンプルにこの価格差は大きいですね!
パフォーマンスとコストの試算比較
より具体的な比較をするため、いくつかの容量パターンを例に
月額料金を試算してみます。まずはgp2の試算パターンです。
gp2の試算
容量 | IOPS | スルー プット |
月額 | 備考 |
---|---|---|---|---|
200GB(gp2) | 600 | 150(MB/s) | $24 | ー |
500GB(gp2) | 1500 | 250(MB/s) | $60 | スループットの最大値は250(MB/s) |
1000GB(gp2) | 3000 | 250(MB/s) | $120 | スループットの最大値は250(MB/s) |
2000GB(gp2) | 6000 | 250 (MB/s) | $240 | スループットの最大値は250(MB/s) |
※ gp2ではボリューム 334GiBを境にスループットが上限値250MB/sに達し、
上記以上のボリュームで作成された際のスループットは250MB/sとなります。
gp3の試算
続いて、gp3の場合の試算です。
前述の通り、静的な設定値をプロビジョニングすることが可能ですので
- 無料枠の範囲で設定した場合
- gp2で構築時に自動設定される値に見合う形で設定した場合
のそれぞれ2パターンについて容量ごとに記載します。
容量 | IOPS | スルー プット |
月額 | gp2選択時との パフォーマンス 比較(※) |
備考 |
---|---|---|---|---|---|
200GB (gp3) | 3000 | 125(MB/s) | $19.2 | △ | 最低ラインでの試算 |
200GB (gp3) | 3000 | 150(MB/s) | $20.4 | ◯ | gp2に見劣りしないよう スループットを設定 する場合 |
500GB (gp3) | 3000 | 125(MB/s) | $48 | × | 最低ラインでの試算 |
500GB (gp3) | 3000 | 250(MB/s) | $54 | ◯ | gp2に見劣りしないよう スループットを設定 する場合 |
1000GB (gp3) | 3000 | 125(MB/s) | $96 | × | 最低ラインでの試算 |
1000GB (gp3) | 3000 | 250(MB/s) | $102 | ◯ | gp2に見劣りしないよう スループットを設定 する場合 |
2000GB (gp3) | 3000 | 125(MB/s) | $192 | × | 最低ラインでの試算 |
2000GB (gp3) | 6000 | 250(MB/s) | $216 | ◯ | gp2に見劣りしないよう IOPS / スループットを 設定する場合 |
※ ◯・・・同等、△・・・やや劣る、×・・・大きく劣る
ご注意いただきたいのは、上記の表ではあくまで『gp2選択時と比較した場合』を
切り口とした性能比較となります。
本来は想定するワークロードをベースに設定値を検討するべきで
たとえば小規模なシステムだったりそもそもディスクI/Oをそれほど必要としない
ワークロードなど、無料枠内の125MB/s あれば十分なケースも多く存在します。
また同じく弊社 @satakeの別記事内の記載通り、
AWS Compute Optimizerによりパフォーマンスの過不足を確認し、
IOPS・スループットの設定値を調整するアプローチが良さそうです。
blog.serverworks.co.jp
まとめ
いかがでしたでしょうか。恥ずかしながら私は、上記の価格比較を表にしてはじめて
gp3の良さを実感しました。AWSはアップデートが多くキャッチアップが大変な面も
ありますが、これまでより安く利用できるようになるアップデートには胸が躍りますね。
おまけ
あまりにも同僚のブログを焼き直しただけのように思えてならないため、上記表の料金計算についてもう少し補足します。
例としてIOPSを 6000 ・スループットを 250 (MB/秒) にて 2000GB (gp3)ボリュームを作成すると仮定します。
ストレージ課金はgp2 と同様の試算方法にて料金体系にもとづき以下の試算となります。
2000 (GB) * 0.096 (USD/GB 月) = $ 192 ・・・・・(1)
加えて、無料分を超えてプロビジョニングするIOPS および スループットの課金は
以下の通りです。
IOPS
上記の通り 3,000 IOPS 分は無料であり、6000 IOPSから無料分を超える分については料金体系に基づく課金が発生します。
{ (設定するIOPS) - (IOPS無料分) } * (無料分を超える分に課金される1 か月あたりの料金)
= (6000 - 3000) * 0.006
= 3000 (GB) * 0.006 (USD/GB 月) = $ 18 ・・・・・(2)
スループット
IOPSと同じ要領で、無料分の 125 MB/秒 を超える分について料金体系に基づく課金が発生します。
{ (設定するスループット) - (スループット無料分) } * (無料分を超える分に課金される1 か月あたりの料金)
= ( 250 - 125 ) * 0.048
= 125 (MB/秒) * 0.048 (USD/GB 月) = $ 6 ・・・・・(3)
したがって、今回の試算例にかかる 1ヶ月あたりの料金は
(1)、(2)、(3) をそれぞれ加えた $ 216 ということになります。
竹本 佳史 (執筆記事の一覧)
インターナルエデュケーション課所属。
エンタープライズの企業様向けに幅広くAWS活用の技術的なご支援をしてきました。今はサーバーワークスのエンジニアが顧客の期待に応え続けられるための仕組みを設計しています。
2020-2023 AWS All Certifications Engineersに選出。