本文介绍了将独立的服务发现放在Docker Swarm的群集机器中,有什么区别呢?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我无法理解分离的服务发现服务器的需求,同时我们可以通过任何协议将从节点注册到从节点启动时的主节点。托管另一个服务对我来说似乎是多余的。

解决方案





目标是分离自己的容器中的基础架构问题(Discovery服务),与开发工具关注(Swarm)分开。


I am having problem understanding the need of a separated service discovery server while we could register the slave node to the master node at the slave node start-up through whatever protocol. Hosting another service seem redundant to me.

解决方案

Docker Swarm is there to create a cluster of hosts running Docker and schedule containers across the cluster.
It does not include service discovery, which is provided by a backend service, such as etcd, consul or zookeeper.

The DockerCon makes that distinction clear this morning (Nov. 16th, 2015), with the "Docker Stack":


You can see consul.io used in:

That means:

  • Consul is a KV (Key/Value) store which can be plugged into Swarm in order to manage the service discovery aspect.
  • Swarm is the access layer, which is usually the layer that contains a gateway or routing component that allows others to actually reach your services.

The goal is to isolate what is an infrastructure concern (Discovery service) in its own container, separate from a dev tool concern (Swarm).

这篇关于将独立的服务发现放在Docker Swarm的群集机器中,有什么区别呢?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-04 04:59