我正在尝试使用配置服务器,路由器,机器A中的一个分片和机器B中的另一个分片在2台机器上完成分片。由于我是初学者,而且也找不到很多东西,因此我很难做到这一点在线文档/教程。我已经启动了两个mongod实例,一个作为配置服务器,另一个作为分片,但是对于如何进行操作一无所知。
以下是我的两个mongod(config和shard)conf文件中的分片配置:
配置服务器:
sharding:
clusterRole: configsvr
碎片:
sharding:
clusterRole : shardsvr
根据文档,下一步是执行命令rs.initiate(),但是我不需要复制。我仍然尝试执行以防万一并收到以下错误:
{
"ok" : 0,
"errmsg" : "This node was not started with the replSet option",
"code" : 76,
"codeName" : "NoReplicationEnabled"
}
分片时是否必须进行复制?如何在两台机器之间进行分片而不复制?
答案 0 :(得分:1)
那是不可能的,请参见sharding Options:
注意
设置
sharding.clusterRole
要求mongod实例为 复制运行。将实例部署为副本集 成员,请使用replSetName
设置并指定 副本集。
但是您可以将副本集设置为只有一个成员,这没问题。 副本集将只有主副本集,才能正常工作。