MongoDB值Replcia Set集群环境部署

           说明:该集群环境的硬件环境与本人博客的“Hadoop+Flume+Kafka+Zookeeper集群环境搭建”的环境是一致的。

          1.服务器环境

             主节点:192.168.100.103

             备节点:192.168.100.104

             备节点:192.168.100.105

             仲裁节点:192.168.100.106

     2.下载MongoDB(https://www.mongodb.org/)mongodb-linux-i686-3.0.5.tgz

     3.用tar -zxf mongodb-linux-i686-3.0.5.tgz命令将源程序解压到/home/bms目录下

     4.配置mongodb

       1)在主节点上创建如下目录

          mkdir -p /home/bms/mongodb-3.0.5/data{master,slaveer,arbiter}

          mkdiir -p /home/bms/conf

          mkdiir -p /home/bms/logs

       2)然后在data目录下创建如下文件

          touch master.pid

          touch slaver.pid

          touch arbiter.pid

       3)然后在logs目录下创建如下文件

          touch master.log

          touch slaver.log

          touch arbiter.log

       4)然后在conf目录下创建如下文件

          touch mongodb-master.conf

          touchmongodb-slaver.conf

          touchmongodb-arbiter.conf

       5) 然后在mongodb-master.conf中添加如下内容

  
  
  
  
  
  
  
  
 
 
      
      
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
             
             
dbpath=/home/home/mongodb-3.0.5/data/master
logpath=/home/ home/mongodb-3.0.5/logs/master.log
pidfilepath=/home/ home/mongodb-3.0.5/data/master.pid
directoryperdb=true
logappend=true
replSet=test_set1
bind_ip=192.168.100.103
port=10111
oplogSize=1000
fork=true
noprealloc=true


 6) 然后在mongodb-slaver.conf中添加如下内容
dbpath=/home/bms/mongodb-3.0.5data/slaver
logpath=/home/bms/mongodb-3.0.5/logs/slaver.log
pidfilepath=/home/bms/mongodb-3.0.5/data/slaver.pid
directoryperdb=true
logappend=true
replSet=test_set1
bind_ip=192.168.100.104
port=10111
oplogSize=1000
fork=true
noprealloc=true
smallfiles=true
7) 然后在mongodb-arbiter.conf中添加如下内容
dbpath=/home/bms/mongodb-3.0.5/data/slaver
logpath=/home/bms/mongodb-3.0.5/logs/slaver.log
pidfilepath=/home/bms/mongodb-3.0.5/data/slaver.pid
directoryperdb=true
logappend=true
replSet=test_set1
bind_ip=192.168.100.106
port=10111
oplogSize=1000
fork=true
noprealloc=true
smallfiles=true
8)
/home/bms/mongodb-3.0.5整个目录分别拷贝到192.168.100.104、192.168.100.105、192.168.100.106对应的目录下

注意:需要将192.168.100.105上home/bms/mongodb-3.0.5/conf/mongodb-slaver.conf文件中的192.168.100.104改成192.168.100.105
然后启动mongodb,master和slave机器上做如下操作:

./bin/mongod -f ../conf/mongodb-master.conf
./bin/mongod -f ../conf/mongodb-slaver.conf
./bin/mongod -f ../conf/mongodb-arbiter.conf(192.168.100.106上操作,操作目录是:/home/bms/mongodb-3.0.5/bin)

9) 然后在将192.168.100.103机器上进行如下操作
 
    

 1
 2
 3
 4
 5
 6
 7
      
      
./mongo 192.168.100.103:10111
>use admin
>cfg={_id:"test_set1", members:[{_id:0,host:'192.168.110.103:10111',priority:3}, {_id:1,host:'192.168.100.104:10111',priority:2}, {_id:2,host:'192.168.100.105:10111',priority:1}, {_id:3,host:'192.168.100.106:20111',arbiterOnly:true}]};
>rs.initiate(cfg); #使配置生效
{
"ok" : 1
}

    PRIMARY> use test;
    switched to db test
    PRIMARY> db.user.insert({name:'jack',age:80});
    PRIMARY> db.user.find();
    { "_id" : ObjectId("55069502bcdd8c8031522ddb"), "name" : "jack", "age" : 80 }
       

      

    SECONDARY> rs.status();
    {
        "set" : "test_set1",
        "date" : ISODate("2015-07-31T15:37:17Z"),
        "myState" : 2,
        "syncingTo" : "192.168.100.104:10111",
        "members" : [
                {
                        "_id" : 0,
                        "name" : "192.168.110.103:10111",
                        "health" : 0,
                        "state" : 8,
                        "stateStr" : "(not reachable/healthy)",
                        "uptime" : 0,
                        "optime" : {
                                "t" : 1426494722000,
                                "i" : 1
                        },
                        "optimeDate" : ISODate("<span style="background-color: rgb(240, 240, 240);">2015-07-31T15:37:17Z</span>"),
                        "lastHeartbeat" : ISODate("<span style="background-color: rgb(240, 240, 240);">2015-07-31T15:37:17Z</span>"),
                        "lastHeartbeatRecv" : ISODate("<span style="background-color: rgb(240, 240, 240);">2015-07-31T15:37:17Z</span>"),
                        "pingMs" : 0
                },
                {
                        "_id" : 1,
                        "name" : "192.168.100.104:10111",
                        "health" : 1,
                        "state" : 1,
                        "stateStr" : "PRIMARY",
                        "uptime" : 656,
                        "optime" : {
                                "t" : 1426494722000,
                                "i" : 1
                        },
                        "optimeDate" : ISODate("<span style="background-color: rgb(240, 240, 240);">2015-07-31T15:37:17Z</span>"),
                        "lastHeartbeat" : ISODate("<span style="background-color: rgb(240, 240, 240);">2015-07-31T15:37:17Z</span>"),
                        "lastHeartbeatRecv" : ISODate("<span style="background-color: rgb(240, 240, 240);">2015-07-31T15:37:17Z</span>"),
                        "pingMs" : 4,
                        "electionTime" : {
                                "t" : 1426494955000,
                                "i" : 1
                        },
                        "electionDate" : ISODate("<span style="background-color: rgb(240, 240, 240);">2015-07-31T15:37:17Z</span>")
                },
                {
                        "_id" : 2,
                        "name" : "192.168.100.105:10111",
                        "health" : 1,
                        "state" : 2,
                        "stateStr" : "SECONDARY",
                        "uptime" : 1142,
                        "optime" : {
                                "t" : 1426494722000,
                                "i" : 1
                        },
                        "optimeDate" : ISODate("<span style="background-color: rgb(240, 240, 240);">2015-07-31T15:37:17Z</span>"),
                        "infoMessage" : "syncing to: 192.168.100.104:10111",
                        "self" : true
                },
                {
                        "_id" : 3,
                        "name" : "192.168.100.106:20111",
                        "health" : 1,
                        "state" : 7,
                        "stateStr" : "ARBITER",
                        "uptime" : 656,
                        "lastHeartbeat" : ISODate("<span style="background-color: rgb(240, 240, 240);">2015-07-31T15:37:17Z</span>"),
                        "lastHeartbeatRecv" : ISODate("<span style="background-color: rgb(240, 240, 240);">2015-07-31T15:37:17Z</span>"),
                        "pingMs" : 0
                }
        ],
        "ok" : 1
    }

   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值