mongod副本集的安装配置
阿里云環(huán)境準(zhǔn)備。一共2臺機(jī)器,每臺機(jī)器安裝2個mongodb,一主二從一裁決,相關(guān)信息如圖:
1、在176 機(jī)器上解壓mongodb-linux-x86_64-rhel62-3.4.9.tgz
[root@iZbp1aygu9fiwba38yn9u6Z local]#tar xzvf mongodb-linux-x86_64-rhel62-3.4.9.tgz
2、解壓完成之后,改名為mongodb27017,并復(fù)制一份,名稱為mongodb27018。另外一臺機(jī)器177的操作一樣。
[root@iZbp1aygu9fiwba38yn9u6Z local]#mv mongodb-linux-x86_64-rhel62-3.4.9 mongodb27017
[root@iZbp1aygu9fiwba38yn9u6Z local]# cp -rf mongodb27017 mongodb27018
3、修改配置文件,配置文件信息如下圖:
因?yàn)槭菧y試安裝,一機(jī)2個mongodb,注意日志文件路徑、數(shù)據(jù)存放路徑、pid存放路徑【上圖未用紅框標(biāo)注】、端口號要保持不同。集群名稱和生成的mongodb.key文件內(nèi)容和權(quán)限要保持一致,mongdb.key的路徑要不一樣,比如mongdb27018這個文件的路徑就是/usr/local/mongodb27018/mongodb.key。特別注意:dbPath后面的路徑db27017 一定是一個目錄。
4、所有集群內(nèi)的mongodb都配置完成之后,啟動每一個mongodb應(yīng)用。
[root@iZbp1aygu9fiwba38yn9u6Z local]# mongodb27017/bin/mongod -f mongodb27017/mongodb.conf
這里分別啟動了4個mongodb應(yīng)用。
5、登錄其中一個mongodb
[root@iZbp1aygu9fiwba38yn9u6Z local]#mongodb27017/bin/mongo 172.16.178.176:27017
6、登入之后,配置集群信息
7、初始化集群信息
8、使用admin 數(shù)據(jù)庫,創(chuàng)建一個用戶
9、給這個用戶賦予相應(yīng)的其他權(quán)限
[root@iZbp1aygu9fiwba38yn9u6Z local]# mongodb27017/bin/mongo 172.16.178.176:27017
MongoDB shell version v3.4.9
connecting to: 172.16.178.176:27017
MongoDB server version: 3.4.9
rs1:PRIMARY> use admin
switched to db admin
rs1:PRIMARY>db.grantRolesToUser( "root" , [ { role: "dbOwner", db: "admin" },{ "role": "clusterAdmin", "db": "admin" },
{ "role": "userAdminAnyDatabase", "db": "admin" },
{ "role": "dbAdminAnyDatabase", "db": "admin" },
{ role: "root", db: "admin" } ]);
10、先停掉所有從機(jī)和裁決的mongodb,再停掉主mongodb。停的時候可以在控制臺使用db.shutdownServer()或者kill -15 pid【pid,每一個mongodb的進(jìn)程號】,絕對不要使用kill -9 pid.
11、修改配置文件,取消認(rèn)證配置的注釋,使認(rèn)證方式生效。從機(jī)如果不需要認(rèn)證,可以保持auth 這項(xiàng)為注釋,取消注釋的內(nèi)容如下。
security:
keyFile: "/usr/local/mongodb27017/mongodb.key"
clusterAuthMode: "keyFile"
authorization: "enabled"
12、生成一個mongodb.key并賦予600權(quán)限
[root@iZbp1aygu9fiwba38yn9u6Z mongodb27017]#openssl rand -base64 666 > /usr/local/mongodb27017/mongodb.key
[root@iZbp1aygu9fiwba38yn9u6Z mongodb27017]#chmod 600 mongodb.key
13、分別傳到其他三個mongodb.
[root@iZbp1aygu9fiwba38yn9u6Z mongodb27017]#cp mongodb.key /usr/local/mongodb27018/
[root@iZbp1aygu9fiwba38yn9u6Z mongodb27017]#scp mongodb.key root@172.16.178.177:/usr/local/mongodb27017/
14、先啟動主mongodb27017,再啟動其他的mongodb。
15、登錄查看,直接查看rs.status(),提示沒有驗(yàn)證。
16、切換到admin數(shù)據(jù)庫,使用db.auth()驗(yàn)證,再行查看,如下圖:
17、創(chuàng)建一個test數(shù)據(jù)庫,直接use test.
18、給test數(shù)據(jù)庫插入一條數(shù)據(jù)
db.test.insert({"name":"hello"})
19、查詢test數(shù)據(jù)
20、給test創(chuàng)建一個可讀寫的用戶
rs1:PRIMARY>db.createUser({user: "xxxx", pwd: "xxxxxxx", roles: [{ role: "readWrite", db: "test" }]})
轉(zhuǎn)載于:https://blog.51cto.com/nhylovezyh/2104239
總結(jié)
以上是生活随笔為你收集整理的mongod副本集的安装配置的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python 一些方法的时间测试
- 下一篇: 五种js判断是否为整数类型方式