1 service-discovery docker docker-swarm
我在理解分离服务发现服务器的需求时遇到问题,而我们可以通过任何协议在从节点启动时将从节点注册到主节点。托管另一项服务对我来说似乎是多余的。
Docker Swarm用于创建运行 Docker 的主机集群并在集群中调度容器。
它不包括服务发现,它由后端服务提供,例如 etcd、consul 或 zookeeper。
- 第一个问题:服务注册和发现是一个基础设施问题,而不是应用程序问题。
- 第二个问题:当基础设施和应用程序实现相互不可知时,实现服务注册和发现是很困难的。
DockerCon 在今天早上(2015 年 11 月 16 日)通过“Docker Stack”明确了这一区别:

(图片来自@laurelcomics)
Docker 网络通过支持具有可插拔基础设施组件的接口 (DNS) 来解决这些问题,这些组件遵循通用 KV 接口。
你可以看到consul.io用于:
getaddrinfo ENOTFOUND ”这意味着:
(图片来自Ladislav Gazo撰写的“使用 Docker、Consul 和 nginx 进行轻松路由和服务发现”一文)
目标是将什么是基础设施问题(发现服务)隔离在它自己的容器中,与开发工具问题(Swarm)分开。
| 归档时间: |
|
| 查看次数: |
230 次 |
| 最近记录: |