首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >蒙古共享集群中的身份验证

蒙古共享集群中的身份验证
EN

Server Fault用户
提问于 2015-08-06 10:59:03
回答 1查看 5.1K关注 0票数 0

我有一个mongo共享集群和副本集:

ShardA副本集:

代码语言:javascript
复制
A1. 10.77.14.241 

A2. 10.77.14.242

AA. 10.77.14.243 Arbiter

/etc/mongo.conf的参数:

代码语言:javascript
复制
#bind_ip=127.0.0.1
auth=true
replSet=ShardB
keyFile=/srv/mongodb/mongodb-keyfile

ShardB副本集:

代码语言:javascript
复制
B1. 10.77.14.244 

B2. 10.77.14.245

BA. 10.77.14.246 Arbiter

/etc/mongo.conf的参数:

代码语言:javascript
复制
#bind_ip=127.0.0.1
auth=true
replSet=ShardB
keyFile=/srv/mongodb/mongodb-keyfile

Config和Mongos服务器:

代码语言:javascript
复制
C1. 10.77.14.247

C2. 10.77.14.248

C3. 10.77.14.249

在/etc/rc.local中启动了所有config mongod和mongos实例:

代码语言:javascript
复制
mongod --configsvr  --logpath /var/log/mongodb/mongod.log --keyFile /srv/mongodb/mongodb-keyfile --fork
mongos --configdb 10.77.14.247:27019,10.77.14.248:27019,10.77.14.249:27019 --port 40000 --logpath /data/mongos.log --keyFile /srv/mongodb/mongodb-keyfile --fork

副本集正常工作。如果我在主成员中插入文档,它将在辅助成员上复制。

我有以下问题:在任何仲裁者上,蒙神配置,mongos -

代码语言:javascript
复制
use admin   
switched to db admin    
mongos> db.auth({user: 'admin', pwd: '12345678'})    
Error: 18 Authentication failed.
0

因此,我不能通过mongos将文档插入到DB。

我必须启用管理员数据库的分片吗?

EN

回答 1

Server Fault用户

回答已采纳

发布于 2015-08-10 10:14:57

我重读了http://docs.mongodb.org/manual/tutorial/enable-authentication-without-bypass/ :)

1)我开始学习C1,C2,C3:

代码语言:javascript
复制
mongod --configsvr  --logpath /var/log/mongodb/mongod.log --fork
mongos --configdb 10.77.14.247:27019,10.77.14.248:27019,10.77.14.249:27019 --port 40000 --logpath /data/mongos.log --fork

2)我在mongos上创建了一个新用户:

代码语言:javascript
复制
use admin
db.createUser(
    {
      user: "admin",
      pwd: "12345678",
      roles: [
         { role: "clusterManager", db: "admin" },
         { role: "userAdminAnyDatabase", db: "admin" }
      ]
    }
)

3)我重新启动了mongos和mongos-keyfile参数的实例:

代码语言:javascript
复制
  mongod --configsvr  --logpath /var/log/mongodb/mongod.log --fork --keyFile /srv/mongodb/mongodb-keyfile
mongos --configdb 10.77.14.247:27019,10.77.14.248:27019,10.77.14.249:27019 --port 40000 --logpath /data/mongos.log --fork --keyFile /srv/mongodb/mongodb-keyfile

4)添加碎片是成功的:

代码语言:javascript
复制
db.auth({user:'admin', pwd: '12345678'})
1

sh.addShard("ShardA/10.77.14.241:27017,10.77.14.242:27017,10.77.14.243:27017")
{ "shardAdded" : "ShardA", "ok" : 1 }

sh.addShard("ShardB/10.77.14.244:27017,10.77.14.245:27017,10.77.14.246:27017")
{ "shardAdded" : "ShardB", "ok" : 1 }
票数 2
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/711281

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档