环境需求: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. axios的增删改查。

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

  2. [转帖]Windows注册表内容详解

    Windows注册表内容详解 来源:http://blog.sina.com.cn/s/blog_4d41e2690100q33v.html 对 windows注册表一知半解 不是很清晰 这里学习一下 ...

  3. java语句中的重定向函数

    重定向后面就不能转发了,所以return null

  4. C# Note4:XML序列化和反序列化(含加密解密等)

    前言 在项目中,我们经常用到各种配置文件,比如xml文件.binary文件等等,这里主要根据实践经验介绍下xml文件的序列化和反序列化(毕竟最常用). 实践背景:我要做一个用户管理功能,用户账号信息存 ...

  5. mongodb的安装方法

    下载安装 mongodb官网下载地址:https://www.mongodb.org/downloads#produc...直接下载.msi文件并安装到指定目录即可.我的安装路径是D:\mongodb ...

  6. 【转】解决Maxwell发送Kafka消息数据倾斜问题

    最近用Maxwell解析MySQL的Binlog,发送到Kafka进行处理,测试的时候发现一个问题,就是Kafka的Offset严重倾斜,三个partition,其中一个的offset已经快200万了 ...

  7. github上测试服出现bug,如何回滚并获得合并之前的分支

    使用场景: 当我们提交了一个pr,但是该pr合并之后,经过在测试测试有问题,需要回滚.这个时候主master代码将会被回滚到提交你的pr之前的代码.而你的pr由于已经被合并过了,所以无法继续提交. 这 ...

  8. linux中$1的意思

    $1 在shell中成为“位置参数”,表示传入的第一个参数.在shell脚本主体中,表示shell脚本的第一个参数.用在shell脚本函数里时,表示的是函数的第一个入参.

  9. Java中的super()使用注意

    1)super(参数):调用基类中的某一个构造函数(应该为构造函数中的第一条语句)2)this(参数):调用本类中另一种形成的构造函数(应该为构造函数中的第一条语句)3)super: 它引用当前对象的 ...

  10. jmeter 启动报错:not able to find java executable or version

    1 运行cmd输入:java -version 查看 提示没有命令 2 查看环境变量path 3 执行 %JAVA_HOME% 提示找不到文件件 4 修改 文件夹名称 5 运行cmd java -ve ...