はじめに
普段、なんとなく理解している使っているEC2の料金モデルについて言語化して備忘録としてまとめてみました。
AWS認定試験でも役立つと思うので、よろしければお読みください!
※当記事ではふわっと説明しています
※もし間違っていたら教えてください🙇♂️🙇♂️🙇♂️
この記事のターゲット
- AWSの有名なサービス(EC2やS3)がふわっとわかってるレベルの人
- AWS認定試験のプラクティショナーを勉強している人
そもそもEC2における料金モデルとは?
EC2を利用する場合、基本的にはインスタンスを起動している時間に応じて料金がかかる仕組みになっていると思いますが、その仕組みを料金モデルと呼びます。
※今回はEC2インスタンスの利用料金自体に着目しますので、EBS等は対象外です
一般的な料金モデル一覧
1.オンデマンドインスタンス
-
特徴
- 先ほど記載した、「インスタンスを起動している時間に応じて料金がかかる」料金モデルのことを、「オンデマンドインスタンス」と呼び、最も基本的な料金モデルです
- 特に設定をしない限りは、この料金モデルが適用されます
-
使用例
- 短期間の使用しかしなかったり、負荷の予測が立てられない場合
- 開発環境用
- 踏み台
- アクセス数がわからないWebサイト(リリース直後だけ)
- 短期間の使用しかしなかったり、負荷の予測が立てられない場合
-
コスト
- 他の料金モデルと比べるとやや高め(割引とかがない)
- ただし、ほとんど使わない等の理由であれば結果的に一番安くなる
2.リザーブドインスタンス
-
特徴
- 1年または3年の期間分の使用料を前払いすることでEC2インスタンスを利用できる料金モデル
-
コスト
- オンデマンドインスタンスと比べ、コスト面は安くなっている
- 一応前払いでないのも含め、他にも支払い方法はあるが、前払いが一番安い
-
使用例
- 事前にEC2の一定期間の使用が見込めている場合
-
注意事項
- オンデマンドインスタンスと違い、インスタンスを停止していても料金に影響がない
- インスタンスのスペックを変更する場合、再予約が必要になる
3.スポットインスタンス
-
特徴
- EC2インスタンスは、超簡単に言うと基本的にはAWSの物理的なサーバ上を内部でいくつかに区切り、その1つをインスタンスとして提供しているが、その中で現在使用されていない部分を使用できる料金形態
- ただし、見知らぬ誰かがその部分を使用することになった場合、使用が中断される(一応2分前に警告が来る)
- 設定すれば、使用が中断された際にインスタンスは終了ではなく停止になる
-
コスト
- オンデマンドインスタンスより、超安く利用できる
-
使用例
- 負荷が高いような処理の中でも、中断されても良いような処理を任せたい場合
- 機械学習のトレーニング、バッチ処理等
- 負荷が高いような処理の中でも、中断されても良いような処理を任せたい場合
-
注意事項
- 上記の通り、EC2インスタンス使用中に中断させられる可能性がある
ちょっと特別なインスタンス
1. 専有ホスト
-
特徴
- AWSの物理的なサーバ(以下、ホスト)を丸っと借りてしまう料金モデル
- 丸っとかりてしまうため、他の人とホストを共有しない
- ホスト事態が固定 = ホストのスペックが固定されるので、ユーザが用意したソフトウェアライセンスを使用できる
- 代表例だとWindowsServerとか
-
コスト
- ホストを占有するだけあって、めっちゃ高い
-
使用例
- 金融機関や医療機関等、情報の取り扱いが難しい案件
-
注意事項
- ホストに対しての管理はユーザがやらなければならない
- 例えば、複数のインスタンスをたてる場合、ホストのリソースに対してどのインスタンスタイプをどのくらい割り当てるか…等
2.専有インスタンス
-
特徴
- ホストを丸っと借りてしまう料金モデル。ただし、こちらは専有ホストと違ってホストのリソース管理はAWSが行う
- ほかの人とホストを占有しない点は、専有ホストと同じだが、ホストのリソース管理をしなくてよい
- インスタンスに適したホストのリソース管理をしてくれる
- ホストのスペックは固定されないので、ユーザが用意したソフトウェアライセンスを使用できないor使用にむかない
-
コスト
- 専有サーバより安く利用できる
-
使用例
- 案件のコンプライアンス的に専有サーバを利用したいが、そこまで規模が大きくない場合やホスト管理が必要ない場合
- スケールアウトが必要な場合