mongod replica set 实例
2个replica 1个arbiter
1. 安装
按照http://docs.mongodb.org/manual/tutorial/install-mongodb-on-linux/?_ga=1.114039175.1495101086.1419477576,自定义安装到一个目录。
2. 配置
3台机器 第一台 10.66.4.12上
mongod.conf 文件:
systemLog:
destination: file
path: "/home/kuiper/mongod/log/mongod.log"
logAppend: true
storage:
dbPath: "/home/kuiper/mongod/data"
processManagement:
fork: true
net:
port: 27017
replication:
replSetName: "cetus"
确保log和data目录已经存在。
运行 mongod --config mongod.conf
第二台: 192.168.9.40
与以上相同。
然后从客户端连接到其中一台的mongod,运行
config={"_id":"cetus", "members":[{"_id":1, "host":"10.66.4.12:27017"},{"_id":2, "host":"192.168.9.40:27017"}]}
运行 rs.initiate()
成功的话会显示当前是primary, 连接另一台的话会显示成secondary。
再添加一天Arbiter:
配置文件:
systemLog:
destination: file
path: "/home/kuiper/mongod/log2/mongod.log"
logAppend: true
storage:
dbPath: "/home/kuiper/mongod/data2"
journal:
enabled: false
smallFiles: true
processManagement:
fork: true
net:
port: 27018
replication:
replSetName: "cetus"
运行起来后,连接到一个主mongod服务,运行:rs.addArb("192.168.9.41:27018")
到此就搭建起来了。
3. 测试
到主服务上(只能到主服务上),去创建一个db,collection,添加一条记录,然后会在副本上也能看到db,但看不到数据(只能成为主之后才能看到)。
然后把主服务停到,再到副本上去,就能看到数据了。
关闭服务命令:
> use admin;
switched to db admin
> db.shutdownServer();