环境需求: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

结束.

centos7下安装部署mongodb集群(副本集模式)的更多相关文章

  1. Mongodb分布式集群副本集+分片

    目录 简介 1. 副本集 1.1 MongoDB选举的原理 1.2 复制过程 2. 分片技术 2.1 角色 2.2 分片的片键 2.3 片键分类 环境介绍 1.获取软件包 2.创建路由.配置.分片等的 ...

  2. centos7 下 安装部署nginx

    centos7 下 安装部署nginx 1.nginx安装依赖于三个包,注意安装顺序 a.SSL功能需要openssl库,直接通过yum安装: #yum install openssl b.gzip模 ...

  3. kubernetes上安装MongoDB-3.6.5集群副本集方式

    一.安装部署: 想直接一步创建集群的小伙伴直接按以下步骤安装(再往后是记录自己出过的错): 1.生成docker镜像: docker build -t 144.202.127.156/library/ ...

  4. Ubuntu下安装部署MongoDB以及设置允许远程连接

    最近因为项目原因需要在阿里云服务器上部署MongoDB,操作系统为Ubuntu,网上查阅了一些资料,特此记录一下步骤. 1.运行apt-get install mongodb命令安装MongoDB服务 ...

  5. 搭建高可用mongodb集群—— 副本集

    转自:http://www.lanceyan.com/tech/mongodb/mongodb_repset1.html 在上一篇文章<搭建高可用MongoDB集群(一)——配置MongoDB& ...

  6. MongoDB 高可用集群副本集+分片搭建

    MongoDB 高可用集群搭建 一.架构概况 192.168.150.129192.168.150.130192.168.150.131 参考文档:https://www.cnblogs.com/va ...

  7. MongoDB集群——副本集

    1. 副本集的结构及原理 副本集包括三种节点:主节点.从节点.仲裁节点.主节点负责处理客户端请求,读.写数据, 记录在其上所有操作的oplog: 从节点定期轮询主节点获取这些操作,然后对自己的数据副本 ...

  8. window配置mongodb集群(副本集)

    参数解释: dbpath:数据存放目录 logpath:日志存放路径 pidfilepath:进程文件,有利于关闭服务 logappend:以追加的方式记录日志(boolean值) replSet:副 ...

  9. Centos7下安装部署oracle数据库方法及问题汇总

    目标:在centos7上配置oracle数据库服务器,并在win7上面使用pl/sql成功访问该oracle数据库 系统环境: 服务器:centos7 64位 客户端:win7 64位 注意cneto ...

随机推荐

  1. ES7的新特性

    ES7的新特性 ES7 特性: 1.Array.prototype.includes2.Exponentiation Operator(求幂运算) 一,Array.prototype.includes ...

  2. InputFormat的数据划分、Split调度、数据读取

    在执行一个Job的时候,Hadoop会将输入数据划分成N个Split,然后启动相应的N个Map程序来分别处理它们.数据如何划分?Split如何调度(如何决定处理Split的Map程序应该运行在哪台Ta ...

  3. loadrunner -vuser

    在每个负载生成器上,安装 remote agent dispatcher(process) 和 loadrunner agent 控制器指示remote agent dispatcher 在load ...

  4. 创建简单的表单Demo

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. VS2017设置背景主题

    一.VS2017设置背景主题 1.下载并安装Color Theme Editor for Visual Studio 2017和MoeIDE (图中红圈中的两个插件,工具-扩展和更新-联机-右上角搜索 ...

  6. nginx反向代理(动静分离)

    使用反向代理(动静分离)可以让nginx专注静态内容,把动态请求交给apache来处理,发挥各自的优势,而且整个架构更加清晰: 这里假设你已经搭建好了nginx环境; 为了简单起见,就不用源码编译安装 ...

  7. react 入坑笔记(四) - React 事件绑定和传参

    React 事件处理 建议:在了解 js 的 this 取值后食用更佳. 一.react 与 Html 中用法的异同和注意点 html 中的绑定事件的写法: <button onclick=&q ...

  8. Vue数组更新及过滤排序

    前面的话 Vue为了增加列表渲染的功能,增加了一组观察数组的方法,而且可以显示一个数组的过滤或排序的副本.本文将详细介绍Vue数组更新及过滤排序 变异方法 Vue 包含一组观察数组的变异方法,它们将会 ...

  9. 【python练习题】程序9

    #题目:暂停一秒输出. import time for i in range(5): print (i) time.sleep(1)

  10. 用于Azure功能的Visual Studio 2017工具

    今天我们很高兴地宣布发布第一个预览的Visual Studio 2017工具的Azure功能.这个预览介绍了一些令人兴奋的变化,我们以前的版本.此外,除了支持Visual Studio 2017之外, ...