您的位置:首页 > 数据库 > Mongodb

centos7下安装部署mongodb集群(副本集模式)

2017-11-26 15:49 956 查看
环境需求:Mongodb集群有三种模式: Replica Set, Sharding,Master-Slaver。

      这里部署的是Replica Set模式。

测试环境: 这里副本集(Replica Set)采用一主一备一仲裁模型:

      


            


配置步骤

  1.下载mongodb

    MongoDB官网下载中心:MongoDB Download Center

    mongodb 3.4.10下载地址:https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-3.4.10.tgz

  2. 解压并创建目录

    [root@server-1 ~]# tar zxvf mongodb-linux-x86_64-rhel70-3.4.10.tgz

    [root@server-1 ~]# mv mongodb-linux-x86_64-rhel70-3.4.10 mongodb    //为了方便简洁,改名

    


    


    同样的,在server-2和server-3上也解压并改名(略)

    接着创建相关目录:

    [root@server-1 ~]# mkdir -p /date/mongodb/primary    //在server-1上建立主数据存放目录

    [root@server-1 ~]# mkdir /etc/mongodb/      //即将存放primary的配置文件

    [root@server-2 ~]# mkdir -p /data/mongodb/secondary    //在server-2上建立从数据存放目录

    [root@server-2 ~]# mkdir /etc/mongodb/      //即将存放secondary的配置文件

    [root@server-3 ~]# mkdir -p /data/mongodb/arbiter    //在server-3上建立仲裁数据存放目录

    [root@server-3 ~]# mkdir /etc/mongodb/      //即将存放arbiter的配置文件

  3. 新建配置文件

    [root@server-1 ~]# vim /etc/mongodb/primary.conf    //新建主配置文件,内容如下:

      


    

      #PRIMARY.CONF
      dbpath=/data/mongodb/primary
      logpath=/data/mongodb/primary.log
      pidfilepath=/data/mongodb/primary.pid
      #keyFile=/data/mongodb/mongodb.key
      directoryperdb=true
      logappend=true
      replSet=google
      bind_ip=192.168.1.21
      port=27017
      #auth=true
      oplogSize=100
      fork=true
      noprealloc=true
      #maxConns=4000

    [root@server-2 ~]# vim /etc/mongodb/secondary.conf    //secondary的配置文件,如下:

      


    [root@server-3 ~]# vim /etc/mongodb/arbiter.conf    // arbiter的配置文件内容如下

      


    保存后,退出;

  4. 启动mongodb服务

    [root@server-1 ~]# ./mongodb/bin/mongod -f /etc/mongodb/primary.conf    //启动主

    [root@server-2 ~]# ./mongodb/bin/mongod -f /etc/mongodb/secondary.conf    //启动从

    [root@server-3 ~]# ./mongodb/bin/mongod -f /etc/mongodb/arbiter.conf    //启动仲裁

    


  5. 将节点配置组成集群

    找一台节点,这里就在server-1操作:

    [root@server-1 ~]# ./mongodb/bin/mongo 192.168.1.21:27017    //使用mongo命令登录,格式:mongo IP:PORT

    


    接着:

    > use admin    //直接回车

    > cfg={ _id:"google",members:[{_id:0,host:'192.168.1.21:27017',priority:2},{_id:1,host:'192.168.1.22:27017',priority:1},{_id:2,host:'192.168.1.23:27017',arbiterOnly:true}] };

    


    接着:

    > rs.initiate(cfg)    //使配置生效

    


    说明:cfg名字可选,只要跟mongodb参数不冲突,_id为Replica Set名字,members里面的优先级priority值高的为主节点,

        对于仲裁点一定要加上arbiterOnly:true,否则主备模式不生效。

        查看是否生效:rs.status()

        下面会显示字样:"ok" : 1

结束.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: