ECSに以下の方法でAuto Scalingを設定できる。
AWS::ApplicationAutoScaling::ScalableTarget
:MaxCapacity、MinCapacityに最大数と最小数を指定。ResourceIdにAuto Scalingを設定するECSサービスのARNを指定AWS::ApplicationAutoScaling::ScalingPolicy
:ResourceIdにAuto Scalingを設定するECSサービスのARNを指定ref. Application Auto Scaling resource type reference
ECSのAuto Scalingを設定するには主に3つの要素が必要
AlarmActions(AWS::ApplicationAutoScaling::ScalingPolicy)
が実行されるScalingTargetId
にAuto Scalingする対象リソース(AWS::ApplicationAutoScaling::ScalableTarget)を指定するAWS::ApplicationAutoScaling::ScalingPolicy
のScalableTarget
に指定できるリソース一覧はRegisterScalableTargetのResourceIdを参照AWS::ApplicationAutoScaling::ScalableTargetのMaxCapacity
、MinCapacity
で指定した範囲内で、AWS::ApplicationAutoScaling::ScalingPolicy
の` AWS::ApplicationAutoScaling::ScalingAdjustmentを指定できる。
MetricIntervalUpperBound The upper bound for the difference between the alarm threshold and the CloudWatch metric. If the metric value is above the breach threshold, the upper bound is exclusive (the metric must be less than the threshold plus the upper bound). Otherwise, it is inclusive (the metric must be less than or equal to the threshold plus the upper bound). A null value indicates positive infinity.
The upper bound must be greater than the lower bound.
DeepLでの翻訳
MetricIntervalUpperBound アラーム閾値とCloudWatchメトリックの差の上限値。メトリック値が違反しきい値より上の場合、上限は排他的である(メトリックはしきい値に上限を足した値より小さくなければならない)。それ以外の場合は、包含的です(メトリックは、閾値に上限を加えた値以下でなければなりません)。ヌル値は正の無限大を示す。
MetricIntervalLowerBound The lower bound for the difference between the alarm threshold and the CloudWatch metric. If the metric value is above the breach threshold, the lower bound is inclusive (the metric must be greater than or equal to the threshold plus the lower bound). Otherwise, it is exclusive (the metric must be greater than the threshold plus the lower bound). A null value indicates negative infinity.
DeepLでの翻訳
アラーム閾値とCloudWatchメトリックの差の下限値。メトリック値が違反しきい値を超えている場合、下限は包括的である(メトリックはしきい値に下限を足した値以上でなければならない)。それ以外の場合は、排他的です(メトリックは、閾値に下限を加えた値より大きくなければなりません)。ヌル値は負の無限大を示す。
Fargate で Amazon ECS を Amazon CloudWatch アラームおよび Application Auto Scaling と統合することで、タスクの必要数を増減できます。その後、CloudWatch メトリクスを使用して CloudWatch アラームを設定できます。
CloudWatch アラームが Auto Scaling ポリシーをトリガーすると、Application Auto Scaling は、設定されたスケーリングポリシーに基づいて新しい必要数を決定します。その後、Application Auto Scaling は、新しい必要数の値を使用して UpdateService API を Amazon ECS に呼び出します。Amazon ECS サービススケジューラは、新しい必要数を満たすた
タスクスケジュールにはAuto Scalingの機能はなく、事前にターゲットに指定されたタスクが起動する。
以下だと3つのtargetが起動する。