1. 假设replica set使用以下配置文件启动
注:${1}
和${2}
根据自己的实际情况赋值。
假设我们启动三节点复制集,监听以下端口28001、28002、28003,复制集名称为rs0
,启动完成后,需要对复制集进行初始化:
2. 将replica set重启为shard
首先将secondary节点启动为shard,虽然可以通过在启动命令中增加参数--shardsvr
来达到这个目的,但我觉得通过配置文件来启动是个更好的习惯,这样可以更好地跟踪变化。
修改配置文件,增加以下内容:
两个secondary节点都启动完毕之后,在primary节点上执行降级命令,将primary节点降为secondary节点:
然后以同样的方式重启该节点。
3. 启动config server复制集
假设我们启动三节点复制集,监听以下端口29001、29002、29003,复制集名称为configServerReplSet
,启动完成后,需要对复制集进行初始化:
4. 启动mongos
在30001端口上启动mongos,并且使用之前启动的config server复制集作为configDB。
5. 将之前的复制集加入到shard集群
使用以下命令连接mongos:
加入shard集群:
6. 根据之前提供的配置文件模板启动第二个复制集
初始化:
7. 将第二个复制集加入shard
8. 配置shard集群
主要用到的一些命令:
参考链接