提问

#楼主# 2020-4-2

跳转到指定楼层
本帖最后由 sinnet-cloud 于 2020-4-2 16:39 编辑

上一篇内容使用的就是EC2的80端口mapping到Docker中的80端口,所以在同一个EC2主机上无法复用端口,而且也无法做到自动扩展,我们这一篇文章就来解决这个问题,并且使用ALB自动将流量负载到我们ECS集群中的服务,做到自动化的添加和维护。

首先我们先要来到任务定义中,点击我们的任务定义,

2-1.png
选择其中的一个版本,后创建新的修订,
2-2.png

进入到创建任务定义新修订,点击咱们的simple-app,将端口映射的主机端口修改为"0",容器的端口不变,然后点击保存。任务就会生成新的修订,

2-3.png
2-4.png

接下来就要在我们的服务中将任务进行更新了,点击更新按钮,将版本选择咱们刚才的新版本,为了测试端口可用复用,我将任务数量改成了5个。然后点击下一步。

2-5.png
2-6.png
2-7.png

最后点击更新。
这是大家可用看到,刚才的版本4的两个容器还在继续跑着,然后又创建出来5个版本5的docker

2-8.png

下面我们对新版本的服务进行验证,这是我们的容器的动态端口是从32768到60000中的一个随机端口。

2-9.png

2-10.png

2-11.png

随后等等一定的时间,版本4的任务就都被版本5所迭代了。
这时候就需要ALB来进行负载了。

2-12.png
2-13.png
2-15.png

在服务中也需要将ALB配置在服务中,配置好容器名称和目标组,这样在ECS cluster下面的实例就会自动加入到负载均衡中的目标组中,通过ALB中的服务控制规则

2-16.png

2-12.png

然后在负载均衡的侦听器中,通过规则将80端口的请求转发到该目标组即可。


2-18.png

下面我们通过ALB的DNS名称进行访问,即可访问到我们的docker中的WEB page。

2-19.png

今天的内容就到这里,下一期继续给大家介绍ECS中的docker自动扩展,和一些基本原理。

【原创声明】本文为光环云原创文章,作者张国鑫。转载请注明作者及出处。

公众号码.png


-----------------------------------------
相关文章:

【ECS系列1】使用AWS ECS进行docker集群的启动和管理

【ECS系列-3】Amazon ECS实例的依赖条件

转播转播
回复

使用道具

成为第一个回答人

B Color Link Quote Code Smilies
光环云社区 |京ICP备18044167号-13|

京公网安备 11010102003758号