JLa*_*oie 6 amazon-web-services aws-fargate
我在 AWS 上设置了一个 Fargate 集群。我的集群有以下服务:
每个服务都位于同一 VPC 中并具有相同的安全组(任何端口、任何源、任何目标)。VPC 与互联网隔离。
现在,我希望服务器 A 向服务器 B 发送 http 查询。我假设,就像在 Docker swarm 中一样,有一个私有 DNS 将服务名称映射到其私有 IP,并且就像将查询发送到 http ://server-B:4000一样简单。但是,服务器 A 超时,这意味着它无法到达服务器 B。
我在文档中读到,我可以将 2 个容器放在同一个服务中,每个容器侦听不同的端口,这样,由于环回接口,我可以从服务器 A 查询http://127.0.0.1。 0.1:4000和服务器 B 将响应,反之亦然。
但是,我希望能够独立扩展服务器 A 和服务器 B ,因此我认为通过拥有 2 个服务来保持每个服务器彼此独立是有意义的。
我读过,为了让两个任务相互通信,我需要设置一个负载均衡器。来自 Docker Swarm 的世界,通过服务名称查询服务非常容易,并且在幕后,请求被转发到该服务中的容器之一。但它在 AWS Fargate 上似乎并不像那样工作。
问题:
感谢您的帮助,我真的对这个简单的设置感到困惑。
经过查找,发现是由于我在创建服务时没有启用“服务发现”,所以没有创建私有DNS。以下是一些附加文档,准确解释了这些步骤:
https://docs.aws.amazon.com/AmazonECS/latest/developerguide/create-service-discovery.html
| 归档时间: |
|
| 查看次数: |
1210 次 |
| 最近记录: |