ECS-кластер является только логическим пространством имен внутри службы ECS. Фактические экземпляры EC2, на которых будут выполняться задачи, не управляются самим ECS, их необходимо создавать отдельно.
Мастер консоли ECS запускает шаблон Cloudformation, который содержит определение кластера ECS и экземпляры EC2. Шаблон содержит параметры, которые вы видите в мастере консоли.
Возможно, вы сможете повторно использовать этот шаблон, в противном случае используйте шаблон Cloudformation, как показано ниже. При этом используется Amazon ECS, оптимизированный для ECS , который содержит все необходимые приложения.
AppServerLaunchConfig:
Type: AWS::AutoScaling::LaunchConfiguration
Properties:
ImageId: "ami-c91624b0"
# instance role must have permissions to join ECS cluster
IamInstanceProfile: !Ref InstanceProfile
KeyName: !Ref KeyName
InstanceType: t2.micro
SecurityGroups: [ !Ref InstanceSecurityGroup ]
UserData:
Fn::Base64: !Sub |
#!/bin/bash
# join cluster with this name
echo ECS_CLUSTER=myclustername >> /etc/ecs/ecs.config
AppServerGroup:
Type: AWS::AutoScaling::AutoScalingGroup
Properties:
MaxSize: 2
MinSize: 0
DesiredCapacity: 1
LaunchConfigurationName: !Ref AppServerLaunchConfig
VPCZoneIdentifier:
- !Ref SomeSubnetId
ECSCluster:
Type: AWS::ECS::Cluster
DependsOn: AppServerGroup
Properties:
ClusterName: myclustername