接上一篇博客:

http://www.cnblogs.com/xiaoit/p/4479066.html

1:首先创建3台虚拟机作为配置环境

IP1:192.168.91.128

IP2:192.168.91.129

IP3:192.168.91.130

2:下载MongoDB 2.6版本

https://fastdl.mongodb.org/win32/mongodb-win32-x86_64-2008plus-2.6.9.zip

3:解压

tar -zxvf mongodb-linux-x86_64-2.6.9.zip

mv mongodb-linux-x86_64-2.6.9 mongodb

  

4:在mongodb目录创建 data目录和 log 目录 和conf配置文件

同时保证data和log目录有可读写权限

在3台服务器上做如上配置

5:编辑配置文件 vi mongo.conf

在IP1:192.168.91.128上

#日志目录
logpath=/root/software/mongodb/log/mongod #数据目录
dbpath=/root/software/mongodb/data #日志以追加方式添加
logappend=true # 开启后台进程运行
fork = true #端口
port = 27017 #副本集名称
replSet=gechongrepl/192.168.91.129:27017

  

在IP2:192.168.91.129上:

#日志目录
logpath=/root/software/mongodb/log/mongod #数据目录
dbpath=/root/software/mongodb/data #日志以追加方式添加
logappend=true # 开启后台进程运行
fork = true #端口
port = 27017 #副本集名称
#192.168.91.128#replSet=gechongrepl/192.168.91.129:27017
replSet=gechongrepl/192.168.91.128:27017

在IP3:192.168.91.130上

#日志目录
logpath=/root/software/mongodb/log/mongod #数据目录
dbpath=/root/software/mongodb/data #日志以追加方式添加
logappend=true # 开启后台进程运行
fork = true #端口
port = 27017 #副本集名称
#192.168.91.128#replSet=gechongrepl/192.168.91.129:27017
#192.168.91.129#replSet=gechongrepl/192.168.91.128:27017
replSet=gechongrepl/192.168.91.129:27017 , 192.168.91.128:27017

  

6:用如上的配置文件分别启动mongod

在IP1:192.168.91.128上启动mongod

> config_repl={_id:'gechongrepl',members:[
... {_id:0,host:'192.168.91.128:27017',priority:10},
... {_id:1,host:'192.168.91.129:27017',priority:9},
... {_id:2,host:'192.168.91.130:27017',priority:9}]}
{
"_id" : "gechongrepl",
"members" : [
{
"_id" : 0,
"host" : "192.168.91.128:27017",
"priority" : 10
},
{
"_id" : 1,
"host" : "192.168.91.129:27017",
"priority" : 9
},
{
"_id" : 2,
"host" : "192.168.91.130:27017",
"priority" : 9
}
]
}

  

> rs.initiate(config_repl);
{
"startupStatus" : 4,
"info" : "gechongrepl/192.168.91.129:27017",
"ok" : 0,
"errmsg" : "all members and seeds must be reachable to initiate set"
}

报错了。尝试在IP1上面:telnet 192.168.91.130 27017 发现不通。关掉这几台服务器的iptables重新执行如上命令。

> rs.initiate(config_repl);
{
"info" : "Config now saved locally. Should come online in about a minute.",
"ok" : 1
}

至此,初始化已经OK。在上面3台机器任意一台完成初始化都可以的。

7:验证配置的副本集。

> rs.status()
{
"set" : "gechongrepl",
"date" : ISODate("2015-05-05T05:54:20Z"),
"myState" : 1,
"members" : [
{
"_id" : 0,
"name" : "192.168.91.128:27017",
"health" : 1,
"state" : 1,
"stateStr" : "PRIMARY",
"uptime" : 1936,
"optime" : Timestamp(1430803801, 1),
"optimeDate" : ISODate("2015-05-05T05:30:01Z"),
"electionTime" : Timestamp(1430803801, 2),
"electionDate" : ISODate("2015-05-05T05:30:01Z"),
"self" : true
},
{
"_id" : 1,
"name" : "192.168.91.129:27017",
"health" : 1,
"state" : 2,
"stateStr" : "SECONDARY",
"uptime" : 1459,
"optime" : Timestamp(1430803801, 1),
"optimeDate" : ISODate("2015-05-05T05:30:01Z"),
"lastHeartbeat" : ISODate("2015-05-05T05:54:19Z"),
"lastHeartbeatRecv" : ISODate("2015-05-05T05:54:19Z"),
"pingMs" : 1,
"syncingTo" : "192.168.91.128:27017"
},
{
"_id" : 2,
"name" : "192.168.91.130:27017",
"health" : 1,
"state" : 2,
"stateStr" : "SECONDARY",
"uptime" : 1459,
"optime" : Timestamp(1430803801, 1),
"optimeDate" : ISODate("2015-05-05T05:30:01Z"),
"lastHeartbeat" : ISODate("2015-05-05T05:54:19Z"),
"lastHeartbeatRecv" : ISODate("2015-05-05T05:54:20Z"),
"pingMs" : 1,
"syncingTo" : "192.168.91.128:27017"
}
],
"ok" : 1
}

配置已经OK。

rs.help()

  

添加仲裁节点

#rs.addArb("192.168.91.130:27017")

  

MongoDB副本集配置系列二:配置MongoDB副本集的更多相关文章

  1. ldap配置系列二:jenkins集成ldap

    ldap配置系列二:jenkins集成ldap jenkins简介 jenkins是一个独立的.开放源码的自动化服务器,它可以用于自动化与构建.测试.交付或部署软件相关的各种任务. jenkins官方 ...

  2. windows下mongodb基础玩法系列二CURD附加一

    windows下mongodb基础玩法系列 windows下mongodb基础玩法系列一介绍与安装 windows下mongodb基础玩法系列二CURD操作(创建.更新.读取和删除) windows下 ...

  3. windows下mongodb基础玩法系列二CURD操作(创建、更新、读取和删除)

    windows下mongodb基础玩法系列 windows下mongodb基础玩法系列一介绍与安装 windows下mongodb基础玩法系列二CURD操作(创建.更新.读取和删除) windows下 ...

  4. 【MongoDB详细使用教程】二、MongoDB基本操作

    目录 数据类型 数据库操作 集合操作 数据操作 增 查 改 修改整行 修改指定字段的值 删 数据类型 MongoDB常见类型 说明 Object ID 文档ID String 字符串,最常用,必须是有 ...

  5. mongo 3.4分片集群系列之三:搭建分片集群--哈希分片 + 安全

    这个系列大致想跟大家分享以下篇章: 1.mongo 3.4分片集群系列之一:浅谈分片集群 2.mongo 3.4分片集群系列之二:搭建分片集群--哈希分片 3.mongo 3.4分片集群系列之三:搭建 ...

  6. mongo 3.4分片集群系列之四:搭建分片集群--哈希分片 + 安全 + 区域

    这个系列大致想跟大家分享以下篇章: 1.mongo 3.4分片集群系列之一:浅谈分片集群 2.mongo 3.4分片集群系列之二:搭建分片集群--哈希分片 3.mongo 3.4分片集群系列之三:搭建 ...

  7. MongoDB副本集配置系列九:MongoDB 常见问题

    What is a namespace in MongoDB? If you remove a document, does MongoDB remove it from disk? When doe ...

  8. iBatisnet系列(二) 配置运行环境和日志处理

    http://hjf1223.cnblogs.com/archive/2006/04/24/383119.aspx 刚爬完鼓山回来,想到这篇刚刚开始,不敢怠慢,洗完澡休息一下就到电脑旁边来了.现在我开 ...

  9. MongoDB系列二:MongoDB安装过程

    一.MongoDB安装,以Linux系统安装为例:(下载:www.mongodb.org 注意使用stable版本) 1.下载最新版本的MongoDB安装包,wget http://fastdl.mo ...

随机推荐

  1. NoSQL现状

    经过了至少4年的激烈争论,现在是对NoSQL的现状做一个阶段性结论的时候了.围绕着NoSQL发生了如此之多的事情,以至于很难对其作出一个简单概括,也很难判断它达到了什么目标以及在什么方面没有达到预期. ...

  2. java程序员必知的8大排序

    先来看看8种排序之间的关系: 1,  直接插入排序 (1)基本思想:在要排序的一组数中,假设前面(n-1) [n>=2] 个数已经是排 好顺序的,现在要把第n个数插到前面的有序数中,使得这n个数 ...

  3. Java并发编程的艺术(十二)——线程安全

    1. 什么是『线程安全』? 如果一个对象构造完成后,调用者无需额外的操作,就可以在多线程环境下随意地使用,并且不发生错误,那么这个对象就是线程安全的. 2. 线程安全的几种程度 线程安全性的前提:对『 ...

  4. 通过Gson解析Json数据

    Json是一种数据格式,便于数据传输.存储.交换:Gson是一种组件库,可以把java对象数据转换成json数据格式. gson.jar的下载地址:http://search.maven.org/#s ...

  5. 出现Running Android Lint的错误

    进入设置,让软件不要检查即可.

  6. SpringBoot 项目中使用velocity模板(转载)

    (不要使用这种模板了,spring boot最新版已经不支持了.使用FreeMarker吧:http://blog.csdn.net/clementad/article/details/5194262 ...

  7. [转]php socket编程通信

    FROM : http://blog.csdn.net/baixiaoshi/article/details/9399083 今天终于测试成功了php中的socket通信,先看原理图 这里可以清晰的看 ...

  8. PHP工程师笔试题

    PHP工程师笔试题 提示:请将答案写在另外一张空白纸上,并在30分钟内完成. PHP 请写出include.require.include_once.require_noce的区别. include是 ...

  9. Html 列表 li ul使用

    html中偶尔会使用到列表,记录一下. <!DOCTYPE html> <html> <head> <meta charset="UTF-8&quo ...

  10. 用于HTML5移动开发的10大移动APP开发框架【转】

    今天给大家介绍10款有关HTML5移动开发APP开发框架,这几款框架都是比较优秀的移动 Web 开发框架,能够帮助开发者更加高效的开发移动Web应用.. 十款移动APP开发框架: 1.jquery m ...