MongoDB 集群,主从复制集群模式,replSet集群模式

本文涉及的产品
云数据库 MongoDB,独享型 2核8GB
推荐场景:
构建全方位客户视图
简介:

一、MongoDB -Master-Slave mode:

1、master 节点配置(192.168.99.16)

master节点创建/data/master 数据目录,给mongo的data文件夹添加写权限

sudo mkdir -pv /data/masterdb && sudo chmod 777 /data/masterd

运行master mongd

sudo nohup mongod --master --dbpath /data/masterdb &

2、slave 节点配置(192.168.99.17)

创建data目录,并修改data下目录写权限

sudo mkdir -pv /data/slavedb && sudo chmod 777 -R /data

运行
sudo nohup mongod --slave --source 192.168.99.16:27017 --dbpath /data/slavedb &

mongo

-> rs.slaveOk() 允许从节点可读

二、Replica Set mode

1.192.168.99.16:27017 primary
2.192.168.99.17:27018 secondary
3.192.168.99.18:27019 arbiter

master节点
sudo nohup mongod --dbpath=/data/masterdb --port 27017 --replSet mySet &
slave节点
sudo nohup mongod --dbpath=/data/slavedb --port 27018 --replSet mySet &
arbiter节点
sudo nohup mongod --dbpath=/data/arb --port 27019 --replSet mySet &

arbiter 节点配置 (192.168.99.18)

创建目录和配置目录权限

sudo mkdir -pv /data/arb && sudo chmod -R 777 /data

设置日志为false
sudo vim /etc/mongod.conf 如下:

storage:
    journal:
        enabled: false
    mmapv1:
        smallFiles: true

启动arbiter
sudo nohup mongod --dbpath /data/arb --replSet rs &

================================

master,slave,arbiter创建如下目录,并更改目录权限

# sudo mkdir -pv /data/{masterdb,config,log} && sudo chmod 777 /data -R 
# sudo mkdir -pv /data/{slavedb,config,log} && sudo chmod 777 /data -R 
# sudo mkdir -pv /data/{arb,config,log} && sudo chmod 777 /data -R

在每个节点创建mongod.config,三台节点port 和dbpath不同

# sudo vim /data/config/mongod.conf
dbpath=/data/masterdb/
logpath=/data/log/mongod.log
pidfilepath=/data/config/mongod.pid
port=27017
logappend=true
fork=true
journal=true
oplogSize=2048
smallfiles=true
replSet=dbset

dbpath=/data/slavedb/
logpath=/data/log/mongod.log
pidfilepath=/data/config/mongod.pid
port=27018
logappend=true
fork=true
journal=true
oplogSize=2048
smallfiles=true
replSet=dbset

dbpath=/data/arb/
logpath=/data/log/mongod.log
pidfilepath=/data/config/mongod.pid
port=27019
logappend=true
fork=true
journal=false
oplogSize=2048
smallfiles=true
replSet=dbset

各节点指定配置文件运行mongod

mongod -f /data/config/mongod.conf

连接master

sudo mongo mongo-master:27017/admin

配置repl set,在mongo shell中执行

config={_id:'dbset',members:[{_id:1,host:'mongo-master:27017'},{_id:2,host:'mongo-slave:27018'},{_id:3,host:'mongo-arbiter:27019',arbiterOnly:true}]}

repl set初始化

rs.initiate(config)

查看集群状态

rs.status()

=================================
添加arbiter
rs.addArb(‘mongo-arbiter:27019’)

添加节点rs.add('ip:port')
移除 rs.remove('ip:port'),移除后对应的服务好像会被停掉
*前提配置文件中replSet名称要一致

非正常关闭无法启动解决办法
rm -rf /data/*db/mongod.lock

相关实践学习
MongoDB数据库入门
MongoDB数据库入门实验。
快速掌握 MongoDB 数据库
本课程主要讲解MongoDB数据库的基本知识,包括MongoDB数据库的安装、配置、服务的启动、数据的CRUD操作函数使用、MongoDB索引的使用(唯一索引、地理索引、过期索引、全文索引等)、MapReduce操作实现、用户管理、Java对MongoDB的操作支持(基于2.x驱动与3.x驱动的完全讲解)。 通过学习此课程,读者将具备MongoDB数据库的开发能力,并且能够使用MongoDB进行项目开发。   相关的阿里云产品:云数据库 MongoDB版 云数据库MongoDB版支持ReplicaSet和Sharding两种部署架构,具备安全审计,时间点备份等多项企业能力。在互联网、物联网、游戏、金融等领域被广泛采用。 云数据库MongoDB版(ApsaraDB for MongoDB)完全兼容MongoDB协议,基于飞天分布式系统和高可靠存储引擎,提供多节点高可用架构、弹性扩容、容灾、备份回滚、性能优化等解决方案。 产品详情: https://www.aliyun.com/product/mongodb
目录
相关文章
|
6天前
|
存储 NoSQL MongoDB
.NET MongoDB数据仓储和工作单元模式封装
.NET MongoDB数据仓储和工作单元模式封装
39 15
|
5月前
|
存储 NoSQL 算法
MongoDB保姆级指南(中):从副本集群、分片集群起航,探索分布式存储的趋势!
本文一起来聊聊MongoDB集群,顺带以MongoDB集群为起点,共同探讨一下分布式存储的发展趋势~
489 15
|
5月前
|
存储 监控 NoSQL
震撼!揭秘高可用 MongoDB 分片集群搭建的神秘魔法,开启数据存储的无敌模式!
【8月更文挑战第9天】在数字化时代,数据至关重要。MongoDB作为流行非关系型数据库,通过搭建高可用分片集群确保系统稳定性和性能。分片技术将大数据集分布于多服务器以实现水平扩展。搭建集群需准备服务器资源,配置环境,启动配置服务器、路由服务器及分片服务器,并设置分片策略。例如,对特定数据库和集合启用分片。此架构适用于高流量应用如大型电商平台,确保数据高效处理和高可用性。搭建过程需持续监控和优化,合理规划分片策略以维持系统稳定运行。
43 3
|
6月前
|
自然语言处理 运维 NoSQL
MongoDB集群同步
实现 MongoDB Cluster-to-Cluster 即集群同步的工具是:mongosync 详情可参考如下官方文档: https://www.mongodb.com/zh-cn/docs/cluster-to-cluster-sync/current/quickstart/ 以上这个地址的文档一看就是机器翻译的,可能有不恰当的地方,但基本可参考使用。 以下是本次在某项目地配置集群同步的简要步骤,可参考使用。
97 6
|
5月前
|
存储 运维 NoSQL
轻松上手:逐步搭建你的高可用MongoDB集群(分片)
【8月更文挑战第13天】在数据激增的背景下,传统单机数据库难以胜任。MongoDB作为流行NoSQL数据库,采用分片技术实现水平扩展,有效处理海量数据。分片将数据分散存储,提高并发处理能力和容错性,是高可用架构基石。构建MongoDB集群需理解shard、config server和router三组件协同工作原理。通过具体实例演示集群搭建流程,包括各组件的启动及配置,确保数据高可用性和系统稳定性。合理规划与实践可构建高效稳定的MongoDB集群,满足业务需求并支持未来扩展。
140 0
|
5月前
|
NoSQL MongoDB Windows
MongoDB 副本模式,会映射到本地 127.0.0.1 错误
MongoDB 副本模式,会映射到本地 127.0.0.1 错误
110 0
|
7月前
|
存储 负载均衡 NoSQL
MongoDB的架构设计基于三种集群模式
【6月更文挑战第5天】MongoDB的架构设计基于三种集群模式
253 3
|
8月前
|
存储 缓存 NoSQL
MongoDB详解(三)——MongoDB集群
MongoDB详解(三)——MongoDB集群
123 4
|
8月前
|
NoSQL MongoDB
搭建MongoDB分片式集群
搭建MongoDB分片式集群
90 0