请参阅在同一ECS群集中运行的其他服务/任务

时间:2016-06-24 22:43:57

标签: docker microservices amazon-ecs

我知道如何在同一任务中引用“服务”。但是,如何从另一个任务定义中引用一项基本任务? 例如:

  • 服务“mesage-broker”正在运行任务rabbitmq。
    • 服务“user-api”正在运行任务user-api,需要配置为能够连接到rabbitmq。
    • 服务“order-api”正在运行任务order-api,需要配置为能够连接到rabbitmq。

2 个答案:

答案 0 :(得分:0)

将容器标记为必需和容器之间的路由之间存在区别。

假设您正在寻找路由解决方案(a.k.a。服务发现); ECS中没有任何东西可以构建。您可以使用AWS解决方案,即使用与ECS群集中的动态端口绑定很好地集成的应用程序负载均衡器(ALB)。基本思路很简单:从服务A到服务B的请求首先进入负载均衡器(ALB),该请求将请求路由到包含运行/健康服务B实例的所有端口的目标组。

AWS解决方案的缺点是它对于小型设置而言相当昂贵,因为每10(内部)服务至少需要一个ALB。

或者,您可以为服务发现设置第三方解决方案,例如Consul也可以与AWS合作。

答案 1 :(得分:0)

ECS has service discovery built in这使ECS服务可以在Amazon Route 53中以可预测且友好的DNS名称自动注册自己。