翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon ECS サービススケーリング実行ブロック
ECS サービススケーリング実行ブロックを使用すると、マルチリージョンリカバリプロセスの一環として、送信先リージョンで ECS サービスをスケーリングできます。リージョンの切り替えがフェイルオーバーまたは非アクティブ化されるリージョンに関連する容量の割合を定義できます。
設定
ECS サービススケーリング実行ブロックを設定するには、次の値を入力します。
重要
実行ブロックを設定する前に、正しい IAM ポリシーが設定されていることを確認してください。詳細については、「Amazon ECS サービススケーリング実行ブロックサンプルポリシー」を参照してください。
ステップ名: 名前を入力します。
ステップの説明 (オプション): ステップの説明を入力します。
リージョンのリソース: リージョンごとに、ECS クラスター ARN と ECS サービス ARN を入力します。
ソースリージョンのタスク数と一致する割合: アクティブ化されたリージョンで一致するソースリージョンで実行中のタスクの望ましい割合を入力します。
キャパシティモニタリングアプローチ: Amazon ECS のキャパシティをモニタリングするための次のいずれかのアプローチを選択します。
24 時間にわたってサンプリングされた最大実行容量: Amazon ECS サービスで実行中のタスク数の値を使用するには、このオプションを選択します。このオプションは追加コストを発生させませんが、他のオプションである CloudWatch メトリクスを使用するよりも精度が低い可能性があります。
リージョンスイッチ API では、このオプションは の指定に対応します
sampledMaxInLast24Hours。詳細については、「Amazon Elastic Container Service デベロッパーガイド」の「Amazon ECS サービスを自動的にスケールする」を参照してください。
コンテナインサイトを介して 24 時間にわたってサンプリングされた最大実行容量: Amazon ECS Container Insights メトリクスを使用するには、このオプションを選択します。オプションを使用すると、より正確になりますが、Container Insights を使用するための追加コストが発生します。
リージョンスイッチ API では、このオプションは の指定に対応します
autoscalingMaxInLast24Hours。このオプションを使用するには、まず Container Insights を有効にする必要があります。詳細については、Amazon CloudWatch ユーザーガイド」の「Set up Container Insights」を参照してください。
タイムアウト: タイムアウト値を入力します。
次に、保存ステップを選択します。
仕組み
プランで実行ブロックを設定すると、リージョンスイッチは送信元 ECS サービスが 1 つと送信先サービスが 1 つしかないことを確認します。複数のサービスがある場合、リージョンスイッチは実行ブロックの警告を返します。リージョンスイッチは、プランが設定されているすべてのリージョンにこのデータを保存します。ターゲット容量は、ECS サービスで設定された必要数として定義されます。
アクティブ/パッシブアプローチの場合、リージョンスイッチは送信先 (アクティブ化) リージョンの ECS サービスの新しい希望する容量を計算します。新しい希望する容量は、送信先 ECS サービスの希望する容量と比較されます。リージョンスイッチが希望する容量の計算に使用する式は次のとおりです。ここでceil(percentToMatch * Source Auto Scaling group capacity)、ceil() は小数の結果を四捨五入する関数です。送信先 ECS サービスの現在の必要数が、ECS サービスの計算された新しい必要容量よりも高い場合、プランの実行が続行されます。リージョンスイッチは ECS サービス容量をスケールダウンしないことに注意してください。
ECS サービスで Application Autoscaling が有効になっている場合、リージョンスイッチは Application Autoscaling の最小容量を更新し、ECS サービスの必要数も更新します。
リージョンスイッチが ECS サービスブロックを実行すると、リージョンスイッチは目的のリージョン ECS 容量に合わせてターゲットリージョン ECS 容量をスケールアップしようとします。次に、リージョンスイッチは、リージョンスイッチがプランの次のステップに進む前に、ターゲットリージョンの ECS サービスでリクエストされた ECS サービス容量が満たされるまで待機します。必要に応じて、リージョンスイッチがキャパシティフルフィルメントを待機する時間のタイムアウト制限を設定することで、フルフィルメントが完了する前に完了するようにステップを設定できます。
アクティブ/アクティブアプローチを使用している場合、リージョンスイッチは他の設定済みリージョンをソースとして使用します。つまり、リージョンが非アクティブ化されている場合、リージョンスイッチは、スケーリングするパーセントに一致するソースとして他のアクティブなリージョンを使用します。
計画評価の一環として評価されるもの
リージョンスイッチがプランを評価すると、リージョンスイッチは ECS サービス実行ブロックの設定とアクセス許可に対していくつかのチェックを実行します。リージョンスイッチは、ECS サービスがソースリージョンとターゲットリージョンの両方に存在することを確認し、ターゲットリージョンの ECS サービスに設定された最大容量が、ターゲットリージョンの容量の指定された割合の一致を処理するのに十分であることを確認します。リージョンスイッチは、プランの IAM ロールに ECS サービスに対する正しいアクセス許可があることも検証します。リージョンスイッチ実行ブロックに必要なアクセス許可の詳細については、「」を参照してくださいARC でのリージョン切り替えのアイデンティティベースのポリシーの例。
さらに、リージョンスイッチは、 ResourceMonitor が ECS サービスに必要なモニタリングデータを正常に収集して保存したことを確認し、実行中のタスクの数をキャプチャします。
いずれかのチェックが失敗した場合、リージョンスイッチは警告メッセージを返します。警告メッセージはコンソールで表示できます。または、EventBridge または API オペレーションを使用して検証警告を受け取ることもできます。