Fargate 的 LaunchConfiguration 是什么?

What LaunchConfiguration for Fargate?

AutoScalingGroup 需要 LaunchConfiguration

问题是 LaunchConfiguration 需要像 ImageId 和其他参数之类的东西,因为我使用的是容器,所以我没有这些东西。

使用ECS Fargate时LaunchConfiguration应该如何配置?

AWS::AutoScaling::AutoScalingGroup https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html

AWS::AutoScaling::LaunchConfiguration https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html

尝试这种云形成 stack.it 两者都支持 EC2/FARGATE

https://github.com/shakyasunil/aws/blob/master/cloudformation/ecs_service.json

使用此必需参数

TaskDefinitionName
ECSServiceRoleARN
ECSAutoscalingRoleARN

Fargate 不需要 Auto Scaling 组或启动配置,因为 Fargate 直接管理底层基础设施。

这是 FARGATE 自动缩放策略的一个工作示例,如您所见,它既不涉及启动配置也不涉及自动缩放组。您只需插入 ScalingTargetId,并且由于我们将使用目标跟踪缩放策略,因此基础架构将允许您拥有一个目标为最大 CPU 使用率 80% 的系统。当使用量超过该值时,将发生自动缩放。

ExampleCPUAutoScalingPolicy:
  Type: AWS::ApplicationAutoScaling::ScalingPolicy
  Properties:
    PolicyName: ECSCPUAutoScalingPolicy
    PolicyType: TargetTrackingScaling
    ScalingTargetId: !Ref ECSTarget
    TargetTrackingScalingPolicyConfiguration:
      DisableScaleIn: false
      TargetValue: 80
      ScaleInCooldown: 60
      ScaleOutCooldown: 60
      PredefinedMetricSpecification:
        PredefinedMetricType: ECSServiceAverageCPUUtilization