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

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 integrationsAWS を選択します。

  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: ベース容量を超える部分に対して、オンデマンドインスタンスが占めるパーセンテージ。

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

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

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

推奨事項を適用する

PerfectScale for Spot の推奨事項に従って ASG を再設定するには、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 は自動的にオンデマンドインスタンスへフォールバックします。

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

AWS tags

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

AWS tags は、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 は自動的にオンデマンドインスタンスへフォールバックします。
      • false: Spot Instance interruptions が発生した場合でも、PerfectScale for Spot はオンデマンドインスタンスへフォールバックしません。

Instance distributions

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

  • Instance distribution タグ: ベース容量を超えるリソースに対して、Auto Scaling グループ内の Spot Instances のパーセンテージを指定するためのタグ。

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

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

Instance distributions タグを指定しない場合、PerfectScale for Spot はデフォルト設定(オンデマンドインスタンス 20%、Spot Instances 80%)を使用します。