1.mongodb启动顺序
(1)config节点
mongod -f /mongodb/mongodb.conf
(2)shard节点(依赖于config)
mongod -f /mongodb/mongodb.conf
(3)mongos
mongos -f /mongodb/mongodb.conf
登陆不同类型:
mongo --host config1:27019
mongo --host shard11:27010
mongo --host mongos1:8635
2.分片集群开启认证
(1)设置密码文件
openssl rand -base64 753 >> /mongodb/KeyFile
chmod 600 /mongodb/KeyFile
scp到所有节点
(2)所有节点执行
vi mongodb.conf
keyFile=/mongodb/KeyFile —添加
然后按照顺序重启所有节点
3.创建用户
mongos和config共用一套用户密码系统
mongo --host config1:27019 -u “rwuser” --authenticationDatabase “admin” -p’xx’
mongo --host mongos1:9635 -u “rwuser” --authenticationDatabase “admin” -p’xx’
每个shard1,shard2单独使用一套用户密码系统
(1)admin管理员,开启认证后失效
use admin
db.createUser({user: “rwuser”, pwd: “xxx”,roles: [ { role: “userAdminAnyDatabase”, db: “admin”}]});
(2)admin管理员,开启认证后仍然有效
use admin
db.createUser({user: “rwuser”,pwd:“xx”,roles:[“clusterAdmin”,“userAdminAnyDatabase”,“dbAdminAnyDatabase”,“readWriteAnyDatabase” ]});
(3)读写用户,指定数据库
use test
db.createUser({user: “testuser”, pwd: “xx”,roles: [ { role: “readWrite”, db: “test”}]});
(4)只读用户,指定数据库
db.createUser({user: “testuser”, pwd: “xx”,roles: [ { role: “read”, db: “test”}]});
删除用户
use admin
db.dropUser(“rwuser”)