2019/11/7に、AWSからSaving Plansという新しいAWS利用料節約のための価格モデルが登場しました。
このSaving Plansについて調べてみました。
(そもそも) オンデマンドとは
そもそも、AWSの利用料は通常オンデマンド (使った分だけお支払い) です。
オンデマンドで利用料を支払うことが適した場面は以下の通りでした。
- 短期的に利用する場面
- スパイクが発生し、リソースの使用量の予測が難しいワークロード
- 開発環境
- テスト環境
これらの環境ではオンデマンドで利用料を支払うことが適しています。
リザーブドインスタンスとは
オンデマンドに対し、リザーブドインスタンス (RI) があります。
以下で示すように、リザーブドインスタンスを購入すると、大幅に利用料を削減できます。
- 1年間または3年間の利用料を前払いする代わりにコスト削減
- 最大でオンデマンドから7割以上も削減
リザーブドインスタンスは、オンデマンドとは異なり、定常的に利用する場合には積極的に活用すべきものです。
2016年にはリージョンRI、2016年にはコンバーティブル(変更可能)RIが登場し、選択肢も増えています。
また、Linuxインスタンスにおいては、大きなインスタンスサイズのRIに対し、複数の小さなインスタンスサイズのRIを適用できるなど、柔軟に適用してコスト削減が可能となります。
新たに登場したSaving Plansとは
従来存在していたこれらの支払い方法に加えて、今回、新たにSaving Plansが加わりました。
New – Savings Plans for AWS Compute Services
https://aws.amazon.com/jp/blogs/aws/new-savings-plans-for-aws-compute-services/
ドキュメントの解説に基づき、特徴を整理してみました。
(1) Saving Plansの特徴
概要
- EC2とFargateの利用料を最大で72%削減できます。
- 1年間または3年間、一定の利用料をコミットするだけで、その利用料に対して割引を適用します。
- 例えば、10 USD / 時間 をコミットすると、その利用料に対して割引が適用されます。
雑な意訳: 「これだけの利用料になる予定です!と宣言すれば、前払いと引き換えに割引を適用してもらえる」
仕組み
- EC2とFargateの全てのタイプのコンピューティングに、オンデマンド料金に加え、Saving Plans料金が適用できます。
- 例えば、Saving Plansで10 USD / 時間 をコミットすると、10 USDまではSaving Plansが適用され、コミットメントを超えた利用料については、オンデマンドでの支払いとなります。
(2) Saving Plansを選ぶメリット
Saving Plansには、以下に示すように、オンデマンドやリザーブドインスタンスとは異なる特徴があります。
- 要件が変わっても、同じ利用料のコミットメントで、対象となるAWSリソース全てに適用される
- Fargateにも適用される
また、Saving PlansにはCompute Saving PlansとEC2 Instance Saving Plansの2種類の価格モデルがあります。
(3) 2種類の価格モデル
Compute Saving Plans
最も柔軟性のあるモデルで、コンバーティブルRIと同じ料率で、最大66%の値引きが提供されます。
例えば、以下のように、変更が行われたとしてもリザーブドインスタンスのようにプラン変更や買い直しをする必要はなくなります。
- インスタンスファミリーをc5からm5に変更しても適用が続く
- リージョンをシンガポールからロンドンに変更しても適用が続く
- OSをWindowsからLinuxに変更しても適用が続く
- テナンシーをデフォルトから専有に変更しても適用が続く
- EC2からFargateに移行しても適用が続く
上記の通りインスタンスファミリーにもOS種別にも依存しない買い方となりますので、もはやコンバーティブルRIを買うくらいなら、Saving Plansで購入すべきと言えます。
上記のように1時間あたりの利用料を指定すると、1年間または3年間のコストが見積もられますので、表示された料金を支払うという形になります。
EC2 Instance Saving Plans
選択したリージョンでしか適用できませんが、選択したインスタンスファミリー (例: c5やm5) などで、スタンダードRIと同様に最大72%の値引きが提供されます。
こちらは名の通り、EC2にしか適用されず、Fargateは対象外です。
以下のような場面で選択すべきと言えます。
- 同じインスタンスファミリーを使い続ける
- 例: m5.largeからm5.xlarge、m5.2xlarge・・・と変更する予定はあるが、c5には変更予定がない
Compute Saving Plansに比べて、利用量に加えてリージョンとインススタンスファミリーなどを選択する必要があります。
実際の画面を見てみましょう。
一瞬、リザーブドインスタンスと何が違うのかと戸惑いそうですが、違いは以下です。
- EC2のリザーブドインスタンスは台数、インスタンスサイズ、OS、テナンシーを指定し適用する
- EC2 Instance Saving Plansは利用料とインスタンスファミリーを指定し、台数、インスタンスサイズ、OS、テナンシーに関係なく適用される
リザーブドインスタンスとSaving Plansの比較
これまでに書いたように、Saving Plansでは、リザーブドインスタンスの全ての利点を含みながら、柔軟性が向上します。
何よりも、管理負荷が劇的に下がります。
より具体的にリザーブドインスタンスとSaving Plansを比較してみました。
Compute Saving Plans | EC2 Instance Saving Plans | コンバーティブルRI(注1) | スタンダードRI | |
---|---|---|---|---|
割引率 | 最大66% | 最大72% | 最大66% | 最大72% |
AWS利用料を指定して大幅割引 | ○ | ○ | × | × |
どのインスタンスファミリーであっても自動的に割引 | ○ | × | × | × |
どのインスタンスサイズであっても自動的に割引 | ○ | ○ | ×(注2) | ×(注2) |
どのテナンシーやOSであっても自動的に割引 | ○ | ○ | × | × |
どのリージョンであっても自動的に割引 | ○ | × | × | × |
Fargateでも割引 | ○ | × | × | × |
1年間または3年間の期間指定 | ○ | ○ | ○ | ○ |
(注1) コンバーティブルRIはインスタンスファミリー、インスタンスサイズ、OS、テナンシー間で変更可能ですが、手動で切り替える必要があります。
(注2) リージョナルコンバーティブルRIと、リージョナルスタンダードRIには、インスタンスの柔軟性があります。
Saving Plansの適用方法
実態に即して時間あたりの利用料を見積もりながら購入するには、Saving Plansの推奨事項を確認します。
まずは、AWS Cost ExplorerでSaving Plansの推奨事項を確認します。
※引用: https://aws.amazon.com/jp/blogs/aws/new-savings-plans-for-aws-compute-services/
次に、各自のニーズに応じて推奨事項に基づき購入プランをカスタマイズしていきます。
例えば、Saving Plansのタイプをどうするか、支払い期間をどうするかといったことを検討します。
検討が終わったら、時間単位のコミットメントを確認し、カートに追加します。
リザーブドインスタンスの方が良いことはあるのか?
EC2においては、Saving Plansにはキャパシティ予約がありませんので、起動が保証されません。
ただし、オンデマンドキャパシティ予約によってクリアできますので、あわせ技でリザーブドインスタンスと同じメリットを得られます。
Saving Plansの注意事項
- Organizationsのメンバーアカウントでは、AWSマネジメントコンソール上で「現時点では、リンクされたアカウントの Savings Plan に関する推奨事項をご利用できません。Savings Plan の推奨事項については、支払者にお問い合わせください。」と表示され、推奨事項を見ることができません。
- AWS CLIであれば、推奨事項を表示できます。
- リザーブドインスタンスと同様に、請求ファミリー間で割引の共有が可能ですが、リザーブドインスタンスとSaving Plansの共有はセットになっており、例えばリザーブドインスタンスだけは共有するがSaving Plansは共有しないといった設定はできないようです。
- リザーブドインスタンスからSaving Plansへの変更はできず、逆も不可能です。
まとめ
- Saving Plansとは特定のインスタンスの構成によらず、AWS利用料のコミットメントをすることで、EC2のリザーブドインスタンスと全く同率の割引をする新しい料金モデルです。
- EC2だけでなく、Fargateにも適用できます。
- 2種類のSaving Plansがあります。
- Compute Saving Plans: EC2とFargateに適用でき、リージョンに依存しない。コンバーティブルRIと同じ料率。
- EC2 Instance Saving Plans: EC2のみ適用でき、選択したリージョンの選択したインスタンスファミリーに割引が適用。スタンダードRIと同じ料率。
- 全てのAWSリージョン (北京と寧夏を除く) と、AWS GovCloud (米国) で利用可能。
- AWS Cost Explorerで過去7日間、過去30日間、過去60日間の使用履歴に基づき、推奨事項を確認可能。
- EC2において、Saving Plansは従来のEC2 RIの利点を全て含んでいます。
参考文献
AWS Documentation » Savings Plans
https://docs.aws.amazon.com/savingsplans/latest/userguide/what-is-savings-plans.html