Closed22

リザーブドインスタンスとSavings Plansの整理

ピン留めされたアイテム
batchibatchi

RI と SP どちらを選定する?

割引率 キャパシティ予約 マーケットプレース リージョン縛り インスタンスファミリー縛り テナンシー・プラットフォーム縛り
1 リージョナル スタンダードRI 高い(最大72%) なし できる あり あり あり
2 コンバーティブルRI 低い(最大66%) なし できない あり(別リージョンに交換も不可) あり(交換は可能) あり
3 ゾーン スタンダードRI 1と同一 あり できる あり(さらにAZ縛り) あり(さらにサイズ縛り) あり
4 コンバーティブルRI 2と同一 あり できない あり(さらにAZ縛り) あり(さらにサイズ縛り) あり
5 EC2 Instanse SP 1と同一 なし できない あり あり なし
6 Compute SP 2と同一 なし できない なし なし なし
  • 基本はSPを優先して考える、でいいと思う
    • SPの方が柔軟性が高いため
    • スタンダードRIとEC2 Instance SP、コンバーティブルRIとCompute SPの割引率は同一
  • RIを選択するケース
    • SP非対応のAWSサービス(RDS、ESなど)を使用する場合
      • EC2はSP、他のサービスはRI、とすると管理しづらくなるということがあればRIに寄せてもいいと思う
    • マーケットプレースを使いたい場合
      • EC2のスタンダードRIのみ対応
      • 安く購入したい
        • マーケットプレースの場合前払い料金を出品者側が決定できる
      • 途中で売却する可能性がある
        • 米国の口座が必要、といったハードルがあることに注意
    • ODCRを別で管理したくないのでRIないしSP購入と一緒にキャパシティ予約をしたい
      • ゾーンRIが唯一キャパシティ予約の機能を持つ
        • それによりキュー不可、AZ柔軟性、インスタンスタイプ柔軟性が失われる
  • SPで推奨事項を使わない場合、コミットする金額を自分で計算する必要がある、という手間はあるかも
    • 「東京リージョンのLinuxのデフォルトテナンシーのm5.xlargeを10台」まで洗い出せているとして、RIならその条件を指定すれば購入できるけど、SPの場合はそこからさらに自分で計算する必要がある
    • 付随して「管理の分かりやすさ」という観点ではRIに軍配が上がるか
      • RIなら「東京リージョンのLinuxのデフォルトテナンシーのm5.xlargeを10台」というのが目に見えるので、購入した担当者以外にも理解しやすい
      • SPの場合金額に均されているので、「どんな適用を想定して購入したか」を別途管理しておかないと分からなくなる

RIではできるけどSPではできないことってある?

  • 予約購入はSPでもできる
  • カバレッジレポートはRIでしか見れないとかある?
    • ない
  • 購入後の変更・交換
    • RIは属性などを変えられる
      • https://zenn.dev/link/comments/41bd734ca80f25
      • EC2 InstanceSP を選択した場合(スタンダードRIと同額)
        • リージョンとインスタンスファミリーが決め打ち
        • スタンダードRIでも同様。ファミリーもリージョンも変更可能な属性に含まれていない
      • ComputeSPを選択した場合(コンバーティブルRIと同額)
        • コンバーティブルで選択可能な交換内容はCompute SPであれば交換するまでもなく適用される
          • プラットフォームの変更、ファミリーの変更など
        • 「交換」では「前払いなし」から「全部前払い」「一部前払い」に交換できる
          • これはSPではできないことだが、ここをモチベーションにしてRIを選択する、とはならないだろう
  • 有効期限切れ前の通知はRIでもSPでもできる
batchibatchi

RIもSPも、推奨やカバレッジレポートはAWS Cost Explorerから確認可能。
(請求ダッシュボードから遷移してもいいし、サービスから選択して飛んでもいい。)

batchibatchi
batchibatchi
  • 料金を決定する要素
    • インスタンスの属性
      • インスタンスタイプ
      • リージョン
      • テナンシー
        • 共有
        • 占有
      • プラットフォーム
        • Windows
        • Linux/Unix
    • コミットメント期間
      • 1年
      • 3年
    • 支払オプション
      • すべて前払い
      • 一部前払い
      • 前払いなし
    • 提供クラス
      • スタンダート
      • コンバーティブル
  • スコープ
    • リージョナル
    • ゾーン
batchibatchi

リージョナルとゾーンの違い

リージョン リザーブドインスタンス ゾーン リザーブドインスタンス
キャパシティー予約 されない される
アベイラビリティーゾーンの柔軟性 あり。指定したリージョン内で任意のAZに適用 なし。指定したAZのみに適用
インスタンスサイズの柔軟性 あり。インスタンスファミリー内の任意のサイズに適用。※Amazon Linux/Unixのデフォルトテナンシー限定。 なし。指定したインスタンスサイズのみに適用
購入をキューに入れる できる できない
  • リージョナルを選択するメリット
    • AZの柔軟性あり
    • インスタンスサイズの柔軟性あり
  • ゾーンを選択するメリット
    • キャパシティ予約あり

両者に金額の違いはない。

batchibatchi

提供クラスの違い

スタンダード リザーブドインスタンス Convertible Reserved Instance
リザーブドインスタンス の変更 一部の属性は変更できる 同左
リザーブドインスタンス の交換 できない 同等以上の価値を持つRIに差額を支払い交換可能
リザーブドインスタンスマーケットプレイスに出品する できる できない
リザーブドインスタンスマーケットプレイスでの購入 できる できない

以下は変更不可。

  • コミット期間
  • 支払オプション

上記は「交換」であれば変えられる。(異なるものに交換できる。)

提供クラスに関わらず変更できる内容

https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/ri-modifying.html

変更可能な属性 サポートされているプラットフォーム 制約事項
同じリージョン内でアベイラビリティーゾーンを変更する Linux と Windows -
スコープをアベイラビリティーゾーンからリージョンに、またはその逆に変更する Linux と Windows それぞれの変更前の利点(ゾーンにおけるキャパシティ予約など)は失われる
同じインスタンスファミリー内でインスタンスサイズを変更する Linux/UNIX のみ デフォルトのテナンシーである必要あり
ネットワーク を EC2-Classic から Amazon VPC に、またはその逆に変更する Linux と Windows -
  • 変更できない属性の例
    • インスタンスファミリー
    • リージョン(東京から大阪に変えるなど)
    • Linux/Unix以外でのインスタンスサイズ
    • プラットフォーム
  • 上記の変更できない属性が決め打ちでいいなら、スタンダードにすることで以下のメリットが得られる
    • より高い割引率
    • マーケットプレースでの出品・購入

交換

  • 元のRIと異なるリージョンのRIには交換できない
  • 支払オプション
    • 「すべて前払い」→「一部前払い」OK
    • 「一部前払い」→「すべて前払い」OK
    • 「前払いなし」→「一部前払い」「すべて前払い」OK
    • 「前払いなし」→「前払いなし」OK
    • 「すべて前払い」「一部前払い」→「前払いなし」NG
batchibatchi

どのように適用されるか

  • 条件に合致するものがあれば自動的に適用
  • 再起動は不要
  • 正規化係数による部分的な適用
    • インスタンスタイプの柔軟性があるリージョナルの場合のみ発生
    • たとえばmedium(係数2)のリージョナルRIを保有しておりlarge(係数4)のインスタンスが稼働する場合、largeの50%にRIが適用、残り50%がオンデマンドで課金
batchibatchi

請求

  • 使用(適用)有無に関わらず1時間ごとに請求
  • オンデマンドの課金はプラットフォームにより違う
    • 1秒ごと、もしくは1時間ごと
      • 商用ディストリビューションが1時間
  • 1時間の枠の中で複数のインスタンスにまたがり3600秒まで適用
    • あふれた分はオンデマンド

discount pricing tiers(割引料金範囲)

  • リージョンあたり50万ドル以上買ってると割引適用される
batchibatchi

購入

  • プラットフォーム
  • テナンシー
  • 提供クラス
  • インスタンスタイプ
  • 期間
  • お支払い方法
  • スコープ

マーケットプレースからの購入

  • 期間は完全ではない(1年や3年のフルでない)
  • 前払い料金はAWS提供のものより安い可能性がある
    • 前払い以外の料金はAWS提供のものと同じ
    • The usage or recurring fees remain the same as the fees set when the Reserved Instances were originally purchased from AWS.

  • EC2のスタンダードクラスのみ

RIの更新

  • 有効期限が切れる前に更新処理を行うことで、同一内容のRIがキューに入れられる
    • 既存のものが有効期限切れになったのち、キューに入っているものが適用される
batchibatchi
batchibatchi

プランタイプ

  • Compute Savings Plans
  • EC2 Instance Savings Plans
  • SageMaker Savings Plans

比較

Compute SP EC2インスタンスSP コンバーチブルRI スタンダードRI
オンデマンドに対する節約 最大66パーセント 最大72パーセント 最大66パーセント 最大72パーセント
金銭的コミットメントと引き換えに低価格
すべてのインスタンスファミリに価格を自動的に適用
任意のインスタンスサイズに価格を自動的に適用 —(リージョナルは柔軟性を持つ) 同左
テナンシーまたはOSに価格を自動的に適用
Fargateを使用するAmazonECSに自動的に適用
ラムダに自動的に適用
AWSリージョン全体に価格を自動的に適用
1年または3年の期間オプション
batchibatchi

サポートされているサービス

  • EC2
  • Fargate
  • Lambda
  • SageMaker
batchibatchi

購入

  • SPタイプ
  • 期間
  • コミットメント額
  • 支払オプション
  • 開始日(オプション)
batchibatchi

MTD/YTD

一般用語。

  • MTD
    • Month to Date
    • 単月
  • Year to Date
    • 累計
batchibatchi

アラート

  • 有効期限の1,7,30,60日前
  • キューに入れられたタイミング
このスクラップは2021/07/30にクローズされました