副本集的创建|学习笔记

本文涉及的产品
云数据库 MongoDB,独享型 2核8GB
推荐场景:
构建全方位客户视图
日志服务 SLS,月写入数据量 50GB 1个月
简介: 快速学习副本集的创建

开发者学堂课程【MongoDB精讲课程(下)副本集的创建】学习笔记与课程紧密联系,让用户快速学习知识

课程地址https://developer.aliyun.com/learning/course/727/detail/12972


副本集的创建

 

内容介绍

一、副本集架构目标

二、副本集的创建

三、查看副本集

 

一、副本集架构目标

image.png

即一主一副本一仲裁

如果在同一片服务器上搭建,端口号主节点使用27017,副节点使用27018,仲裁使用27019,要有统一副本集的名称 myrs。

 

二、副本集的创建

第一步:创建主节点

建立存放数据和日志的目录

#-----------myrs#主节点

mkdir-p/mongodb/rep1ica_sets/myrs_27017/log\&

mkdir-p/mongodb/rep1ica_sets/myrs_27017/data/db

//必须要有端口号,因为需要创建三个不同的节点。

新建或修改配置文件:

vim/mongodb/rep1ica_sets/myrs_27017/mongod.conf

myrs_27017:

mongod 配置:

systemLog:

#MongoDB 发送所有日志输出的目标指定为文件 destination: file

#mongod 或 mongos 应向其发送所有诊断日志记录信息的日志文件的路径 path:“/mongodb/replica_sets/myrs_27017/log/mongod.log

#当 mongos 或 mongod 实例重新启动时,mongos 或 mongod 会将新条目附加到现有日志文件的末尾。

logAppend:true storage:

#mongod 实例存储其数据的目录。storage.dbPath 设置仅适用于 mongod。 dbPath:"/mongodb/rep1ica_sets/myrs_27017/data/db" journa1:

#启用或禁用持久性日志以确保数据文件保持有效和可恢复。

enabled: true

processManagement:

#启用在后台运行 mongos 或 mongod 进程的守护进程模式。 fork:true

#指定用于保存 mongos 或 mongod 进程的进程 ID 的文件位置,其中 mongos 或mongod将写入其PID pidFile

Path:“/mongodb/replica_sets/myrs_27017/log/mongod.pid" net:

#服务实例绑定所有IP,有副作用,副本集初始化的时候,节点名字会自动设置为本地域名,而不是ip#bindIpa11: true#服务实例绑定的IP

bindIp: 1oca1host,192.168.0.2#bindIp#绑定的端口

port: 27017

replication:

#指定副本集的名称,三个节点副本集名称必须指定为同一个即 myrs

replsetName:myrs

复制代码后保存,然后启动主节点。

启动节点服务:

[root@bobohost replica_sets]# /usr/1oca1/mongodb/

/mongod-f/mongodb/rep1ica_sets/myrs_27017/mongod.conf

about to fork child process, waiting until server is ready for connections.

forked process:54257

child process started successfully, parent exiting

这样主节点就启动了,同理副本节点的配置是一样的,只需要改变端口号。

第二步:创建副本节点

建立存放数据和日志的目录

#-----------myrs#副本节点

mkdir-p/mongodb/rep1icasets/myrs_27018/log\& mkdir-p/mongodb/replicasets/myrs_27018/data/db

新建或修改配置文件:

vim /mongodb/replica_sets/myrs_27018/mongod.confl

myrs_27018:

systemLog:

#MongoDB 发送所有日志输出的目标指定为文件

destination:file

#mongod 或 mongos 应向其发送所有诊断日志记录信息的日志文件的路径

path:"/mongodb/rep1ica_sets/myrs_27018/log/mongod.log"

#当 mongos 或 mongod 实例重新启动时,mongos 或 mongod 会将新条目附加到现有日志文件的末尾。

logAppend:true storage:

#mongod 实例存储其数据的目录。

storage.dbPath设置仅适用于mongod。

dbPath:"/mongodb/rep1ica_sets/myrs_27018/data/db"

journa1:

#启用或禁用持久性日志以确保数据文件保持有效和可恢复。

processManagement: enabled: true

#启用在后台运行mongos或mongod进程的守护进程模式。 fork:true

#指定用于保存mongos或mongod进程的进程ID的文件位置,其中mongos或mongod将写入其PID pidFile

Path:“/mongodb/replica_sets/myrs_27018/log/mongod.pid" net:

#服务实例绑定所有IP,有副作用,副本集初始化的时候,节点名字会自动设置为本地域名,而不是ip#bindIpa11: true#服务实例绑定的IP

bindIp: loca7host.192.168.0.2#bindIp#绑定的端口 port:27018 replication:

#副本集的名称

replsetName: myrs

动节点服务:

[rootabobohost replica sets]#/utr/ocal/mongodb/bin/mongod -f

/mongodb/replica_sets/myrs_27018/mongod.conf

about to fork child process, waiting until server is ready for connections.

forked process:54361

child process started successfully, parent exiting

配置完副本节点,配置仲裁节点的步骤也是完全一样的。

第三步:创建仲裁节点

建立存放数据和日志的目录:

#-----------myrs#仲裁节点

mkdir -p/mongodb/rep1ica_sets/myrs_27019/log\&

mkdir -p /mongodb/rep1ica_sets/myrs_27019/data/db

仲裁节点:

新建或修改配置文件:

vim/mongodb/rep1ica_sets/myrs_27019/mongod.conf

myrs_27019:

systemLog:

#MongoDB发送所有日志输出的目标指定为文件

destination:file

#mongod或mongos应向其发送所有诊断日志记录信息的日志文件的路径 path:"/mongodb/replica_sets/myrs_27019/log/mongod.log"

#当mongos或mongod实例重新启动时,mongos或mongod会将新条目附加到现有日志文件的末尾。

logAppend: true storage:

#mongod实例存储其数据的目录。storage.dbpath设置仅适用于mongod

Path:"/mongodb/replica_sets/myrs_27019/data/db"

journa1:

#启用或禁用持久性日志以确保数据文件保持有效和可恢复。 enabled:true

processManagement:

#启用在后台运行mongos或mongod进程的守护进程模式。

fork: true

#指定用于保存mongos或mongod进程的进程ID的文件位置,其中mongos或mongod将写入其PID pidFile

Path:"/mongodb/replica sets/myrs 27019/1og/mongod.pid" net:

#服务实例绑定所有IP,有副作用,副本集初始化的时候,节点名字会自动设置为本地域名,而不是ip#bindIpA11:true#服务实例绑定的IP

bindIp: 1oca1host,192.168.0.2

#bindIp

#绑定的端口 port:27019 replication:

#副本集的名称

replsetname: myrs

启动节点服务:

[root@bobohost replica_sets]# /usr/1oca1/mongodb/bin/mongod-f

/mongodb/rep1ica_sets/myrs_27019/mongod.conf

about to fork child process, waiting until server is ready for connections.

forked process:54410

child process started successfully, parent exiting

 

三、查看副本集

通过命令行启动,查看这三个的命令服务:

started successfully,parent exiting

child processstarted successfully, parent exiting

[root@instance-2ki2piry pS grep mongo

root 2537 1 17:24 ? 00:00:01 /usr/local/mongodb/bin/mongod -f /mongodb/replica sets/mvrs 27017/mongod.conf//主节点

root 2578 1 17:25 ? 00:00:00/usr/local/mongodb/bin/mongod -f /replica sets/myrs_27018/mongod.conf//副节点

root 2617 1 17:26 ? 00:00:00 /usr/localmongodb/bin/mongod/mongodb/replica /myra27019/mongod.cont//仲裁

root 2647 2019 017:26 pts/0 00:00:00 grep--colormautomongo

[root@instance-2ki2piry~]#

相关实践学习
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
相关文章
|
NoSQL MongoDB 索引
MongoDB副本集同步原理
MongoDB的同步原理,官方文档介绍的比较少,网上资料也不是太多,下面是结合官方文档、网上资料和测试时候的日志,整理出来的一点东西。
3482 0
|
3天前
|
存储 NoSQL Shell
MongoDB复制(副本集)总结
这篇文章是关于MongoDB副本集的总结,包括复制原理、设置副本集、案例分析等内容。
15 1
|
11月前
|
NoSQL MongoDB
MongoDB分片+副本集高可用集群的启停步骤
MongoDB分片+副本集高可用集群的启停步骤
231 0
|
10月前
|
存储 NoSQL Ubuntu
21 MongoDB高级 - 复制(副本集)
21 MongoDB高级 - 复制(副本集)
59 1
|
数据库 索引
MongoDB-复制集同步规则
初始化同步 • 将一个新的节点加入到复制集中时, 就需要进行初始化同步 • 初始化同步会先清空自己所有的内容, 保证将来自己和主节点一模一样 • 初始化同步会将主节点中现有所有的 ‘数据库’, ‘集合’, ‘文档’, ‘索引’ 全部拷贝过来 • 但是在拷贝的过程中主节点仍然可能会做一些其它操作, 新增一些其它的数据等
75 0
|
NoSQL Shell MongoDB
mongodb复制集节点替换实践
注意:大家首先要明白你的需求是什么,然后对照做一些处理,下面是我的一些替换经验。 #### 需求 这是我原来挂载节点时的配置 ```bash config = { "_id" : "rs0", "members": [ { "_id" : 0, "host" : "127.0.0.1:27017" }, { "_id" : 1, "host" : "127.0.0.1:27018" }, { "_id" : 2, "host" : "127.0.0.1:27019" } ] } ``` 现在我需要将节点替换成下面
221 0
mongodb复制集节点替换实践
|
NoSQL MongoDB 开发工具
配置副本集搭建|学习笔记
快速学习配置副本集搭建
配置副本集搭建|学习笔记
|
Kubernetes 网络协议 前端开发
K8S 集群部署_集群初始化 | 学习笔记
快速学习 K8S 集群部署_集群初始化
271 0
|
分布式数据库 数据库 开发者
创建集群|学习笔记
快速学习创建集群
100 0
创建集群|学习笔记
|
存储 NoSQL MongoDB
初始化配置副本集和主节点|学习笔记
快速学习初始化配置副本集和主节点
200 0