メインコンテンツへスキップ

PerfectScale for Spot をセットアップ

必要な権限

  • PerfectScale for Spot Manager

PerfectScale for Spot は AWS アカウントへのアクセスを必要とします。まだの場合は、AWS アカウントを DoiT 組織にリンクしてください。

PerfectScale for Spot が ASG の動作を監視し、推奨事項を提示できるようにするには、PerfectScale for Spot を AWS アカウントにリンクし、関連する AWS IAM ロールを更新する必要があります。

注意

PerfectScale for Spot を AWS アカウントにリンクしても、ASG の設定やワークロードには影響しません。Spot Instances の推奨事項を適用するには、DoiT コンソールで Apply Recommendations ボタンを使用するか、PerfectScale for Spot Auto-Enrollment タグを設定する必要があります。

  1. DoiT コンソール にサインインし、上部ナビゲーションのメガメニューから Data ingestion and integrations > AWS を選択します。

  2. Amazon Web Services 画面で、PerfectScale for Spot と併用したいアカウントを選択します。

  3. アカウント編集画面で、PerfectScale for Spot チェックボックスを選択します。

    AWS account edit screen

  4. Update account を選択して、PerfectScale for Spot をアカウントに追加します。

    その後、テンプレートから CloudFormation スタックを作成するために AWS コンソールに移動するよう求められます。CloudFormation スタックを作成した後、アカウントの更新が完了するまで約 30 秒ほど待つ必要がある場合があります。詳細は、Feature permissions: PerfectScale for Spot を参照してください。

DoiT コンソールでの PerfectScale for Spot の推奨事項

PerfectScale for Spot を AWS アカウントにリンクすると、DoiT コンソール内の PerfectScale for Spot 画面で推奨事項を確認できます。

推奨事項を表示する

推奨事項を表示するには、上部ナビゲーションのメガメニューから Workload optimization を選択し、PerfectScale for Spot を選択します。

Different PerfectScale for Spot status messages

各 Auto Scaling グループのステータスは、Optimization Status 列に表示されます。

  • Optimized: ASG が完全に最適化されています。適用可能な推奨事項はすべて実装済みです。

  • New recommendations: PerfectScale for Spot に新しい推奨事項があります。ASG を選択して推奨事項を表示し、必要に応じて修正してから変更を適用します。

  • Not Optimized: ASG が最適化されておらず、PerfectScale for Spot の推奨事項の恩恵を受けていません。

  • Error: この ASG に対して PerfectScale for Spot が動作するのを妨げる要因があります。AWS CloudFormation スタックを更新する必要がある場合があります。問題が解決しない場合は、エキスパートへ問い合わせしてください。

推奨事項を変更する

最適化されていない ASG については、ASG の Current Values と PerfectScale for Spot の Recommended Values が表示されます。

その ASG の現在のオンデマンドコストと稼働時間は、左上に表示されます。

PerfectScale for Spot recommendations screen

推奨事項について、次の値を調整できます。

  • On-Demand Base Capacity: ASG の初期容量として、On-Demand Instances で満たす必要がある最小インスタンス数。

  • On-Demand Instances: ベース容量を超える部分に対して、On-Demand Instances を使用するパーセンテージ。

  • Spot Instances: ベース容量を超える部分に対して、Spot Instances を使用するパーセンテージ。

  • Allowed Instance Types: プライマリインスタンスタイプに基づいてプロビジョニングを推奨するインスタンスタイプ。

  • Availability Zones: 高可用性を実現するため、指定した Availability Zones 間でインスタンスを分散させます。

推奨事項を適用する

ASG を PerfectScale for Spot の推奨事項に基づいて再設定するには、Apply Recommendations を選択します。

正常に実行された場合:

  • ASG を mixed instances policy で動作させるよう更新し、launch template を使用するようにします。

  • Recommended Values 列が非表示になり、Current Values 列の値が変更内容を反映するように更新されます。

  • 上部に表示されるメトリクスには、オンデマンドと Spot の実際のコスト/時間の内訳および実際のコスト削減額が表示されます。右上の Time Range プルダウンを使用して、メトリクスを表示する時間範囲を調整できます。

  • ASG の Optimization ステータスは Optimized になります。

追加設定

PerfectScale for Spot には、次の 2 つの追加設定があります。

  • Automatically update: 選択した場合、PerfectScale for Spot は常にコスト削減の機会を探し、自動的に ASG を最適化します。

  • Fallback to On-Demand: 選択した場合、Spot Instances の容量需要を満たすのに十分な EC2 インスタンスがないときに、PerfectScale for Spot が自動的に On-Demand Instances にフォールバックします。

AWS tags を使用している場合、これらの追加設定は利用できない点に注意してください。

AWS tags

PerfectScale for Spot は、Infrastructure as Code (IaC) ツールで使用できる次の AWS タグをサポートしています。

AWS タグは、Terraform や AWS CloudFormation などの IaC ツールを使用してクラウドインフラストラクチャをデプロイおよび管理し、DoiT コンソールにサインインすることを避けたい DevOps やプラットフォームチームに最適です。

注意

タグキーおよび値は大文字と小文字が区別されます。

PerfectScale for Spot Auto-Enrollment

PerfectScale for Spot Auto-Enrollment は、IaC ツールを使用して PerfectScale for Spot の推奨事項を実装できる、ツールに依存しないソリューションです。

  • Auto-Enrollment タグ: PerfectScale for Spot の推奨事項を適用するためのタグ。

    • Key: doitintl:spotscaling:auto-enroll
    • Value: 次のいずれかを選択します。
      • always: AWS が Spot 市場の料金を変更・更新した場合や、新しいリソースが更新・リリースされた場合に、新たなコスト削減機会を見つけて継続的に推奨事項を適用できるようにします。
      • never: PerfectScale for Spot による推奨事項の適用を停止します。
  • Fallback タグ: オンデマンドへのフォールバックを有効にするためのタグ。

    • Key: doitintl:fallback-to-on-demand
    • Value: 次のいずれかを選択します。
      • true: Spot Instances の容量需要を満たすのに十分な EC2 インスタンスがないときに、PerfectScale for Spot が自動的に On-Demand Instances にフォールバックします。
      • false: Spot Instance interruptions が発生した場合でも、PerfectScale for Spot は On-Demand Instances にフォールバックしません。

Instance distributions

PerfectScale for Spot は、インスタンスの購入オプションに使用できる次の AWS タグをサポートしています。

  • Instance distribution タグ: ベース容量を超えるリソースについて、Auto Scaling グループ内の Spot Instances の割合を指定するためのタグ。

    • Key: doitintl:spotscaling:spot-distribution-percentage
    • Value: 0 から 100 までの整数
  • On-Demand base capacity タグ: Auto Scaling グループの初期容量のうち、On-Demand Instances で満たす必要がある最小量を指定するためのタグ。

    • Key: doitintl:spotscaling:on-demand-base-capacity
    • Value: 整数
注意

Instance distributions タグを指定しない場合、PerfectScale for Spot はデフォルト設定(On-Demand Instances 20%、Spot Instances 80%)を使用します。