キーワードで検索

今日を知り、明日を変えるシステム運用メディア

【第3回】個人向け!貧乏エンジニアのAWS節約術 ─ EBSボリューム編

【第3回】個人向け!貧乏エンジニアのAWS節約術 ─ Amazon EBSボリューム編

クラウドが普及した昨今、勉強のため、スキルアップのため、クラウドを実際に触って色々と検証をしているITエンジニアの方も多いのではないでしょうか。

すぐに始めることができ、様々なサービスを試すことができるのはクラウドの利点です。しかし、複雑な料金体系や使ったリソースを放置して想定外の利用料を請求されたという方もいらっしゃると思います。

この記事は、個人のITエンジニアの方を対象に、クラウド利用量の節約術について、何回か回数を分けて紹介していきます。

今回は第3回ということで、より実践的なコスト節約術として、Amazon EBSボリュームのボリュームタイプ切り替えについて解説します。コスパよくクラウドを利用したい方は、ぜひ参考にしてください!

関連記事

Amazon EBSボリュームとは

Amazon EBSボリュームと聞いてもピンと来ない方のために、はじめにAmazon EBSボリュームをおさらいします。Amazon EBS(Amazon Elastic Block Store)ボリュームは、主にAmazon EC2インスタンスにアタッチして使用するストレージボリュームです。

新たにAmazon EC2インスタンスを起動する時、次のようにストレージを設定する項目があります。

Amazon EC2、ストレージを設定

これがAmazon EBSボリュームに関する設定であり、要するにEC2インスタンスのボリューム領域として利用できるブロックストレージがAmazon EBSボリュームです。

例えば、Windows Server 2022のECインスタンスに30GBのAmazon EBSボリュームを1個アタッチしている場合、OSからは次のように認識されます。

Amazon EBSボリューム、OSからの認識

この場合、Amazon EBSボリュームはオンプレミスでいうディスクに対応しており、アタッチするAmazon EBSボリュームを増やしていくと、ディスク1、ディスク2…と増えていくことになります。

このWindows Serverの場合、論理ボリューム(ディスク領域を論理的に分割した領域)で考えるとややこしく感じるかもしれませんが、Amazon EBSボリュームはCやDといったいわゆる論理ドライブと対応しているわけではないことに注意です。

Amazon EBSボリュームのコスト節約術とは?

このAmazon EBSボリュームに関するコスト節約術とは、ずばり「ボリュームタイプの最適化」です。ここでは、どのようなボリュームタイプがあるか簡単におさらいし、何をもってコストを節約するのかを説明します。

Amazon EBSボリュームタイプ

ボリュームタイプとして、次の7種類が用意されています(2024年12月06日時点)。

  • マグネティック(標準)
  • Cold HDD(sc1)
  • スループット最適化HDD(st1)
  • 汎用SSD(gp2)
  • 汎用SSD(gp3)
  • プロビジョンドIPOS SSD(io1)
  • プロビジョンドIPOS SSD(io2)

各ボリュームの種類について、興味がある方に向けて軽く特徴を紹介します。なお、今回は各ボリュームタイプについてそれぞれ解説したいわけではありません。


実はこれらボリュームタイプにおいて、明確に切り替えを推奨できるものがあります。それは、「汎用SSD(gp2)」であり、このボリュームタイプは「汎用SSD(gp3)」への切り替えを推奨します。

マグネティック(標準)

磁気ドライブを使用する旧世代のボリュームです。データへのアクセス頻度が低く、パフォーマンスを重視しない小規模なデータを扱うワークロードに適しています。

ボリュームあたりの最大IOPS数40~200 MiB I/O
ボリュームあたりの最大スループット40~90 MiB/秒
サイズ1 GiB~1 TiB

Cold HDD(sc1)

スループットの観点からパフォーマンスを定義する低コストのマグネティックストレージです。データへのアクセス頻度が低く、コストの削減が必要である場合に適しています。

ボリュームあたりの最大IOPS数250 MiB I/O
ボリュームあたりの最大スループット250 MiB/秒
サイズ125 GiB~16 TiB

スループット最適化HDD(st1)

スループットの観点からパフォーマンスを定義する低コストのマグネティックストレージです。Amazon EMR、Word、ETLデータウェアハウス、ログ処理などの大規模でシーケンシャルなワークロードに適しています。

ボリュームあたりの最大IOPS数500 MiB I/O
ボリュームあたりの最大スループット500 MiB/秒
サイズ125 GiB~16 TiB

汎用SSD(gp2)

スループットの観点からパフォーマンスを定義する低コストのマグネティックストレージです。Amazon EMR、Word、ETLデータウェアハウス、ログ処理などの大規模でシーケンシャルなワークロードに適しています。

ボリュームあたりの最大IOPS数16,000 (16 KiB I/O)
ボリュームあたりの最大スループット250 MiB/秒
サイズ1GiB – 16TiB

汎用SSD(gp3)

スループットの観点からパフォーマンスを定義する低コストのマグネティックストレージです。Amazon EMR、Word、ETLデータウェアハウス、ログ処理などの大規模でシーケンシャルなワークロードに適しています。

ボリュームあたりの最大IOPS数16,000 (64 KiB I/O)
ボリュームあたりの最大スループット1,000 MiB/秒
サイズ1GiB – 16TiB

プロビジョンドIPOS SSD(io1)

低レイテンシーを必要とするクリティカルでIOPS 集約型、スループット集約型のワークロード向けに設計されたストレージです。ストレージのパフォーマンスと一貫性に敏感なI/O 集約型ワークロード、特にデータベースワークロードのニーズを満たすように設計されています。

ボリュームあたりの最大IOPS数64,000 (16 KiB I/O)
ボリュームあたりの最大スループット1,000 MiB/秒
サイズ4GiB – 16TiB

プロビジョンドIPOS SSD(io2)

低レイテンシーを必要とするクリティカルでIOPS 集約型、スループット集約型のワークロード向けに設計されたストレージです。パフォーマンスを多用するミッションクリティカルなワークロードの実行に最適です。

ボリュームあたりの最大IOPS数256,000 (16 KiB I/O)
ボリュームあたりの最大スループット4,000 MiB/秒
サイズ4GiB – 64TiB

gp2とgp3の違い

gp2は2014年に低コストで高パフォーマンスなSSDボリュームタイプとして発表されましたが、1GBあたり3IOPSというように容量と性能をセットで提供する形です。
これにより、必要な性能を手に入れるために必要以上の容量を確保しなければならないケースもあり、余計な容量の分だけコストが掛かってしまう欠点がありました。

一方、gp3では容量と性能は独立しており、それぞれ分けて設定することが可能です。
しかも、gp3における無料のベースラインとされている性能は、大抵のアプリケーション要件を許容できます。そのため、同じ容量であればgp2と比較して最大20%のコスト削減を期待できます。無料のベースラインを超えた性能要件であっても、gp2と同一の要件であればコストを削減できるとされています。

参考情報として、gp2とgp3の比較表を掲載します。

ボリュームタイプgp2gp3
価格(USD/GB 月)0.120.096
ボリュームサイズ1GB ~ 16TB1GB ~ 16TB
最大IOPS/ ボリューム16,000IOPS最大16,000IOPS
無料ベースラインIOPS3IOPS/GB
最小1,000~最大3,000IOPS
3,000IOPS
ボリュームあたり
IOPSにかかる料金
個別の課金なし3,000を超える分は
Provisioned IOPSあたり
$0.006 月
最大スループット/ボリューム250MB/秒1,000MB/秒
無料ベースライン
スループット
128 ~ 250MB/秒125 MB/秒
ボリュームあたり
スループットにかかる料金
個別の課金なし125 MB/秒を超える分は
MB/秒あたり$0.048 月

gp2ボリュームをgp3ボリュームに切り替えよう

ここからは実践編として、gp2ボリュームをgp3ボリュームに切り替える手順を解説します。

gp2ボリュームの利用状況を確認

まずは、AWS環境でgp2ボリュームが利用されているかを確認しましょう。
実は、このシリーズの第2回で取り上げたAWS Cost Explorer を利用することで、gp2ボリュームの利用状況を簡単に把握することができるのです。

AWS Cost Explorerの基本的な操作については、第2回の記事をご参照ください。

1.AWS Cost Explorerを起動し、「フィルター」の「使用タイプグループ」をクリックしてプルダウンを展開します。

AWS Cost Explorer、使用タイプグループ

2.展開したプルダウンの選択肢より、「EC2: EBS – SSD(gp2)」のチェックボックスにチェックを入れ、「適用」をクリックします。

AWS Cost Explorer、EC2: EBS - SSD(gp2)

3.フィルターが適用されると、次のようにgp2ボリュームの数が「サービスカウント」にカウントされ、グラフ領域に反映されます。グラフが表示されない場合は、gp2ボリュームが存在しないということです)。
この画像の場合は、「サービスカウント」が1 と表示されているため、gp2ボリュームが1つ存在していることになります。

AWS Cost Explorer、サービスカウント

4.gp2ボリュームはEC2サービスの管理コンソールから確認できます。画面上部の検索バーに「ec2」と入力して検索し、検索結果より「EC2」サービスをクリックします。

AWS Cost Explorer、gp2ボリューム

5.EC2ダッシュボード画面が表示されるので、「ボリューム」をクリックします。

AWS Cost Explorer、ボリューム

6.「ボリューム」の一覧が表示され、「タイプ」列にてgp2ボリュームを特定できます。

AWS Cost Explorer、gp2

7.ボリュームのリストを右へスクロールすると、「アタッチされたリソース」列にて、gp2ボリュームがアタッチされているEC2インスタンスも確認できます。次の画像では、”test-windows-server01”というインスタンスにgp2ボリュームがアタッチされているということになります。

AWS Cost Explorer、アタッチされたリソース

gp3ボリューム切り替え前の確認

対象のgp2ボリュームを把握したので、次はgp3ボリュームへの切り替えを行うのですが、その前に確認すべきことがあります。

まずは、gp2ボリュームがアタッチされているインスタンスがElastic Volumesに対応しているインスタンスか確認しましょう。gp2ボリュームからgp3ボリュームへの切り替えは、Elastic Volumesに対応しているインスタンスであればオンライン(インスタンス実行中)状態で変更できるためです。
Elastic Volumesに対応しているインスタンスは次の通りです。

  • すべての現行世代のインスタンス
  • 旧世代のインスタンス(C1、C3、C4、G2、I2、M1、M3、M4、R3 およびR4)

Elastic Volumesに対応していないインスタンスでgp3への切り替えを行う場合は、オフライン(インスタンス停止)状態にしたうえで、以降で説明する切り替え手順を実施してください。

参考:Elastic Volumes がサポートされていない場合のEBS ボリュームの変更

切り替え前のバックアップ取得

切り替え作業前に、万が一の事態が起きた場合にリストアやロールバックできるようにバックアップを取得しておくことを強くお勧めします。
バックアップの方法は運用している環境のルールに従って選択してください。以降では、バックアップ手段の一例として、スナップショットを作成する手順を記載します。

1.「EC2」サービスのボリューム画面にて、リスト上で切り替え対象となるgp2ボリュームにチェックを入れます。その状態で、画面右上の「アクション」をクリックして展開し、「スナップショットの作成」をクリックします。

AWS Cost Explorer、スナップショットの作成

2.次に表示される画面にて、任意で「説明」や「タグ」の設定を行い、画面右下の「スナップショットの作成」をクリックします。

AWS Cost Explorer、スナップショットの作成

3.ボリュームの一覧画面に戻り、スナップショットが正常に作成された場合は次のようなメッセージが表示されます。

AWS Cost Explorer、スナップショットの作成(成功)

gp3ボリュームへの切り替え

切り替え作業は、「EC2」サービスのボリューム画面より実施します。

1.「EC2」サービスのボリューム画面にて、リスト上で切り替えたいgp2ボリュームにチェックを入れます。その状態で、画面右上の「アクション」をクリックして展開し、「ボリュームの変更」をクリックします。

AWS Cost Explorer、gp3ボリュームの切り替え

2.ボリュームの変更画面が表示され、「ボリュームタイプ」欄では「汎用SSD (gp2)」が選択されています。ボリュームタイプのプルダウンより、「汎用SSD (gp3)」に変更しましょう。

AWS Cost Explorer、汎用SSD (gp3)

3.ボリュームタイプを「汎用SSD (gp3)」に変更すると、設定項目がgp2の時と変わって「IOPS」と「スループット」が新たに設定項目として表示されます。gp2とgp3の違いについて先述しましたが、gp3は容量と性能が独立しているため性能の設定をカスタマイズできるようになったということです。

特にサイズや性能を変更する必要が無ければ、画面右下の「変更」をクリックします。

AWS Cost Explorer、IOPSとスループット

4.次のようにボリュームタイプの変更を実行しても良いか確認するポップアップが表示されるので、「変更」をクリックします。

AWS Cost Explorer、ボリュームタイプの変更を実行

4.ボリュームの一覧画面に戻り、次のメッセージが表示されます。
これは変更のリクエストが行われたことを意味し、実際に変更されるまでは数分掛かります。

AWS Cost Explorer、ボリュームタイプの変更を実行(成功)

5.少し時間を置いて、ボリュームの一覧画面の更新ボタンをクリックしてみます。
ボリュームの変更処理が完了すると、切り替えを実施したボリュームの「タイプ」列がgp3 に更新されます。

AWS Cost Explorer、ボリュームの変更処理が完了

スナップショットの削除

切り替えがうまくいくと、切り替え前に作成したスナップショットは不要になるかもしれません。Amazon EBSスナップショットも保存したままだとお金も掛かるので、不要であれば削除しましょう(動作を十分に確認した後に削除してください)。

1.「EC2」サービスのメニューより「スナップショット」をクリックします。

AWS Cost Explorer、スナップショット

2.スナップショットの一覧画面が表示されるので、リスト上で削除したいスナップショットにチェックを入れます。その状態で、画面右上の「アクション」をクリックして展開し、「スナップショットの削除」をクリックします。

AWS Cost Explorer、スナップショットの削除

3.次のようにスナップショットの削除を実行しても良いか確認するポップアップが表示されるので、入力欄に「削除」と入力し、右下にある「削除」をクリックします。

AWS Cost Explorer、スナップショットの削除(確認)

4.スナップショットの一覧画面に戻り、正常に削除が行われた場合は次のメッセージが表示されます。

AWS Cost Explorer、スナップショットの削除(完了)

さいごに

いかがでしたでしょうか。今回はAmazon EBSボリュームのコスト節約術と題して、gp2ボリュームからgp3ボリュームへの変更を取り上げてみました。

まず、AWS Cost Explorerを利用してgp2ボリュームの利用状況を可視化しました。前回の記事で説明したように、AWS Cost Explorerによる可視化はコスト最適化の基本であり、今後紹介する節約術においても度々利用することになるので、色々と触ってみて操作になれてみてください。

gp3ボリュームへの切り替えは、特に複雑な操作をする必要も無く、簡単なマウス操作で実施することができます。また、現行のインスタンスは基本的にElastic Volumesに対応しているため、オンライン状態での変更ができる点は、取り掛かり易い節約術といえます。

是非とも今回の記事を参考に、AWSコスト節約術を実践してみましょう。

関連記事

サーバエンジニア歴7年、ネットワークエンジニア歴4年。 長らくSI業界のインフラ部隊に勤め、基本設計から導入まで一通りの経験あり。

最新情報をお届けします!

最新のITトレンドやセキュリティ対策の情報を、メルマガでいち早く受け取りませんか?ぜひご登録ください

メルマガ登録

最新情報をお届けします!

最新のITトレンドやセキュリティ対策の情報を、メルマガでいち早く受け取りませんか?ぜひご登録ください

メルマガ登録