【发布时间】:2017-02-20 18:59:47
【问题描述】:
我希望能够使用 ALB (ELBv2) 将流量路由到由给定服务的任务公开的多个端口映射。
例子--
服务 A 由 1 个使用任务定义 B 运行的任务组成。
任务定义 B 有一个“容器”,它在内部在两个不同的端口号(端口 8000 和端口 9000,都是 TCP)上运行两个守护进程。因此,任务定义 B 有两个端口需要映射到 ALB。
我不太担心 ALB 公开的端口(它们不必是 8000 和 9000,但如果是的话会有所帮助)。
- my-lb-dns.com:8000 -> myservice:8000
- my-lb-dns.com:9000 -> myservice:9000
关于如何创建多个听众和目标群体来实现这一目标的任何想法?控制台 UI 中的任何内容都不允许我这样做,而且 API 也不是很有帮助。
非常感谢!
【问题讨论】:
-
嗨@ultimoo,我正在为同样的情况而苦苦挣扎,你设法解决了吗?
-
@shmish111 不,从今天开始,您不能让 ecs 服务通过负载均衡器公开多个端口。
-
嗨@ultimoo,我也有类似的场景——尽管不涉及应用程序负载平衡——使用Apache Zookeeper。每个 Zookeeper 实例需要三个端口用于三个不同的目的(端口 2181、2888、3888)。正是通过这些端口,这些 Zookeeper 实例的集群(通常有 3 到 5 个)相互通信。但是,如果正如您所说(并且正如我在 AWS GUI 上看到的),ECS 容器无法将更多该端口映射到主机,我怀疑这也行不通。我在这里的结论是否正确?
-
是的,你是对的。
标签: amazon-web-services docker amazon-elb amazon-ecs