美文网首页
mongodb集群搭建 (仲裁模式)

mongodb集群搭建 (仲裁模式)

作者: 一只浩子 | 来源:发表于2021-12-28 19:03 被阅读0次
    一、搭建流程
    1. 准备三台CentOS服务器

    2. 创建mongodb目录
      mkdir -p /yuanben/mongodb

    3. 上传mongodb安装包到yuanben/soft/目录,复制安装包到其它两台服务器
      scp mongodb-linux-x86_64-rhel70-4.0.12.tgz 192.168.0.12:/yuanben/soft/
      scp mongodb-linux-x86_64-rhel70-4.0.12.tgz 192.168.0.13:/yuanben/soft/

    4. 解压安装包,并将解压后的目录重命名为:mongodb,并移动到/yuanben/mongodb目录下,并根据实际情况修改配置文件和启动脚本
      4.1 解压
      tar -zxvf mongodb-linux-x86_64-rhel70-4.0.12.tgz
      4.2 把解压包放在/yuanben/mongodb/目录下
      mv mongodb-linux-x86_64-rhel70-4.0.12 /yuanben/mongodb/
      4.3 并重名为 mongodb
      cd /yuaben/mongodb
      ll
      mv mongodb-linux-x86_64-rhel70-4.0.12 mongodb

    5. 根据服务器规划,在每台机器上分别创建:master,slaver,arbiter 目录

    6. 启动mongodb,顺序 master slaver arbiter
      直接执行启动脚本(注意给启动脚本添加可执行权限)
      启动成功后,将启动脚本添加到rc.local实现开机启动
      6.1 给start.sh 授权
      chmod a+x /yuanben/mongodb/master/start.sh
      chmod a+x /yuanben/mongodb/slaver/start.sh
      chmod a+x /yuanben/mongodb/arbiter/start.sh

      chmod a+x /yuanben/mongodb/*/start.sh
      6.2 启动
      ./start.sh

    7. 通过客户端 mongo 进行测试 是否都能connect
      测试连接
      /yuanben/mongodb/mongodb/bin/mongo 192.168.0.11:27017
      查看是否运行
      ps -ef | grep mongodb

    8. 通过客户端mongo 进入master 设置 replica set模式

    8.1 主节点执行
    /yuanben/mongodb/mongodb/bin/mongo 192.168.0.11:27017
    use admin

    mgdb_rscfg={ _id:"yuanben-rs", members:[ {_id:0,host:'192.168.0.11:27017',priority:2}, {_id:1,host:'192.168.0.12:27017',priority:1},{_id:2,host:'192.168.0.13:27017',arbiterOnly:true}] };
    rs.initiate(mgdb_rscfg);

    通过rs.status(); 查看是否生效 生效后 mater slave的客户端命令显示皆有变化哦

    8.2 设置从节点读权限
    让slave节点支持读操作,在slave节点上修改mongorc.js启动文件

    vi ~/.mongorc.js

    加入以下内容即可:

    setSlaveOk();
    function setSlaveOk() {
    rs.slaveOk();
    print('slaveOk has been setted!’);
    }

    需要重启这个节点
    kill -2 12595
    ./start.sh

    8.3 创建用户
    use admin;

    db.createUser(
    {
    user: “root”,
    pwd: “xxxxxx”,
    roles: [ { role: "root", db: "admin" } ]
    }
    );

    db.createUser(
    {
    user: “scms”,
    pwd: “xxxxxx”,
    roles: [ { role: "readWrite", db: "scms" },{ role: "dbOwner", db: "scms" } ]
    }
    );

    二、截图
    mongodb目录.png 授权start.png
    mongo启动成功.png useradmin.png initiate.png

    相关文章

      网友评论

          本文标题:mongodb集群搭建 (仲裁模式)

          本文链接:https://www.haomeiwen.com/subject/mxvpqrtx.html