gpt4 book ai didi

mongodb - Docker mongo 分片

转载 作者:可可西里 更新时间:2023-11-01 10:11:40 28 4
gpt4 key购买 nike

我正在尝试使用 创建 mongo 分片.我有:

配置服务器:

docker run -it --rm --net=xnet -p 27016:27016 \
--hostname xmongo-config-1 --name xmongo-config-1 \
-v $PWD/docker/.data/xmongo-config-1:/data/db \
mongo:latest --port 27016 --replSet xmongo-config --configsvr

mongos(路由器)服务器:

docker run -it --rm --net=xnet -p 27015:27015 \
--hostname xmongo-mongos --name xmongo-mongos \
-v $PWD/docker/.data/xmongo-mongos:/data/db \
mongo:latest mongos --port 27015 --configdb configserver/xmongo-config-1:27016

现在当我运行时:

docker exec -it xmongo-config-1 mongo --port 27016 --eval 'db.version()'

我看到结果 MongoDB 服务器版本:3.4.9
但是当我运行时:

docker exec -it xmongo-mongos mongo --port 27015 --eval 'db.version()'

我明白了:

MongoDB shell version v3.4.9
connecting to: mongodb://127.0.0.1:27015/
2018-02-16T05:54:26.434+0000 W NETWORK [thread1] Failed to connect to 127.0.0.1:27015, in(checking socket for error after poll), reason: Connection refused
2018-02-16T05:54:26.434+0000 E QUERY [thread1] Error: couldn't connect to server 127.0.0.1:27015, connection attempt failed :
connect@src/mongo/shell/mongo.js:237:13
@(connect):1:6
exception: connect failed

最佳答案

错误#1

我在 mongos 日志中发现了这个错误:

[mongosMain] No primary detected for set configserver

这意味着我必须为我的配置副本集初始化主要的,因此运行这个:

docker exec -it xmongo-config-1 mongo --port 27016 --eval '
rs.initiate({ _id: "xmongo-config", members: [
{ _id : 0, host : "xmongo-config-1:27016" }
]});
'

错误 #2

在 init mongos 行中替换

--configdb configserver/xmongo-config-1:27016

--configdb xmongo-config/xmongo-config-1:27016

结果

有效!)

关于mongodb - Docker mongo 分片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48820882/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com