博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MongDB集群部署
阅读量:4878 次
发布时间:2019-06-11

本文共 3407 字,大约阅读时间需要 11 分钟。

参数解释:

 dbpath:数据存放目录

logpath:日志存放路径

pidfilepath:进程文件,方便停止mongodb

directoryperdb:为每一个数据库按照数据库名建立文件夹存放

logappend:以追加的方式记录日志

replSet:replica set的名字

bind_ip:mongodb所绑定的ip地址

port:mongodb进程所使用的端口号,默认为27017

oplogSize:mongodb操作日志文件的最大大小。单位为Mb,默认为硬盘剩余空间的5%

fork:以后台方式运行进程

noprealloc:不预先分配存储

mkdir -p /mongodb/data/master   mkdir -p /mongodb/data/slaver   mkdir -p /mongodb/data/arbiter    #三个目录分别对应主,备,仲裁节点
#master.conf  dbpath=/mongodb/data/master  logpath=/mongodb/log/master.log  pidfilepath=/mongodb/master.pid  directoryperdb=true  logappend=true  replSet=testrs  bind_ip=10.10.148.130  port=27017  oplogSize=10000  fork=true  noprealloc=true
#slaver.conf  dbpath=/mongodb/data/slaver  logpath=/mongodb/log/slaver.log  pidfilepath=/mongodb/slaver.pid  directoryperdb=true  logappend=true  replSet=testrs  bind_ip=10.10.148.131  port=27017  oplogSize=10000  fork=true  noprealloc=true
#arbiter.conf  dbpath=/mongodb/data/arbiter  logpath=/mongodb/log/arbiter.log  pidfilepath=/mongodb/arbiter.pid  directoryperdb=true  logappend=true  replSet=testrs  bind_ip=10.10.148.132  port=27017  oplogSize=10000  fork=true  noprealloc=true
./monood -f master.conf  ./mongod -f slaver.conf  ./mongod -f arbiter.conf
./mongo 10.10.148.130:27017   #ip和port是某个节点的地址  >use admin  >cfg={ _id:"testrs", members:[ {_id:0,host:'10.10.148.130:27017',priority:2}, {_id:1,host:'10.10.148.131:27017',priority:1},   {_id:2,host:'10.10.148.132:27017',arbiterOnly:true}] };  >rs.initiate(cfg)             #使配置生效
rs.status(){          "set" : "testrs",          "date" : ISODate("2013-01-05T02:44:43Z"),          "myState" : 1,          "members" : [                  {                          "_id" : 0,                          "name" : "10.10.148.130:27017",                          "health" : 1,                          "state" : 1,                          "stateStr" : "PRIMARY",                          "uptime" : 200,                          "optime" : Timestamp(1357285565000, 1),                          "optimeDate" : ISODate("2013-01-04T07:46:05Z"),                          "self" : true                  },                  {                          "_id" : 1,                          "name" : "10.10.148.131:27017",                          "health" : 1,                          "state" : 2,                          "stateStr" : "SECONDARY",                          "uptime" : 200,                          "optime" : Timestamp(1357285565000, 1),                          "optimeDate" : ISODate("2013-01-04T07:46:05Z"),                          "lastHeartbeat" : ISODate("2013-01-05T02:44:42Z"),                          "pingMs" : 0                  },                  {                          "_id" : 2,                          "name" : "10.10.148.132:27017",                          "health" : 1,                          "state" : 7,                          "stateStr" : "ARBITER",                          "uptime" : 200,                          "lastHeartbeat" : ISODate("2013-01-05T02:44:42Z"),                          "pingMs" : 0                  }          ],          "ok" : 1  }
如果配置正在生效,其中会包含如下信息:"stateStr" : "RECOVERING"

同时可以查看对应节点的日志,发现正在等待别的节点生效或者正在分配数据文件。

现在基本上已经完成了集群的所有搭建工作。至于测试工作,可以留给大家自己试试。一个是往主节点插入数据,能从备节点查到之前插入的数据(查询备节点可能会遇到某个问题,可以自己去网上查查看)。二是停掉主节点,备节点能变成主节点提供服务。三是恢复主节点,备节点也能恢复其备的角色,而不是继续充当主的角色。二和三都可以通过rs.status()命令实时查看集群的变化。

转载于:https://www.cnblogs.com/OnlyDreams/p/7428726.html

你可能感兴趣的文章
在 Linux 下使用任务管理器
查看>>
11个炫酷的Linux终端命令大全
查看>>
关于一些JS的运算符
查看>>
移动端web页面使用position:fixed问题总结
查看>>
linux git 安装方法
查看>>
提高pythonn性能相关模块
查看>>
一道编程题: 在1~n之间选择若干个数,使其和为m
查看>>
Mybatis分页插件
查看>>
ASP.NET MVC IOC 之AutoFac攻略
查看>>
【BZOJ 4031】 4031: [HEOI2015]小Z的房间 (Matrix-Tree Theorem)
查看>>
final关键字的作用
查看>>
Bzoj4567---背单词
查看>>
[Python基础]006.IO操作
查看>>
一个非常棒的jQuery 评分插件--好东西要分享
查看>>
Statement和PreparedStatement的异同
查看>>
软件测试中的路径覆盖
查看>>
代码库工具:SVN
查看>>
成为优秀设计师的十大条件
查看>>
上传本地文件到github仓库基本操作
查看>>
ubuntu15.10安装后换源之后更新源出现Could not open lock file/var/lib/dpkg/lock等提示
查看>>