Amazon ECS サービススケーリング実行ブロック - Amazon Application Recovery Controller (ARC)

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon ECS サービススケーリング実行ブロック

ECS サービススケーリング実行ブロックを使用すると、マルチリージョンリカバリプロセスの一環として、送信先リージョンで ECS サービスをスケーリングできます。キャパシティの割合は、リージョン切り替えがフェイルオーバーまたは非アクティブ化するリージョンを基準として定義できます。

構成

ECS サービススケーリング実行ブロックを設定するには、次の値を入力します。

重要

実行ブロックを設定する前に、正しい IAM ポリシーが設定されていることを確認してください。詳細については、「Amazon ECS サービススケーリング実行ブロックのサンプルポリシー」を参照してください。

  1. ステップ名: 名前を入力します。

  2. ステップの説明 (オプション): ステップの説明を入力します。

  3. リージョンのリソース: リージョンごとに、ECS クラスター ARN と ECS サービス ARN を入力します。

  4. ソースリージョンのタスク数と一致する割合: アクティブ化されたリージョンで一致するソースリージョンで実行中のタスクの望ましい割合を入力します。

  5. キャパシティモニタリングアプローチ: Amazon ECS のキャパシティをモニタリングするための次のいずれかのアプローチを選択します。

    • 24 時間にわたってサンプリングされた最大実行キャパシティ: Amazon ECS サービスで実行中のタスク数の値を使用するには、このオプションを選択します。このオプションは追加コストを発生させませんが、他のオプションである CloudWatch メトリクスを使用するよりも精度が低い可能性があります。

      リージョン切り替え API では、このオプションは sampledMaxInLast24Hours の指定に対応します。

      詳細については、「Amazon Elastic Container Service 開発者ガイド」の「Amazon ECS サービスを自動的にスケールする」を参照してください。

    • コンテナインサイトを介して 24 時間にわたってサンプリングされた最大実行キャパシティ: Amazon ECS Container Insights メトリクスを使用するには、このオプションを選択します。オプションを使用すると、より正確になりますが、コンテナインサイトを使用するための追加コストが発生します。

      リージョン切り替え API では、このオプションは autoscalingMaxInLast24Hours の指定に対応します。

      このオプションを使用するには、まずコンテナインサイトを有効にする必要があります。詳細については、「Amazon CloudWatch ユーザーガイド」の「コンテナインサイトの設定」を参照してください。

  6. タイムアウト: タイムアウト値を入力します。

次に、[ステップを保存] を選択します。

仕組み

プランで実行ブロックを設定すると、リージョン切り替えは送信元 ECS サービスが 1 つと送信先サービスが 1 つしかないことを確認します。複数のサービスがある場合、リージョン切り替えは実行ブロックの警告を返します。リージョン切り替えは、プランが設定されているすべてのリージョンにこのデータを保存します。ターゲットキャパシティは、ECS サービスで設定された必要数として定義されます。

アクティブ/パッシブアプローチの場合、リージョン切り替えは送信先 (アクティブ化) リージョンの ECS サービスの、希望する新しいキャパシティを計算します。希望する新しいキャパシティは、送信先 ECS サービスの希望するキャパシティと比較されます。希望するキャパシティの計算でリージョン切り替えが使用する式は ceil(percentToMatch * Source Auto Scaling group capacity) です。ceil() は、小数の結果を四捨五入する関数です。送信先 ECS サービスの現在の必要数が、ECS サービスの計算された新しい必要キャパシティよりも多い場合、プランの実行が続行されます。リージョン切り替えは ECS サービスキャパシティをスケールダウンしないことに注意してください。

ECS サービスでアプリケーション自動スケーリングが有効になっている場合、リージョン切り替えはアプリケーション自動スケーリングの最小キャパシティを更新し、ECS サービスの必要数も更新します。

リージョン切り替え ECS サービスブロックを実行すると、リージョン切り替えは、ターゲットリージョン ECS キャパシティを、希望するキャパシティに合わせてスケールアップしようとします。次に、リージョン切り替えは、リージョン切り替えがプランの次のステップに進む前に、ターゲットリージョンの ECS サービスでリクエストされた ECS サービスキャパシティが満たされるまで待機します。必要に応じて、リージョン切り替えがキャパシティフルフィルメントを待機するタイムアウト制限を設定して、フルフィルメントの完了前にステップが完了するよう設定できます。

アクティブ/アクティブアプローチを使用している場合、リージョン切り替えは他の設定済みリージョンをソースとして使用します。つまり、リージョンが非アクティブ化されている場合、リージョン切り替えは、スケールするパーセントに一致するソースとして他のアクティブなリージョンを使用します。

プラン評価の一環として評価されるもの

リージョン切り替えがプランを評価すると、リージョン切り替えは ECS サービス実行ブロックの設定とアクセス許可に対していくつかのチェックを実行します。リージョン切り替えは、ソースリージョンとターゲットリージョンの両方に ECS サービスが存在することを確認し、ターゲットリージョンの ECS サービスに設定された最大キャパシティが、ターゲットリージョンのキャパシティの指定された割合の一致を処理するのに十分であることを確認します。リージョン切り替えは、プランの IAM ロールに ECS サービスに対する正しいアクセス許可があることも検証します。リージョン切り替え実行ブロックに必要なアクセス許可の詳細については、「ARC でのリージョン切り替えのアイデンティティベースのポリシーの例」を参照してください。

さらに、リージョン切り替えは、 ResourceMonitor が ECS サービスに必要なモニタリングデータを正常に収集して保存したことを確認し、実行中のタスクの数をキャプチャします。

いずれかのチェックが失敗した場合、リージョン切り替えは警告メッセージを返します。警告メッセージはコンソールで表示できます。または、EventBridge または API オペレーションを使用して検証警告を受け取ることができます。