我有一个包含 2 个 REPLICA 任务的 AWS ECS 服务。当我手动停止其中一个任务时,新任务几乎会在 5 分钟内创建。当一个或多个任务因故障而停止时,也会发生类似的 5 分钟超时。
这是我的服务的云定义:
ServiceFrontend:
Type: AWS::ECS::Service
DependsOn:
- LoadBalancerRule
Properties:
ServiceName: "my-service-frontend"
Cluster:
Fn::ImportValue: !Sub "${ProjectName}:${EnvType}:ClusterName"
DeploymentConfiguration:
MaximumPercent: 100
MinimumHealthyPercent: 0
DesiredCount: 2
TaskDefinition: !GetAtt FrontendTaskStack.Outputs.TaskDefinition
HealthCheckGracePeriodSeconds: 600
ServiceRegistries:
- RegistryArn: !GetAtt 'DiscoveryService.Arn'
ContainerName: !Sub "${ServiceName}-frontend"
ContainerPort: !Ref 'FrontendContainerPort'
LoadBalancers:
- ContainerName: !Sub "${ServiceName}-frontend"
ContainerPort: !Ref 'FrontendContainerPort'
TargetGroupArn: !Ref 'TargetGroup'
PlacementStrategies:
- Field: 'memory'
Type: 'binpack'
- Field: 'cpu'
Type: 'binpack'
我的问题是:是什么定义了这个超时?我能控制它吗?或者我可以在哪里看到更多关于这 5 分钟内发生的事情的见解,因为 ECS 服务事件仅显示旧任务如何注销以及新任务在 5 分钟后如何再次注册,中间没有任何内容。
如果我更改相同的服务并增加所需的任务数量 - 它会在不到 30 秒的时间内开始配置新任务。当其中一个任务由于某种原因停止时,我如何获得相同的恢复时间。
谷歌搜索和查看 ECS 文档似乎没有找到答案。上下文:此服务在服务级别上没有自动扩展,集群的容量提供商已配置自动扩展。但我认为这与此无关,因为容量提供商不会在此处开始更改容量。