新しいEBS(sc1,st1)を導入するにあたってハマりそうなポイントをまとめてみた

記事タイトルとURLをコピーする

お久しぶりです。プロジェクトマネージャーのがんも(佐竹)です。皆様GWはいかがお過ごしでしたでしょうか!?
なんと、1年ぶりのブログ登場です!
本日は、最近リリースのあった新しいEBSについてお伝え致します。

Amazon_EBS

今回は以下の流れでお伝えします。

新しいEBSの紹介

2016年4月20日に、EC2インスタンスやAmazon EMRクラスタと組み合わせて使用が可能な、新しいボリュームタイプとして以下の2つがリリースされました。

Type 名称 利用目的 価格(東京) ボリューム毎の最大スループット
st1 スループット最適化HDD シーケンシャルな処理が必要とされる場面で、高スループットが求められる場合に有効なHDD $0.054/GiB 500 MB/s
sc1 コールドHDD 同様の場面だが、アクセス頻度は高くない場合によりコストメリットが高いHDD $0.030/GiB 250 MB/s

ここでまず注目して頂きたいのは、新しいストレージはHDDということです。
そのため、SSDであるgp2等と比較し、コスト効率が高く安価であるということがメリットとなっています。

これは、ここ最近台頭してきているビッグデータでの処理、つまりシーケンシャルなアクセスの必要性が高まっていることに対して
「より安くそれを実施することができるか?」というAWSが自身に突きつけた問いに対する回答、となっています。

以下のAWS公式ブログも是非合わせてお読み頂き、その経緯についてご理解頂けたら幸いです。

ちなみにですが、これらの新しいEBS Volume Typeはそれぞれバーストが可能です。
Volume毎の最大スループットを超えることは不可能ですがst1はTB あたり最大 250 MB/秒のバーストが(2TBで最大)、sc1はTB あたり最大 80 MB/秒のバーストが(3.125TBで最大)可能となっています。

新しいEBSのハマりそうなポイント

ハマりそうなポイントを以下の通り順に紹介します。

  1. HDDであること
  2. 容量制限
  3. Root Volumeには指定できない
  4. カリキュレータにまだ反映されていない

HDDであること

上にも記載しましたが改めて記載します。新しいEBS Volumeの各TypeはどちらもHDDです

ここは非常に重要な点です。
この2つはあくまでHDDですから、ランダムアクセスが有効な場面、特にOracleやSQL Server等RDBをon EC2で利用されるようなケースには不向きです。

利用シーンを間違えると思っていたような効果は発揮できませんので、気を付けてくださいね。

容量制限

新しいEBSの各Typeは、もとは唯一のHDDであった「Magnetic」に存在していた1024GiBの容量制限が撤廃されました。

Mgn 

↑の図の通り、Magneticは1024GiBが最大サイズです。
SSDであるgp2は既に最大16TBにて作成が可能なため、大きなEBS Volumeでは今までgp2一択でした。

そして、今回登場した各HDDのEBS Volumeはそれぞれ16TB(正確には16384GiB)まで選択が可能となっています。
これは素晴らしい変化ですね!

ただし気を付けないといけないことがあります。それは、

st1

↑のst1、

sc1

↑のsc1共に、最小が 500GiBからなのです。

「何故!?1GiBから作成させてくださいよ!」と思ったのですが、
それは「今後に期待する」として、今現在は 500GiBからしか作成できない点に注意し利用したいと思います。

Root Volumeには指定できない

これはInstance構築時の話となるのですが、Instanceを新規にLaunchする時点で、Root Volumeとしては指定できませんので注意が必要です。

AddStorage

↑の図の通り、マネジメントコンソールでVolume Typeを一覧から選択しようとすると、今回の新しい各Volume Typeは選択ができない状態です。

AddStorage2

もちろん、Root以外では利用可能です。
※但しMinが500GiBからですので、デフォルトで500がSizeに指定されます

「何故Rootに利用できないという制御がかかっているか?」について考えてみたのですが、これは
「シーケンシャルな読み書きが無いであろうルートドライブに利用すると、OS自体の速度が劣化して使い物にならない可能性を排除する」
というのが1つ。もう1つ思いついたのが、
「500GiBからしか使えないので、Rootにそこまで巨大なVolumeがいらないであろうから除外した」
という、これら2つです。
これは私個人の意見ですので真相は不明ですが、ともかく現状はRootには指定して利用できない状況となっております。

カリキュレータにまだ反映されていない

AWS SIMPLE MONTHLY CALCULATORはコストを見積もるのになかなか便利なツールなのですが、
2016年5月2日現在は未だst1もsc1も項目がありません。

SMC

こちらは、首を長くしてアップデートを待ちましょう・・・。
早く反映されると良いですね('ω')

Magneticとsc1のコスト比較

ここで質問です。
「とにかく安くEBS Volumeを利用したい!速度は優先しなくていい、とにかく安く!」
という要望があったとします。この場合、どのEBS Volumeを推奨すればいいでしょうか?

先に少々おさらいです。

  • Magneticは1~1024GiBまで指定できます。$0.08/GiBのお値段です(IOPSは一旦無視)
  • sc1はMin 500GiBからしか指定できません。しかし$0.03/GiBとお安くなっています

という状況です。

つまり答えは・・・
「sc1のMin 500GiBで作成した利用料以下となるようにMagneticでEBS Volumeを作成する場合は、Magneticの方が安い」
となります。具体的に数字で見てみましょう。

まずは、sc1をMinで利用した場合の月あたりのお値段を計算してみましょう。

  • $0.03 × 500 = $15.0

ですね。簡単です。これを先ほどの答えにあてはめますと、

「$15.0以下の利用料ならMagneticの方が安い」

となります。具体的に見てみましょう。
もし、お客様が50GiBの容量をお求めなら、 0.08×50で、$4.0 しかかかりません。

これだと、Magneticのほうが良いですね。
しかし、200GiBだとどうでしょう?

200GiBだと、$16.0となり、$15.0を超えます
さて、どこに均衡点があるでしょうか?

  • 500GiB × 0.03/0.08 = 187.5 GiB

ということで、187.5GiBでコストは釣り合うことがわかります。

よって、最終回答は、
「187.5GiBの容量未満ならMagneticの方が安いが、これ以上ならsc1の方が安い」
※つまり、不要でもsc1で500GiB確保してしまった方がコストメリットが出る
となります。

今回MagneticにかかるIOPSの利用料は無視しておりますので、実際は150GiBくらいでも釣り合うのではないでしょうか?
今後、「遅くても良い、とにかく安く利用したい」とお客様からご要望を頂いた場合は、容量を起点にして見積もりできたらと思います。

その他気になった点

AWSの公式Pricingページから、Magneticが消えています

AWS_EBS_Pricing_20160502

Magneticはどこに行ってしまったのでしょうか?解雇でしょうか?実はかなり下の方に

>EBS マグネティックをお探しの場合は、旧世代のボリュームページをご覧ください。

と記載があるのです。こちらに記載が残っています。
※価格はUS Regionのもののみ記載されています

うーん・・・旧世代扱いとは。
さすがに「Magneticはもはや古い」のでしょうね。

まとめ

今回、新しく追加されたEBS Volumeの各Typeごとのご紹介をさせて頂きました。
またそれに合わせてハマりそうなポイントも紹介しております。

AWSは新しい機能が次々と追加されていくのですが、その反面
「いきなり使おうとするとどこかしらでハマりそうになる」こともしばしば見受けられるかと思います。

この記事を読んだ方が少しでもハマらなくAWSが利用できるようになることを祈っております。

それでは、またお会いしましょう!

佐竹 陽一 (Yoichi Satake) エンジニアブログの記事一覧はコチラ

マネージドサービス部所属。AWS資格全冠。2010年1月からAWSを利用してきています。2021-2022 AWS Ambassadors/2023-2024 Japan AWS Top Engineers/2020-2024 All Certifications Engineers。AWSのコスト削減、最適化を得意としています。