ECS集群

本章我们创建一个ECS集群,并探索它的一些机制

创建ECS集群

进入ECS服务,点击Create cluster

image-20220430203026734

为集群命名为ecs1, 选择默认的vpc:

image-20220430203131115

选择部署EC2,EC2实例类型选择c5.large, 最小数量设置为2台,(提前创建好webserver.pem文件,以便后面登录到EC2上):

image-20220430203301760

点击创建。

检查ECS集群

进入到上一步创建的ECS页面,我们看到ECS会自动创建ASG,里面的EC2由ASG来管理:

image-20220430203927364

进入到其中一台EC2的页面,ECS为我们的机器自动创建并绑定好了IAM Role:

image-20220430204513946

进入到这个Role,发现绑定了AmazonEC2ContainerServiceforEC2Role这条policy,里面声明了访问ecr、创建log stream、注册ecs实例等权限:

image-20220430204554490


登录到EC2,欢迎界面上输出ECS,说明使用的是ECS定制版的AMI:

image-20220430204835349

访问user-data,发现实例在启动时,将ECS集群信息写到相关的配置文件中:

curl -w '\n' 169.254.169.254/latest/user-data

image-20220430204952938


ECS Agent以Docker容器的形式运行,以将EC2注册到ECS中心:

image-20220430205017307

image-20220430205756320

检查CloudFormation

进入CloudFormation页面,发现新建了一个Stack,这个Stack里管理着我们所有的ECS集群资源。

当我们创建一个ECS集群时,其实是创建了一个CloudFormation Stack;当我们删除集群时,本质上也是把对应的Stack删除:

image-20220430205419155