Как установить минимальные и максимальные значения ECS Service - PullRequest
0 голосов
/ 01 ноября 2018

Как я могу установить минимальное и максимальное количество задач Службы ECS через вызов API? Я знаю, что вы можете установить желаемое количество задач через следующий API, но я не вижу где-нибудь, чтобы установить минимальные и максимальные задачи? Я что-то пропустил? Я использую PHP API, но любая информация здесь поможет.

https://docs.aws.amazon.com/aws-sdk-php/v3/api/api-ecs-2014-11-13.html#updateservice

1 Ответ

0 голосов
/ 01 ноября 2018

Насколько я понимаю, минимальное и максимальное значения можно установить только с помощью политик автоматического масштабирования для служб ECS. https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-auto-scaling.html. Вам нужно создать политики автоматического масштабирования, чтобы установить их.

Сервисное автоматическое масштабирование стало возможным благодаря комбинации API Amazon ECS, CloudWatch и Application Auto Scaling.

В вашем случае достаточно использовать API-интерфейс AutoScaling для приложения, достаточно вызова метода registerScalableTarget. Вот пример.

https://docs.aws.amazon.com/aws-sdk-php/v3/api/class-Aws.ApplicationAutoScaling.ApplicationAutoScalingClient.html

$result = $client->registerScalableTarget([
    'MaxCapacity' => 20,
    'MinCapacity' => 2,
    'ResourceId' => 'service/default/sample-webapp', // REQUIRED
    'RoleARN' => 'arn:aws:iam::012345678910:role/ApplicationAutoscalingECSRole',
    'ScalableDimension' => 'ecs:service:DesiredCount', // REQUIRED
    'ServiceNamespace' => 'ecs', // REQUIRED
]);
...