linux中搭建MongoDB Replset

来源:互联网 发布:php购物车提交订单 编辑:程序博客网 时间:2024/05/01 17:33

搭建环境

两台虚拟机:10.5.117.111|10.5.117.112

将在上面起实例 master:10.5.117.111:27017

两个slave :10.5.117.111:27018 | 10.5.117.112:27017

arbiter:10.5.117.112:27018

建立文件目录

111|112两台相同

首先解压到MongoDB包到/data/mongo/下

创建数据目录:/data/mongo/db1 、/data/mongo/db2

日志目录:/data/mongo/log1、/data/mongo/log2

keyFile目录 :/data/mongo/db1/key 、 /data/mongo/db2/key

创建keyFile文件

111|112可相同

(可以使用openssl生成一个复杂性高的私钥:openssl rand -base64 753)

$ echo "私钥值" >/data/mongo/db1/key/key

$ echo "私钥值" >/data/mongo/db2/key/key


搭建集群环境

在111|112上执行如下指令。其中参数--dbpath|--logpath需要调整

$./mongod --dbpath=/data/mongo/db1 --logpath=/data/mongo/log1 --port 27017 -replSet myset


然后登陆随意一台MongoDB实例

> config= {_id:"myset",version:1,members:[{_id:0,host:"10.5.117.111:27017,priority:10},{_id:1,host:"10.5.117.111:27018,priority:9},{_id:2,host:"10.5.117.112:27017,priority:9},{_id:3,host:"10.5.117.112:27018,priority:9,arbiterOnly:true}]}

>rs.initiate(config)

>rs.conf()    可查看相关信息

登录到master

>mongo 10.5.117.110:27017

>use admin

>db.addUser('admin','admin);

>rs.slaveOk


可在slave上查看到刚添加的用户


启动认证的Replset

关闭所有实例

重新使用指令启动

$./mongod --dbpath=/data/mongo/db1 --logpath=/data/mongo/log1 --port 27017 -replSet myset --keyFile /data/mongo/db1/key/key --fork


加入到开机启动项

vim /etc/rc.lock

中加入:

rm -rf /data/mongo/db1/*.lock
rm -rf /data/mongo/db2/*.lock
./mongod --dbpath=/data/mongo/db2 --logpath=/data/mongo/log2/mongod.log --port 27018 --replSet myset --keyFile /data/mongo/db2/key/key --fork
./mongod --dbpath=/data/mongo/db1 --logpath=/data/mongo/log1/mongod.log --port 27017 --replSet myset --keyFile /data/mongo/db1/key/key --fork 

关联链接有:

http://duoku.blog.51cto.com/2489043/1160053

http://blog.chinaunix.net/uid-7249348-id-223586.html

http://docs.mongodb.org/v2.2/administration/replica-sets/

http://www.cnblogs.com/wly923/archive/2013/04/14/3020663.html

http://blog.csdn.net/azhao_dn/article/details/7305709

http://www.dotblogs.com.tw/newmonkey48/archive/2012/12/05/85431.aspx

http://www.myexception.cn/database/1269706.html

http://www.16kan.com/post/185682.html

原创粉丝点击