mongoDB副本集搭建

准备三台服务器:

  10.175.120.131(主节点)

  10.175.121.134(副本节点)

  10.175.121.136(副本节点)

1.分别在每台服务器上安装MongoDB,并通过配置文件启动服务,配置文件如下:

dbpath=/data/db               #指定数据库路径logpath=/data/mongodb.log     #指定日志文件路径logappend=true                #在日志文件持续添加port=27017                    #端口号bind_ip=0.0.0.0               #允许远程访问fork=true                     #后台运行replSet=admin                 #设置副本集名称

2.进入MongoDB后台管理 Shell 

./momgo

3.使用admin数据库

> use admin

4. 定义副本集配置变量,这里的 _id:”admin” 和配置文件中的“replSet=admin” 要保持一致

> config = { _id:"admin",members:[{_id:0,host:"10.175.120.131:27017"},{_id:1,host:"10.175.121.134:27017"},{_id:2,host:"10.175.121.136:27017"}]}

5.初始化副本集配置

> rs.initiate(config)

6.查看集群节点的状态

> rs.status()

输出:

{        "set" : "admin",        "date" : ISODate("2018-09-21T08:52:24.064Z"),        "myState" : 1,        "term" : NumberLong(3),        "heartbeatIntervalMillis" : NumberLong(2000),        "optimes" : {                "lastCommittedOpTime" : {                        "ts" : Timestamp(1537519943, 1),                        "t" : NumberLong(3)},                "readConcernMajorityOpTime" : {                        "ts" : Timestamp(1537519943, 1),                        "t" : NumberLong(3)},                "appliedOpTime" : {                        "ts" : Timestamp(1537519943, 1),                        "t" : NumberLong(3)},                "durableOpTime" : {                        "ts" : Timestamp(1537519943, 1),                        "t" : NumberLong(3)}},        "members" : [{                        "_id" : 1,                        "name" : "10.175.120.131:27017",                        "health" : 1, "state" : 1,                        "stateStr" : "PRIMARY",                        "uptime" : 5874,                        "optime" : {                                "ts" : Timestamp(1537519943, 1),                                "t" : NumberLong(3)},                        "optimeDate" : ISODate("2018-09-21T08:52:23Z"),                        "electionTime" : Timestamp(1537514082, 1),                        "electionDate" : ISODate("2018-09-21T07:14:42Z"),                        "configVersion" : 1,                        "self" : true},{                        "_id" : 2,                        "name" : "10.175.121.134:27017",                        "health" : 1,                        "state" : 2,                        "stateStr" : "SECONDARY",                        "uptime" : 5861,                        "optime" : {                                "ts" : Timestamp(1537519933, 1),                                "t" : NumberLong(3)},                        "optimeDurable" : {                                "ts" : Timestamp(1537519933, 1),                                "t" : NumberLong(3)},                        "optimeDate" : ISODate("2018-09-21T08:52:13Z"),                        "optimeDurableDate" : ISODate("2018-09-21T08:52:13Z"),                        "lastHeartbeat" : ISODate("2018-09-21T08:52:23.012Z"),                        "lastHeartbeatRecv" : ISODate("2018-09-21T08:52:23.584Z"),                        "pingMs" : NumberLong(0),                        "syncingTo" : "10.175.120.131:27017",                        "configVersion" : 1},{                        "_id" : 3,                        "name" : "10.175.121.136:27017",                        "health" : 1,                        "state" : 2,                        "stateStr" : "SECONDARY",                        "uptime" : 5866,                        "optime" : {                                "ts" : Timestamp(1537519933, 1),                                "t" : NumberLong(3)},                        "optimeDurable" : {                                "ts" : Timestamp(1537519933, 1),                                "t" : NumberLong(3)},                        "optimeDate" : ISODate("2018-09-21T08:52:13Z"),                        "optimeDurableDate" : ISODate("2018-09-21T08:52:13Z"),                        "lastHeartbeat" : ISODate("2018-09-21T08:52:23.013Z"),                        "lastHeartbeatRecv" : ISODate("2018-09-21T08:52:23.558Z"),                        "pingMs" : NumberLong(0),                        "syncingTo" : "10.175.120.131:27017",                        "configVersion" : 1}],        "ok" : 1,        "operationTime" : Timestamp(1537519943, 1),        "$clusterTime" : {                "clusterTime" : Timestamp(1537519943, 1),                "signature" : {                        "hash" : BinData(0,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="),                        "keyId" : NumberLong(0)}}
}

输出部分参数说明:

"health" : 1,              #代表机器正常 "stateStr" : "PRIMARY",    #代表是主节点,可读写,其中有以下几下状态1. STARTUP:刚加入到复制集中,配置还未加载
2. STARTUP2:配置已加载完,初始化状态
3. RECOVERING:正在恢复,不适用读
4. ARBITER: 仲裁者
5. DOWN:节点不可到达
6. UNKNOWN:未获取其他节点状态而不知是什么状态,一般发生在只有两个成员的架构,脑裂
7. REMOVED:移除复制集
8. ROLLBACK:数据回滚,在回滚结束时,转移到RECOVERING或SECONDARY状态
9. FATAL:出错。查看日志grep “replSet FATAL”找出错原因,重新做同步
10. PRIMARY:主节点
11. SECONDARY:备份节点

MongoDB高可用集群搭建相关推荐

  1. mycat mysql好可用架构_想要学会MyCat高可用集群搭建,但是这些知识点却还玩不明白?...

    一.集群架构 1.MyCat实现读写分离架构 在我前面的文章, 我已经讲解过了通过MyCat来实现MySQL的读写分离, 从而完成MySQL集群的负载均衡 , 如下面的结构图: 但是以上架构存在问题 ...

  2. RabbitMQ高级指南:从配置、使用到高可用集群搭建

    本文大纲: 1. RabbitMQ简介 2. RabbitMQ安装与配置 3. C# 如何使用RabbitMQ 4. 几种Exchange模式 5. RPC 远程过程调用 6. RabbitMQ高可用 ...

  3. RabbitMQ 高级指南:从配置、使用到高可用集群搭建

    博主说:在项目中,通过 RabbitMQ,咱们可以将一些无需即时返回且耗时的操作提取出来,进行异步处理,而这种异步处理的方式大大的节省了服务器的请求响应时间,从而提高了系统的吞吐量. 正文 1 Rab ...

  4. RabbitMQ高可用集群搭建

    RabbitMQ高可用集群搭建 摘要:实际生产应用中都会采用消息队列的集群方案,如果选择RabbitMQ那么有必要了解下它的集群方案原理一般来说,如果只是为了学习RabbitMQ或者验证业务工程的正确 ...

  5. Hadoop HA 高可用集群搭建

    Hadoop HA 高可用集群搭建 一.首先配置集群信息 1 vi /etc/hosts 二.安装zookeeper 1.解压至/usr/hadoop/下 1 tar -zxvf zookeeper- ...

  6. Hadoop HA高可用集群搭建(Hadoop+Zookeeper+HBase)

    一.服务器环境 主机名 IP 用户名 密码 安装目录 master 192.168.142.124 root xxx /usr/hadoop-2.6.5/ slave1 192.168.142.125 ...

  7. Hadoop 3.1.2(HA)+Zookeeper3.4.13+Hbase1.4.9(HA)+Hive2.3.4+Spark2.4.0(HA)高可用集群搭建

    目录 目录 1.前言 1.1.什么是 Hadoop? 1.1.1.什么是 YARN? 1.2.什么是 Zookeeper? 1.3.什么是 Hbase? 1.4.什么是 Hive 1.5.什么是 Sp ...

  8. RabbitMQ 高可用集群搭建

    RabbitMQ 高可用集群搭建 1 集群简介 1.1 集群架构 ​ 当单台 RabbitMQ 服务器的处理消息的能力达到瓶颈时,此时可以通过 RabbitMQ 集群来进行扩展,从而达到提升吞吐量的目 ...

  9. k8s高可用集群搭建部署

    简介 k8s普通搭建出来只是单master节点,如果该节点挂掉,则整个集群都无法调度,K8s高可用集群是用多个master节点加负载均衡节点组成,外层再接高可用分布式存储集群例如ceph集群,实现计算 ...

最新文章

  1. 常用MySQL的命令集锦
  2. Eclipse插件开发中File和IFile的转换
  3. 设计企业网站大纲_哈尔滨企业网站设计费用,网站开发公司_华阳网络
  4. android手机连接无线路由器上网设置,手机连接无线网络怎么设置?手机Wifi无线网设置教程...
  5. 余弦信号频谱表达式_信号傅里叶变换系列文章(1):傅里叶级数、傅里叶系数以及傅里叶变换...
  6. web developer tips (55):多项目解决方案中设置启动项
  7. 六一儿童节特辑|哪部“奥特曼”才是90后的心中最爱??数据分析师来告诉你...
  8. weblogic集群部署与负载均衡_集群,负载均衡,分布式的讲解和多台服务器代码同步...
  9. PayPal付款状态解释-中英文对照
  10. 银联手机POS,支付黑科技
  11. 怎么在win下装python requests
  12. 计算机发邮件试题,计算机考试题库:计算机网络模拟练习题(4)
  13. ip段各个号段的含义
  14. studio 3t注册码脚本
  15. 专题地图的编制——整理复习
  16. 自定义控件其实很简单 三
  17. Arm居然为Cortex-M发布了专属显卡驱动!
  18. 我也写点八卦系文章:从李彦宏八卦说起
  19. APP微信支付的后台实现
  20. linux中文谐音,GNU和LINUX到底怎么个发音?

热门文章

  1. 一段H264数据的分析
  2. 定制一个网络文件系统
  3. IP/TCP/UDP/RTP/RTCP 包结构图
  4. 杀死应用进程 android,如何杀死Android应用程序启动的logcat进程?
  5. html div初始隐藏点击可见_3种CSS3移动手机隐藏菜单UI界面代码解析/附源码下载...
  6. py-faster-rcnn代码roidb.py的解读
  7. This is Me!——回顾第一个项目的前前后后
  8. oracle一个表拆成多个表,oracle – 在oracle表中将多个以逗号分隔的值拆分为多行...
  9. dateframe行列插入和删除操作
  10. String.slice