一个集群上的AWS ECS多任务定义

时间:2019-01-14 09:01:08

标签: amazon-web-services docker amazon-ecs

我正在构建AWS基础架构。

我也是AWS基础知识的新手。

我有三个docker容器,所以我必须将其部署到ECS。

下面的代码是我开始服务的逐步步骤。

aws ecs create-cluster --cluster-name test

ecs-cli configure --cluster test --region ap-northeast-2 --default-launch-type EC2 --config-name test

ecs-cli configure profile --access-key AWS_ACCESS_KEY --secret-key AWS_SECRET_KEY --profile-name test

ecs-cli up --keypair my_keypair --instance-role TestRole --instance-type t2.micro --cluster-config test --force

ecs-cli compose -f ecs-docker-compose.yml up --create-log-groups --cluster-config test

运行它之后,将创建一个ec2实例,一个任务定义和一个集群。

任务定义已连接到集群。

但是我想知道,如何在一个集群上运行多个任务定义?

要进行持续部署,请在此处执行我的方案。 (假设alb已连接)

  1. 创建新任务定义

  2. 将新任务定义连接到集群

  3. 如果新任务定义成功连接,请删除旧任务定义

总体来说,我的问题。

  1. 我的连续部署方案正确吗?

  2. 如何将多个任务定义连接到一个集群?

谢谢。

1 个答案:

答案 0 :(得分:0)

您可以使用服务和滚动更新here来实现。

服务是任务和资源的定义,很像kubernetes中的部署(如果您更熟悉)。您可以为服务指定要使用的任务定义版本,然后最终将该服务更新为使用其他(假设是新的)任务定义版本/修订版,这将触发该任务定义的替换。

因此,您的原则是滚动更新所使用的原则,它已经由Service处理。不必手动配置该过程。