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. Dubbo及注册中心原理

    本文首发于微信公众号[猿灯塔],转载引用请说明出处 今天是猿灯塔“365天原创计划”第4天. 今天呢!灯塔君跟大家讲: 一.Dubbo意义 网站应用的架构变化经历了一个从所有服务分布在一台服务器上(A ...

  2. [译]高性能缓存库Caffeine介绍及实践

    概览 本文我们将介绍Caffeine-一个Java高性能缓存库.缓存和Map之间的一个根本区别是缓存会将储存的元素逐出.逐出策略决定了在什么时间应该删除哪些对象,逐出策略直接影响缓存的命中率,这是缓存 ...

  3. 利用CSS变量实现炫酷的悬浮效果

    最近,我从 Grover网站 上发现以一个好玩儿的悬停动画,这个动画是将鼠标移动到订阅按钮上移动光标,会跟随光标实现相应的彩色渐变. 这个想法很简单,但是它能使这个按钮脱颖而出,人们一下子就注意到它了 ...

  4. 【盗版动归】Codeforces998C——Convert to Ones 归一操作

    嘤嘤嘤,因为最近文化课老师追的紧了+班主任开班会,所以这博客是赶制的赝品 题目: You've got a string a1,a2,…,ana1,a2,…,an, consisting of zer ...

  5. NPOI升级版本问题

    最近做了一个导出Word的功能,需要样式与排版果断选择了NPOI,本以为支持Excel很好,支持Word应该也不会错吧,万万没想到还是挣扎了小一星期. 我的项目是一个13年项目,NPOI版本还很旧,我 ...

  6. day28 封装

    目录 一.什么是封装 二.将封装的属性进行隐藏操作 1 如何隐藏: 1.1 强行访问: 1.2 内部逻辑 三.为何要封装 一.什么是封装 封装是面向对象的三大特性中最核心的一个特性 封装<==& ...

  7. gulp-less打包后calc属性计算不准确的问题

    .step-item{ width: calc((100% - 50px) / 2); &:nth-child(2){ margin-right: 0; } } 这样直接写的话,编译时会直接给 ...

  8. element-ui(vue版)使用switch时change回调函数中的形参传值问题

    需求说明 有多个switch组件 需要知道switch的状态 表格中当前行(scope.row)的数据 问题描述 官方文档中对switch中change的描述: 目前能得到switch的状态值,但是无 ...

  9. Scala 面向对象(三):package 包 (二)

    1 包对象 基本介绍:包可以包含类.对象和特质trait,但不能包含函数/方法或变量的定义.这是Java虚拟机的局限.为了弥补这一点不足,scala提供了包对象的概念来解决这个问题. package ...

  10. MYSQL 之 JDBC(九):增删改查(七)DAO的补充和重构

    DAO重构后的代码 package com.litian.jdbc; import org.apache.commons.beanutils.BeanUtils; import java.sql.*; ...