mongodb 副本集搭建

环境
192.168.1.191   master
192.168.1.192   slave,arbiter
OS: ubuntu14.04
mongodb: mongodb-linux-x86_64-ubuntu1404-v3.2-latest.tgz

tar xf mongodb-linux-x86_64-ubuntu1404-v3.2-latest.tgz -C /usr/local/
mv /usr/local/mongodb-linux-x86_64-ubuntu1404-v3.2 /usr/local/mongodb
编写配置文件
###master
dbpath=/mongodata/
logpath=/mongodata/log/master.log
pidfilepath=/mongodata/master.pid  
directoryperdb=true
logappend=true  
replSet=buka  
bind_ip=192.168.1.191
port=27017
oplogSize=10000  
fork=true
noprealloc=true

###slave
dbpath=/mongodata/slave
logpath=/mongodata/log/slaver.log
pidfilepath=/mongodata/slaver.pid  
directoryperdb=true
logappend=true
replSet=buka
bind_ip=192.168.1.192
port=27017
oplogSize=10000
fork=true
noprealloc=true

###arbiter
dbpath=/mongodata/arbiter
logpath=/mongodata/log/arbiterr.log
pidfilepath=/mongodata/arbiterr.pid
directoryperdb=true
logappend=true
replSet=buka
bind_ip=192.168.1.192
port=27018
oplogSize=10000
fork=true
noprealloc=true

##创建目录,建议和安装目录分开
    mkdir /mongodata
    mkdir /mongodata/log

##slave和arbiter
    mkdir /mongodata/slave
    mkdir /mongodata/arbiter
    mkdir /mongodata/log

##启动
    cd /usr/local/mongo
    cp bin/mongo /usr/bin/
    cp bin/mongod /usr/bin/

mongod -f master.conf
    mongod -f slave.conf
    mongod -f arbiter.conf

##配置主,备,仲裁节点
    mongo 192.168.1.191            
    cfg={_id:"buka",members:[{_id:0,host:'192.168.1.191:27017',priority:2},{_id:1,host:'192.168.1.192:27017',priority:1},{_id:2,host:'192.168.1.192:27018',arbiterOnly:true}]};
    rs.initiate(cfg)
    rs.status()

##在master节点创建admin db和用户
    mongo 192.168.1.191
    use admin
    db.createUser({user:"admin",pwd:"asd12345",roles:[{ role:"root",db:"admin"}]})
    db.auth('admin','asd12345')  #返回1代表认证成功

##配置节点间加密认证和auth
    在一个节点生成key文件,并拷贝到其它节点
    openssl rand -base64 100 > keyfile0
    chmod 600 keyfile0

##在各节点配置文件中加入下面两行
    auth=true
    keyFile=keyfile0

##重启各节点服务
    mongo 192.168.1.191
    use admin
    db.auth('admin','asd12345')

##创建一个库
    use test1
    db.createUser({user:"test1",pwd:"asd12345",roles:[{ role:"readWrite",db:"test1"}]})
##认证

db.auth("test1","asd12345")   ##返回1代表认证成功

MongoDB副本集部署的更多相关文章

  1. mongodb 副本集部署

    1.安装三节点linux环境:196.168.1.111,196.168.1.112,192.168.1.113(三节点可彼此ping通) 2.三节点安装mongodb,参考https://blog. ...

  2. Mongodb 副本集分片(二)---mongodb副本集部署脚本详解

    分享下,最近做的一主一从一仲裁的示例,如有需要,大家可以扩展成一主两从一仲裁. 大家可以看到  我的集群名字沿用了默认的neunnm,如果是其他的话   大家注意修改. 需要辅助文件hosts.con ...

  3. mongodb副本集原理及部署记录

    工作原理 1.副本集之间的复制是通过oplog日志现实的.备份节点通过查询这个集合就可以知道需要进行复制的操作 2.oplog是节点中local库中的一个固定的集合,在默认情况下oplog初始化大小为 ...

  4. MongoDB副本集(一主两从)读写分离、故障转移功能环境部署记录

    Mongodb是一种非关系数据库(NoSQL),非关系型数据库的产生就是为了解决大数据量.高扩展性.高性能.灵活数据模型.高可用性.MongoDB官方已经不建议使用主从模式了,替代方案是采用副本集的模 ...

  5. NoSQL数据库Mongodb副本集架构(Replica Set)高可用部署

    NoSQL数据库Mongodb副本集架构(Replica Set)高可用部署 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. MongoDB 是一个基于分布式文件存储的数据库.由 C ...

  6. MongoDB副本集(一主一备+仲裁)环境部署-运维操作记录

    MongoDB复制集是一个带有故障转移的主从集群.是从现有的主从模式演变而来,增加了自动故障转移和节点成员自动恢复.MongoDB复制集模式中没有固定的主结点,在启动后,多个服务节点间将自动选举产生一 ...

  7. Mongodb副本集+分片集群环境部署记录

    前面详细介绍了mongodb的副本集和分片的原理,这里就不赘述了.下面记录Mongodb副本集+分片集群环境部署过程: MongoDB Sharding Cluster,需要三种角色: Shard S ...

  8. Mongodb副本集+分片集群环境部署

    前面详细介绍了mongodb的副本集和分片的原理,这里就不赘述了.下面记录Mongodb副本集+分片集群环境部署过程: MongoDB Sharding Cluster,需要三种角色: Shard S ...

  9. MongoDB 带访问控制的副本集部署

    当你需要用到一个MongoDB 副本集集群,用于开发测试时, 可以通过下面的步骤简单完成. 版本及环境 MongoDB4.4  Centos6.5  一. 下载安装 MongoDB Server 及 ...

随机推荐

  1. Java 从入门到进阶之路(二十五)

    在之前的文章我们介绍了一下 Java 中的  集合框架中的Collection 的子接口 List的 增删改查和与数组间相互转换的方法,本章我们来看一下 Java 集合框架中的Collection 的 ...

  2. egret canvas的style

    <canvas width="1920" height="1080" style=" cursor:auto;//鼠标样式 positon:ob ...

  3. 序列推荐(transformer)

    目录 Attention演进(RNN&LSTM&GRU&Seq2Seq + Attention机制) LSTM GRU Seq2Seq + Attention机制 Attent ...

  4. JavaScript基础对象创建模式之静态成员(027)

    在支持“类”的面向对象语言中,静态成员指的是那些所有实例对象共有的类成员.静态成员实际是是“类”的成员,而非“对象”的成员.所以如果 MathUtils类中有个叫 max()的静态成员方法,那么调用这 ...

  5. Docker(六)容器数据卷

    容器数据卷 docker的理念回顾 将应用和环境打包成一个镜像 需求:数据可以持久化和同步 使用数据卷 指定路径挂载 docker run -it -v 主机目录:容器内目录 # 测试 [root@h ...

  6. nginx location 知识知多少

    写在之前 众所周知 nginx location 路由转发规则多种多样,尤其是 [ = | ~ | ~* | ^~ ] 这些前缀是什么意思.root 与 alias 是否可以区分开,nginx 作为反 ...

  7. 并发工具CyclicBarrier源码分析及应用

      本文首发于微信公众号[猿灯塔],转载引用请说明出处 今天呢!灯塔君跟大家讲: 并发工具CyclicBarrier源码分析及应用 一.CyclicBarrier简介 1.简介 CyclicBarri ...

  8. 本地连接虚拟机db2V10.5遇到的问题

    在连接虚拟机数据库时发现自己不知道db2的端口号是多少,百度上说50000,60000的都有,所以还是决定自己试一下,并记录下这个过程 # 首先切换到db2inst1的用户 su - db2inst1 ...

  9. TJOI2013 奖学金—大根堆实现(洛谷P3963)

    奖学金 题目描述 小张学院有 \(c\) 名学生,第 \(i\) 名学生的成绩为 \(ai\) ​,要获得的奖学金金额为 \(bi\) . 要从这 \(c\) 名学生中挑出 \(n\) 名学生发奖学金 ...

  10. Python——查看目录下所有的目录和文件

    写程序我们经常会遇到需要遍历某一个目录下的所有文件这个操作,然而python有现成的库,只需要2个循环就可以搞定. import os def all_path(dirname): result = ...