我正在 AWS 上构建一个内部代理服务,用户可以
- 向服务器发送请求
- 该服务器将请求发送到 ECS 集群中的多个代理容器之一
我不确定获取 ECS 集群中代理容器的 IP 地址的最佳方法是什么。
我可以每 N 秒手动列出一次 IP 并检查是否有新容器加入了 ECS 集群,但我想知道是否有更好的方法?
答案1
您可以收听CloudWatch 事件或者AWS EventBridge 事件与容器启动/拆卸相关。您可以为每个事件触发一个 lambda,然后执行某物,比如将容器IP添加到需要注册的地方。
或者你可以使用ECS 服务发现它使用 DNS 来保存活动容器列表。
最后,您可以让容器在启动时自行注册。这也是一种选择,尽管有点 DIY 风格。
希望有帮助:)