我正在进行一个项目,使用docker-swarm建立云架构。我知道使用swarm可以部署服务的副本,这意味着多个容器将运行该镜像以提供请求。
我还了解到docker有一个内部负载均衡器来管理此请求分配。
然而,我需要帮助理解以下内容:
假设我有一个容器,将服务公开为REST API或Web应用程序。如果在swarm中部署了多个容器(副本),并且我有其他容器(运行某些应用程序)与此HTTP/REST服务通信。
那么,在编写这些应用程序时,我使用哪个 IP:端口组合?是运行这些服务的任何工作节点IP吗?这样做是否会适当地分发负载,即使在运行相同服务的其他工作节点/管理节点之间也是如此?
还是应该调用管理节点,由其负责适当路由(即使管理节点没有运行此特定服务的容器)?
谢谢。