首页 > 解决方案 > Amazon ECS 服务发现如何发现动态端口

问题描述

例如,Amazon ECS 服务发现使 ECS 服务可以使用 Amazon Route 53 中的可预测且友好的 DNS 名称自动注册自己backend.corp

但是,假设基于 Web 的应用程序的用例,主机不足以与服务通信 - 还需要端口号,尤其是在主机上使用动态端口分配时(固定容器端口映射到随机主机端口)

如何使用 ECS 服务发现管理动态端口分配?当然,可以使用众所周知的端口,但限制了可以运行 docker 映像的主机数量。

标签: amazon-ecs

解决方案


ECS 服务发现将为每个任务注册一个 SRV 记录,该记录是容器名称和端口的组合(请参阅服务发现注意事项)。您可以查询这些值以查找可以连接的容器列表。

更新:

您如何查询 DNS 将在很大程度上取决于您的特定项目以及所涉及的语言和框架。例如,在 Java 中,您将使用JNDI,在 python 中,您可以使用dnspython库,而在 node 中,您可能会使用内置的dns模块。


推荐阅读