https://www.cnblogs.com/littleatp/p/8563273.html

mongodb配置主从模式

在大数据的时代,传统的关系型数据库要能更高的服务必须要解决高并发读写、海量数据高效存储、高可扩展性和高可用性这些难题。不过就是因为这些问题Nosql诞生了

NOSQL有这些优势:

大数据量,可以通过廉价服务器存储大量的数据,轻松摆脱传统mysql单表存储量级限制。

高扩展性,Nosql去掉了关系数据库的关系型特性,很容易横向扩展,摆脱了以往老是纵向扩展的诟病。

高性能,Nosql通过简单的key-value方式获取数据,非常快速。还有NoSQL的Cache是记录级的,是一种细粒度的Cache,所以NoSQL在这个层面上来说就要性能高很多。

灵活的数据模型,NoSQL无需事先为要存储的数据建立字段,随时可以存储自定义的数据格式。而在关系数据库里,增删字段是一件非常麻烦的事情。如果是非常大数据量的表,增加字段简直就是一个噩梦。

高可用,NoSQL在不太影响性能的情况,就可以方便的实现高可用的架构。比如mongodb通过mongos、mongo分片就可以快速配置出高可用配置。

主从模式(官方不建议使用)。使用mysql数据库时大家广泛用到,采用双机备份后主节点挂掉了后从节点可以接替主机继续服务。所以这种模式比单节点的高可用性要好很多

mongoDB副本集的架构图

由图可以看到客户端连接到整个副本集,不关心具体哪一台机器是否挂掉。主服务器负责整个副本集的读写,副本集定期同步数据备份,一但主节点挂掉,副本节点就会选举一个新的主服务器,这一切对于应用服务器不需要关心。我们看一下主服务器挂掉后的架构:

官方推荐的副本集机器数量为至少3个,那我们也按照这个数量配置测试。

1、准备两台机器 192.168.1.136、192.168.1.137、192.168.1.138。 192.168.1.136 当作副本集主节点,192.168.1.137、192.168.1.138作为副本集副本节点

2、分别在每台机器上建立mongodb副本集测试文件夹

#存放整个mongodb文件

mkdir -p /data/mongodbtest/replset
#存放mongodb数据文件
mkdir -p /data/mongodbtest/replset/data
#进入mongodb文件夹
cd  /data/mongodbtest
3、下载mongodb的安装程序包
wget http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.4.8.tgz
注意linux生产环境不能安装32位的mongodb,因为32位受限于操作系统最大2G的文件限制。
#解压下载的压缩包 

tar xvzf mongodb-linux-x86_64-2.4.8.tgz
4、分别在每台机器上启动mongodb
/data/mongodbtest/mongodb-linux-x86_64-2.4.8/bin/mongod  --dbpath /data/mongodbtest/replset/data   --replSet repset
可以看到控制台上显示副本集还没有配置初始化信息。
5、初始化副本集
在三台机器上任意一台机器登陆mongodb
/data/mongodbtest/mongodb-linux-x86_64-2.4.8/bin/mongo

#使用admin数据库
use admin
#定义副本集配置变量,这里的 _id:”repset” 和上面命令参数“ –replSet repset” 要保持一样。
config = { _id:"repset", members:[

... {_id:0,host:"192.168.1.136:27017"},
... {_id:1,host:"192.168.1.137:27017"},
... {_id:2,host:"192.168.1.138:27017"}]
... }
{

        "_id" : "repset",
        "members" : [
                {
                        "_id" : 0,
                        "host" : "192.168.1.136:27017"
                },
                {
                        "_id" : 1,
                        "host" : "192.168.1.137:27017"
                },
                {
                        "_id" : 2,
                        "host" : "192.168.1.138:27017"
                }
        ]
}
#初始化副本集配置

rs.initiate(config);
6、测试副本集数据复制功能
https://www.cnblogs.com/yujon/p/6128824.html

转载于:https://www.cnblogs.com/tan-chao/p/10996562.html

Mongodb分布式集群搭建相关推荐

  1. mongodb分布式集群搭建手记

    一.架构简介 目标 单机搭建mongodb分布式集群(副本集 + 分片集群),演示mongodb分布式集群的安装部署.简单操作. 说明 在同一个vm启动由两个分片组成的分布式集群,每个分片都是一个PS ...

  2. 大数据调度平台Airflow(八):Airflow分布式集群搭建及测试

    目录 Airflow分布式集群搭建及测试 一.节点规划 二.airflow集群搭建步骤 1.在所有节点安装python3.7 2.在所有节点上安装airflow 三.初始化Airflow 1.每台节点 ...

  3. 大数据分布式集群搭建(1)

    在学习了几天的hadoop分布式集群搭建之后想写写文章记录一下一路以来遇到的困难和解决方案. 闲话不多说,进入正题. 一.环境及准备 因为只有一台电脑,所以需要用虚拟机来模拟环境. 本地机器用到软件: ...

  4. hadoop分布式集群搭建

    hadoop集群搭建前的准备(一定要读):https://blog.51cto.com/14048416/2341450 hadoop分布式集群搭建: 1. 集群规划: 2.具体步骤: (1)上传安装 ...

  5. zookeeper伪分布式集群搭建

    zookeeper集群搭建注意点: 配置数据文件myid1/2/3对应server.1/2/3 通过zkCli.sh -server [ip]:[port]检测集群是否配置成功. 第一步:首先我们将我 ...

  6. java集群_Kafka多节点分布式集群搭建实现过程详解_java

    上一篇分享了单节点伪分布式集群搭建方法,本篇来分享一下多节点分布式集群搭建方法.多节点分布式集群结构如下图所示: 为了方便查阅,本篇将和上一篇一样从零开始一步一步进行集群搭建. 一.安装Jdk 具体安 ...

  7. 全分布式集群搭建总结

    全局分布式集群搭建 注: 如果之前搭建过伪分布式集群,则必须删除就hadoop的jar包,重新解压,因为之前配的文件有可能会冲突.   接下来是搭建集群的详细配置步骤 ~~   搭建集群之前的一些设置 ...

  8. hbase完整分布式集群搭建

    简介: hadoop的单机,伪分布式,分布式安装 hadoop2.8 集群 1 (伪分布式搭建 hadoop2.8 ha 集群搭建 hbase完整分布式集群搭建 hadoop完整集群遇到问题汇总 Hb ...

  9. 阿里云ECS服务器部署HADOOP集群(三):ZooKeeper 完全分布式集群搭建

    本篇将在阿里云ECS服务器部署HADOOP集群(一):Hadoop完全分布式集群环境搭建的基础上搭建,多添加了一个 datanode 节点 . 1 节点环境介绍: 1.1 环境介绍: 服务器:三台阿里 ...

最新文章

  1. MultipartEntity与UrlEncodedFormEntity区别
  2. tensorflow笔记:多层LSTM代码分析
  3. Ⅰ:zookeeper的单机安装 - 详细教程
  4. 2021东京奥运会数据接口
  5. Python3 三步爬楼梯问题
  6. Junit5集成到SpringBoot工程
  7. 最会说话的人,都有这十种风度
  8. 使用Scala的强大api快速加工数据
  9. import python file in currently folder
  10. bzoj 2751: [HAOI2012]容易题(easy)
  11. Nginx + PHP + mysql CGI的一个可能的安全漏洞
  12. 我就是为了小米刷机工具写的
  13. IOS中impactor报81错误解决方法
  14. Python中歌词解析
  15. OraDump导出套件
  16. 小白的25天CTF征程
  17. 自动升降压PD快充方案 30W快充TYPE-C方案
  18. JdbcTempalte添加修改删除查询批量操作
  19. 魔鬼与牧师动作分离版
  20. HttpClient 出现 failed to respond 异常解决

热门文章

  1. 007_html头部元素
  2. mqtt 获取所有topic_MQTT协议解析
  3. pythonprint end_python print end =''
  4. 至暗时刻鸿蒙初开,鸿蒙2.0面世,华为在“至暗时刻”迎来曙光
  5. java split 逗号_java截取之空字符丢失
  6. java中构造方法和方法全面解析
  7. Windows 命令窗口(cmd)命令不能用解决办法
  8. iis7+php_5.5,IIS7+php5.5+fastcgi
  9. ajax php 区别,PHP中AJAX比较(转)
  10. 怎么用vc采集ni卡数据_SystemLink自学笔记(6):SystemLink架构和数据服务