6

我想知道如何使用新的 Docker 1.12 swarm mode 服务模型启动 mongodb 副本集。启动服务允许您指定容器副本的数量,在最小副本集情况下为 3。但是如果 Docker 自己运行单个容器,则如何为副本集主指定参数,所有容器都具有相同的名称服务(用于通过覆盖网络联系容器)?

副本集容器如何以不同的名称相互联系?mongodb1,mongodb2,mongodb3 - 这些必须是不同的服务吗?

直接运行 dockers 'run' 命令非常简单......现在对于状态完整的容器(副本集成员)来说似乎有点混乱,而不是无状态容器,其中服务的所有容器都是相同的...

任何指针或链接都会有所帮助。

4

1 回答 1

2

我意识到,通过 Kubernetes 之上的副本集的官方 mongodb 指南,您必须为每个副本集成员声明一个新服务。

因此,对于基本副本集,您声明了 3 个服务,一个主服务,两个辅助服务 - service__primary、service__secondary_1、service_secondary_2。

然后,这些 swarm 服务中的每一个都只是代理/负载平衡到单个容器,该容器正在运行 mongod 进程。

于 2017-01-08T00:46:18.797 回答