amazon-web-services - 如何设置 ECS 服务最小和最大任务
问题描述
如何通过API调用设置ECS服务的最小和最大任务数?我知道您可以通过以下 api 设置所需的任务数,但我没有看到任何地方可以设置最小和最大任务?我错过了什么吗?我正在使用 PHP API,但这里的任何见解都会有所帮助。
https://docs.aws.amazon.com/aws-sdk-php/v3/api/api-ecs-2014-11-13.html#updateservice
解决方案
我的理解是,只能使用 ECS 服务的 Auto Scaling 策略设置最小值和最大值。 https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-auto-scaling.html。您将需要创建 Auto Scaling 策略来设置这些。
通过结合使用 Amazon ECS、CloudWatch 和 Application Auto Scaling API,Service Auto Scaling 成为可能。
在您的情况下,仅使用 Application AutoScaling API,registerScalableTarget 方法调用就足够了。这是示例。
$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
]);
推荐阅读
- javascript - 反应js应用程序中带有令牌的firebase重新身份验证流程无法正常工作
- git - 如何推送/创建一个分支,以便它分配给 GitHub 中的问题?
- docker - 如何使用 docker 容器为 vue-cli-plugin-electron-builder 生成的 windows 平台构建应用程序
- pandas - 类型错误:“浮动”对象不可迭代
- php - HTML - PHP - 试图惰性化一个变量
- r - 创建一个闪亮的应用程序来执行数据操作
- python - 如何用python计算拐点?
- sql - 插入非重复记录以复制具有更新日期的表
- c++ - 函数模板参数推导
- terraform - 合并 terraform 中的对象列表