所有,我配置了没有身份验证的副本集没有问题。
我使用以下命令在3 VM上安装。 mongod --install --replSet" MSWrs" --verbose -vvvvv --logpath c:/logs/mongo-server.log
在mongodb shell中
var democonfig=
{_id: "MSWrs", members:
[{_id:0,host: 'xxxxx1.cloudapp.net:27017',priority:10},
{_id:1,host:'xxxxx2.cloudapp.net:27017'},
{_id:2,host:'xxxxx3.cloudapp.net:27017',arbiterOnly:true}]};
然后启动
rs.initiate(democonfig)
它成功启动了。工作得很好。
但我需要添加身份验证,因此我将admin用户帐户添加到admin db for primary,secondary和arbiter。
我使用以下各项添加了用户:
use admin
db.addUser("admin","password")
then re-install service with --auth
mongod --auth --install --replSet "MSWrs" --verbose -vvvvv --logpath c:/logs/mongo-server.log
启动服务后,主要和次要说rs.Secondary仲裁者说rs.RECOVERING如下所示,任何想法哪里做错了?我读了一些说我可以使用security key file和另一个地方说not really的地方。任何人都知道如何使用安全密钥文件或我需要做什么额外的步骤才能使副本集工作?我可以使用Robomongo与身份验证连接到所有这些,只是副本集不会显示主要。请帮忙。