
in-console AWS Pricing CalculatorでSPの見積もりをしてみた
お疲れさまです。とーちです。
先日、新しいPricing Calculatorである「in-console AWS Pricing Calculator」についての記事を書きました。
in-console AWS Pricing Calculatorで作成できる見積もりはワークロード見積もりと請求見積もりの2種類があるのですが、上記の記事ではワークロード見積もりについて記載しました。今回の記事では請求見積もりを試してみます。
ワークロード見積もりと請求見積もりの違い
試す前にワークロード見積もりと請求見積もりの違いや使い所について説明しておきましょう。
誰が利用できるか(アカウントタイプ)
ワークロード見積もりは、全てのアカウントタイプ※で利用可能です。
※スタンドアロンアカウント(組織に属さない単独アカウント)、Organizationsの管理アカウント、Organizationsのメンバーアカウント
これに対し、請求見積もりは、Organizationsの管理アカウントまたはスタンドアロンアカウントのユーザーのみが利用できます。
何を見積もるか(対象範囲)
ワークロード見積もりは、特定のワークロード、アプリケーション、リソース、またはアーキテクチャの変更に伴うコストを見積もることができます。例えば、新しいアプリケーションをAWS上にデプロイする際の費用を知りたい場合に利用します。従来のPricing Calculatorのユースケースと近いと思います。
請求見積もりは、新しい利用状況や既存のRI/SPに対して変更を適用した場合のコストを見積もることができます。現状のコストからどのくらい差分が発生するかを見るのが基本的な使い方になります。
既存の利用状況の扱い方の違い
ワークロード見積もりでは、任意の期間の既存利用コストを見積もり項目として追加することができます。
これに対し、請求見積もりでは同様に既存利用状況を追加することはできますが、その扱いはワークロード見積もりとは異なります。また期間は選べず、先月の一ヶ月間(ドキュメント上は先月と記載があるが実際には先々月が対象となることもありました)で固定となります。
なお、請求見積もりにおける既存利用状況の追加については、その必要性や活用方法が明確ではない部分があります。後ほど説明しますが、実際に既存利用状況で追加された項目を編集してもレポートには反映されなかったため、この機能の具体的な用途については今後の検証が必要そうです。
「RI/SP(コミットメント)」をどう扱うか
ワークロード見積もりでは、RI/SPの追加はできませんが、ワークロード見積もり作成時の「料金を選択」で「After discounts and commitments」を選択することで既存のRI/SPの割引を考慮した金額で見積もりが作成されます。
請求見積もりは、既存のRI/SPを自動的に含んで計算します。さらに、新しいRI/SPの導入や、既存のRI/SPを除外した場合のコスト影響をシミュレーションできます。例えば、「新しいSavings Plansを導入したら、組織全体の請求額がいくらになるか」や、「あるReserved Instanceの契約を解除したら、全体の費用はどう変わるか」といった算出が可能です。
料金
ワークロード見積もりは、無料で利用できます。
請求見積もりは、1ヶ月あたり5回まで無料です。それを超えると、1回あたり2ドルかかります。
違いのまとめ
表で簡単にまとめると以下のようになります。
特徴 | ワークロード見積もり | 請求見積もり |
---|---|---|
見積もりの対象 | 特定のワークロード、アプリケーション、リソース、またはアーキテクチャ変更のコスト | 新しい利用状況や既存のRI/SPに対する変更を適用した場合のコスト(現状からの差分) |
利用できるアカウント | 全てのアカウントタイプ(スタンドアロン、管理アカウント、メンバーアカウント) | 管理アカウントまたはスタンドアロンアカウントのみ |
既存の利用状況の扱い | 任意の期間の既存利用コストを見積もり項目として追加可能 | 先月の一ヶ月間の既存利用状況を追加可能(期間は固定、ただし追加の目的や効果は不明確) |
コミットメントの扱い | RI/SPの追加はできないが、「After discounts and commitments」選択で既存RI/SPの割引を考慮した見積もり作成が可能 | 既存のRI/SPを自動的に含んで計算し、新しいRI/SPの導入や既存RI/SPの除外によるコスト影響をシミュレーション可能 |
料金 | 無料 | 月5回まで無料、以降1回2ドル |
やってみた
それでは請求見積もりを作ってみましょう。今回はOrganizationsの組織アカウントから作業しています。
請求見積もりの作成フロー
先に流れを説明しておくと、以下のような流れで見積もりを作成します。
- 請求シナリオを作成
- 請求シナリオで追加するリソース等を「使用法」に追加
- 請求シナリオで必要に応じて新規購入するRI/SPを追加
- 請求シナリオで「レポートを作成」ボタンを押してレポート作成(20分〜8時間ほどかかる)
- 作成されたレポートを見ると既存利用状況からの差分コスト(見積もり)が確認できる
請求シナリオの作成
マネージメントコンソールから「請求とコスト管理」の画面に行き、請求シナリオを作成を押します。
適当なシナリオ名を入力します。
以下のような画面が表示されます。基本的にはワークロード見積もりと似た構成になっていますが、「Savings Plans」や「リザーブドインスタンス」という項目があるのが特徴です。
使用法の追加
使用法のところで「追加」を押すと、ワークロード見積もりと同様に3種類の方法で使用法を追加できます。
既存使用履歴の追加
「マイアカウントの使用履歴」を選択して、既存の使用状況を追加してみます。下記の画面の通り、ワークロード見積もりでは使用履歴の期間を選択出来ましたが、請求見積もりでは固定となっています。また、「使用法を絞り込み」の項目で「アカウント」を選ぶとOrganizations組織配下のアカウントが全て表示されました。
試しにLogArchiveを選択して追加してみると、以下のようにLogArchiveアカウントの全リージョン分の使用状況の情報が追加されました。
注意点ですが、ワークロード見積もりではこのように追加された既存使用状況の項目は全て見積もり項目という扱いでした。そのため、最終的にCSV等でエクスポートする際にも料金項目として記載されていましたが、請求見積もりではあくまでも既存の状況からの差分を見積もりとして表示するので、ここに追加しただけでは最終的なレポートには項目としては出てきません。(追加された項目を編集するとレポートにも反映されるかと思ったのですが、反映されませんでした。謎です。)
新規リソースの追加
新規でリソースを追加してみます。
EC2インスタンスを追加しました。
サービスを選んだ後にそのサービスの使用量などの詳細を入力します。「縮約設定」という項目がありますが、こちらはAPN1-BoxUsage:c5n.4xlarge
などのUsageTypeを一つずつ選択して値を入力していく方式なので、「ガイド付き設定」で入力していったほうが良いと思います。ガイド付き設定ではテンプレートを選択することで入力項目が表示されます。
EC2インスタンスを以下のようなリソース量で入力し追加しました。このほかにEBSも追加しています。
新規で追加されたリソースは以下のように「新規」というステータスで表示されます。
Savings Plansの追加
また上記に対応するSavings Plansも追加します。上記ではc7i.16xlargeを3台、一ヶ月毎日稼働させるようにしていますが、このうちの2台分をSPで購入しようと思います。
Compute Savings Plansの料金ページを確認すると、c7i.16xlargeのCompute Savings Plansの時間単価は約$2.54738/hourとなっています。
まずは「Savings Plansの追加」を押します。
Compute Savings PlansかInstance Savings Plansかを選択する画面がでるので、Compute Savings Plansを選択します。
元の画面に戻り、行が追加されるので追加された行を選択して編集を押します。
コミットメント金額(時間単価$2.54738 × 2台 = $5.09476/hour)を入力して設定を押します。
これでSPも追加されました。
レポートの生成
一通り追加したのでレポートを出力します。
適当なレポート名をつけ保存を押すとレポートの生成が開始されます。
このレポートの生成が20分から8時間かかるとのことなので、待ちましょう。
流石に8時間はかかりませんでしたが、30分くらい待ったあとレポート作成が完了しました。レポートは以下をクリックすることで見れます。
生成されたレポートの見方
生成されたレポートについて重要な部分だけをOrganizationsを使用している前提で説明していきます。公式ドキュメントのこのページには全項目の説明があるのでこちらも参考にしてください。
Bill Impact
Total historical bill:Organizations全体の税引き前の一ヶ月分のコストです。これは請求シナリオで「既存使用状況の項目」を追加していたかどうかとは関係なく必ず組織全体の現状かかっている総コストが表示されます。
以下の請求書で見られるコストとほぼ一致しているはずです。
純増額:こちらが今回の見積もりにより増えたコストを表しています。今回のケースでいうと、EC2インスタンスの料金(からSPの分が値引きされた)分です。
Total estimated bill:こちらは見積もりを踏まえOrganizations全体として月額いくらかかるかを示した金額で、Total historical bill
と 純増額
を足した金額になっています。
サービスごとの使用法行数の変更
恐らくここが最も重要な箇所で、ここの記載が見積もりということになります。
ここには請求シナリオで追加したサービスとその料金がUsageTypeごとに1行ずつ表示されます。分かりづらい項目だけ説明します。
Change in usage
これは追加された各サービスの割引前のコストを表しています。APN1-BoxUsage:c7i.16xlarge
の行は、今回でいうとc7i.16xlargeのオンデマンド料金となるはずです。
実際に料金ページに記載の料金で計算してみると $7,765.632($3.5952 × 24h × 30d × 3台)となり、上の料金とは微妙にズレています。ズレが発生している理由は不明ですが、概ね金額としては合っています。
Change in commitment
こちらは Change in usage
のうちのどの範囲の金額が RI/SPにより相殺されるかを表しています。
今回SPとして追加しているコミット額は、時間単価$5.095/hourです。この金額はc7i.16xlargeをSPでまかなうときの時間単価である $2.54738/hour を2倍(2台分)した額になります。
そのためこのコミット額により相殺されるEC2インスタンスオンデマンド料金は以下の通りです。
$3.5952 × 24h × 30d × 2台 = $5,177.088
この金額は、上記画像のChange in commitmentの額とほぼ一致しているのがおわかり頂けるかと思います。
Change in discount
こちらはその他の要素で割引される額を示しています。ざっと調べましたが、EC2インスタンス料金がなぜ $80.89 引かれてるのかは分かりませんでしたが、項目としては恐らくボリュームディスカウントによる割引料等が入ってくるのではないかと思います。
推定コスト
この金額はChange in usageからChange in commitmentとChange in discountを引いた金額です。
重要な注意点
注意点ですが、上記のいずれの項目にも Compute Savings Plans自体の金額は入っていない ことに注意してください。「サービスごとの使用法行数の変更」項目には行としてはCompute Savings Plansの文字があるものの、Change in usage等の各項目は -
となっています。Total estimated billにもCompute Savings Plans自体の金額は入ってないので、ここで出した見積もりに追加でSPの値段がかかってきます。ぬか喜びしないようにしましょう。
またレポートですが、ワークロード見積もりのようにCSV等でエクスポートはできないようです・・・。API経由ならいい感じに出力出来たりするのかもしれませんが、少なくともマネージメントコンソール上では、他の人に共有するにはAWSアカウントに入ってもらうしかなく、共有が難しそうだと思いました。
まとめ
以上、請求見積もりを実際に試してみました。
RI/SPを既に購入済のアカウントならもう少しおもしろい見積もりが出せそうな気がするのですが、私の検証用アカウントではそういったものはないので、ぜひRI/SPをヘビーユーズしている環境で見積もりを出してみたいですね。
そういった環境であれば、既存のRIを買わなくなったらどうなるかとか、SPをこれくらい追加で買ったらどのくらいコストが変わるかと等が見れそうで有用そうな予感がします。
以上、とーちでした。