AWS SAA 学習ノート: EC2(料金形態)

Overview (概要)

Amazon EC2は、さまざまなユースケースと予算要件に対応するため、複数の料金モデルを提供しています。

1. オンデマンドインスタンス

Description: Pay for compute capacity by the hour or second with no long-term commitments.
長期契約なしで、時間または秒単位でコンピューティング容量に対して支払い。

Characteristics - 特徴:

  • No upfront payment required - 前払い不要
  • No long-term commitment - 長期契約不要
  • Billed per second (Linux) or per hour (Windows) - 秒単位課金(Linux)または時間単位課金(Windows)
  • Highest cost per hour - 1時間あたりのコストが最高

Use Cases - ユースケース:

  • Short-term, irregular workloads - 短期間で不規則なワークロード
  • Applications being developed or tested - 開発・テスト中のアプリケーション
  • First-time AWS users - AWS初回利用者
  • Unpredictable usage patterns - 予測不可能な使用パターン

2. リザーブドインスタンス (RI)

Description: Significant discount (up to 72%) compared to On-Demand pricing in exchange for a 1 or 3-year commitment.
説明: 1年または3年の契約と引き換えに、オンデマンド価格と比較して大幅な割引(最大72%)。

Payment Options - 支払いオプション:

  • All Upfront - 全前払い: Highest discount, pay entire amount upfront - 最高割引、全額前払い
  • Partial Upfront - 一部前払い: Medium discount, partial upfront + monthly payments - 中程度割引、一部前払い+月払い
  • No Upfront - 前払いなし: Lowest discount, monthly payments only - 最低割引、月払いのみ

RI Types - RIタイプ:

  • Standard RI - スタンダードRI: Up to 72% discount, cannot change instance attributes - 最大72%割引、インスタンス属性変更不可
  • Convertible RI - コンバーティブルRI: Up to 54% discount, can change instance family/OS/tenancy - 最大54%割引、インスタンスファミリー/OS/テナンシー変更可能

Use Cases - ユースケース:

  • Steady-state usage applications - 安定稼働アプリケーション
  • Predictable workloads - 予測可能なワークロード
  • Long-term projects (1-3 years) - 長期プロジェクト(1〜3年)

3. セービングプラン

Description: Flexible pricing model offering lower prices in exchange for a commitment to consistent usage.
説明: 一貫した使用量へのコミットメントと引き換えに、より低い価格を提供する柔軟な料金モデル。

Types - タイプ:

  • Compute Savings Plans - コンピュートセービングプラン: Up to 66% discount, applies to EC2, Lambda, Fargate - 最大66%割引、EC2、Lambda、Fargateに適用
  • EC2 Instance Savings Plans - EC2インスタンスセービングプラン: Up to 72% discount, specific to EC2 in chosen region - 最大72%割引、選択したリージョンのEC2に特化

Use Cases - ユースケース:

  • Consistent compute usage - 一貫したコンピュート使用量
  • Need flexibility in instance types - インスタンスタイプの柔軟性が必要
  • Multiple AWS services usage - 複数のAWSサービス利用

4. スポットインスタンス

Description: Purchase unused EC2 capacity at up to 90% discount compared to On-Demand prices.
説明: 未使用のEC2容量をオンデマンド価格と比較して最大90%の割引で購入。

Characteristics - 特徴:

  • Prices fluctuate based on supply and demand - 需要と供給に基づいて価格が変動
  • Can be terminated by AWS with 2-minute notice - AWSにより2分前の通知で終了される可能性
  • Highest discount potential - 最高の割引可能性
  • Suitable for fault-tolerant applications - フォルトトレラントなアプリケーションに適している

Use Cases - ユースケース:

  • Batch processing jobs - バッチ処理ジョブ
  • Data analysis and processing - データ分析・処理
  • Image and media processing - 画像・メディア処理
  • Flexible start/end time applications - 開始/終了時刻が柔軟なアプリケーション

Not Suitable For - 不適切な用途:

  • Critical workloads - 重要なワークロード
  • Persistent workloads - 永続的なワークロード
  • Databases - データベース

5. 専用ホスト

Description: Physical EC2 server dedicated for your use, helping meet compliance requirements.
説明: 専用使用のための物理EC2サーバー、コンプライアンス要件の満足に役立つ。

Characteristics - 特徴:

  • Most expensive option - 最も高価なオプション
  • Physical server visibility and control - 物理サーバーの可視性と制御
  • Can use existing server-bound software licenses - 既存のサーバーバウンドソフトウェアライセンスを使用可能
  • Compliance and regulatory requirements support - コンプライアンスと規制要件のサポート

Use Cases - ユースケース:

  • Regulatory/compliance requirements - 規制/コンプライアンス要件
  • Existing software licenses (BYOL) - 既存ソフトウェアライセンス(BYOL)
  • Server-bound licensing models - サーバーバウンドライセンスモデル

6. 専用インスタンス

Description: Instances run on hardware dedicated to a single customer.
説明: 単一の顧客専用のハードウェア上で実行されるインスタンス。

Characteristics - 特徴:

  • Hardware isolation at host level - ホストレベルでのハードウェア分離
  • May share hardware with other instances from same account - 同じアカウントの他のインスタンスとハードウェアを共有する可能性
  • No control over instance placement - インスタンスの配置制御なし
  • Automatic instance placement - 自動インスタンス配置

じゃどうやって選ぶの?

適切なサイジング

  • Choose appropriate instance types and sizes - 適切なインスタンスタイプとサイズを選択
  • Monitor CPU, memory, and network utilization - CPU、メモリ、ネットワーク使用率を監視
  • Use AWS CloudWatch for monitoring - 監視にAWS CloudWatchを使用

混合インスタンス戦略

  • Combine different pricing models - 異なる料金モデルを組み合わせ
  • Use Reserved Instances for baseline capacity - ベースライン容量にリザーブドインスタンスを使用
  • Scale with On-Demand or Spot Instances - オンデマンドまたはスポットインスタンスでスケール

自動化

  • Schedule instances for non-production environments - 非本番環境でインスタンスをスケジュール
  • Auto Scaling to match demand - 需要に合わせたオートスケーリング
  • Use AWS Instance Scheduler - AWS Instance Schedulerを使用
Scenario シナリオRecommended Model 推奨モデルReason 理由
Steady, predictable workload 安定した予測可能なワークロードReserved InstancesBest cost savings for consistent usage 一貫した使用に対する最良のコスト節約
Short-term project 短期プロジェクトOn-DemandNo commitment needed コミットメント不要
Batch processing バッチ処理Spot InstancesFault-tolerant, cost-effective フォルトトレラント、コスト効率的
Compliance requirements コンプライアンス要件Dedicated HostsPhysical isolation 物理的分離
Variable compute needs 可変コンピュート需要Savings PlansFlexibility with cost savings 柔軟性とコスト節約

ポイント

  1. Cost vs Flexibility Trade-off - コストと柔軟性のトレードオフ
    Lower cost often means less flexibility in terms and usage patterns.
    低コストはしばしば条件と使用パターンにおける柔軟性の低下を意味する。

  2. Planning is Essential - 計画が不可欠
    Understanding your workload patterns is crucial for optimal pricing model selection.
    最適な料金モデル選択にはワークロードパターンの理解が重要。

  3. Mix and Match - 組み合わせ
    Most organizations use a combination of pricing models for different workloads.
    多くの組織は異なるワークロードに対して料金モデルの組み合わせを使用。

  4. Monitor and Optimize - 監視と最適化
    Regularly review usage patterns and costs to ensure optimal pricing model selection.
    使用パターンとコストを定期的に見直し、最適な料金モデル選択を確保。