何为复制集?
<强>复制集是额外的数据副本,是跨多个服务器同步数据的过程,复制集提供了冗余并增加了数据可用性,通过复制集可以对硬件故障和中断的服务进行恢复。强>
复制集主从同步的原理和mysql类似,主节点记录在其上的所有操作到oplog中,从节点定期轮询主节点获取这些操作,然后对自己的数据副本执行这些操作,从而保证从节点的数据与主节点一致。
引用>
复制集的优势如下:
(1)让数据更安全
(2)高数据可用性(24 * 7)
(3)灾难恢复
(4)无停机维护(如备份,索引重建,故障转移)
(5)读缩放(额外的副本读取)
(6)副本集对应用程序是透明。
引用>MongoDB复制集结构原理图分析
<李>
.mongodb的复制集至少需要两个节点。其中一个是主节点(主要),负责处理客户端请求,其余的都是从节点(二级),负责复制主节点上的数据。
李> <李>MongoDB各个节点常见的搭配方式为:一主一从或一主多从。
李> <李>客户端在主节点写入数据,在从节点读取数据,主节点与从节点进行数据交互,保障数据的一致性。如果其中一个节点出现故障,其他节点马上会将业务接过来而无需停机操作
李>引用>
复制集的特点:
1。N个节点的集群
2。任何节点可作为主节点
3。所有写入操作都在主节点上
4。自动故障转移
5。自动恢复
引用>MongoDB复制集部署
<李>
在一台CentOS7主机上使用百胜在线安装MongoDB,并创建多实例,进行部署MongoDB复制集
李>首先配置网络百胜源,baseurl(下载路径)指定为MongoDB官网提供的百胜仓库
vim/etc/yum.repos.d/MongoDB。回购
[mongodb-org]
名称=MongoDB库
baseurl=https://repo.mongodb.org/yum/redhat/releasever/mongodb-org 3.6美元/x86_64/,,,,,,,,,,,,#指定获得下载的路径
gpgcheck=1,,,,,,,,,,,,,,,,,,,,#表示对从这个源下载的rpm包进行校验启用
=1,,,,,,,,,,,,,,,,,,#表示启用这个源。
gpgkey=https://www.mongodb.org/static/pgp/server-3.6.asc
引用> 引用>重新加载百胜源,并使用yum命令<强>下载安装mongodb 强>
百胜百胜列表- y安装mongodb-org
引用> 引用>准备4个实例,暂时开启3个,1主2从,,,再额外添加群集(追加实例)也可以撤销实例
<李>
创建数据文件和日志文件存储路径,并赋予权限
>
[root@localhost ~] # mkdir - p/数据/mongodb {2、3、4}
[root@localhost ~] # mkdir/数据/日志
[root@localhost ~] #触摸/数据/logs/mongodb {2、3、4}。日志
[root@localhost ~] # chmod 777/数据/logs/mongodb *
[root@localhost ~] #我/数据/logs/
总用
-rwxrwxrwx量0。1根根0 9月,15日22:31 mongodb2.log
-rwxrwxrwx。1根根0 9月,15日22:31 mongodb3.log
-rwxrwxrwx。1根根0 9月,15日22:31 mongodb4。李的日志编辑4个MongoDB实例的配置文件
<李>
先编辑百胜安装的默认实例的配置文件/etc/mongod。相依,指定监听IP、端口默认为27017,开启复制参数配置,replSetName:真(自定义)
李>root@localhost ~ # vim/etc/mongod.参看
# mongod。参看
#文档的选项,看:
#,,http://docs.mongodb.org/manual/reference/configuration-options/,#写日志数据。
systemLog:
,目的地:文件
,logAppend:真
,路径:/var/log/mongodb/mongod.日志#在哪里以及如何存储数据。
存储:
,dbPath:/var/lib/mongo
,日报:
,,,启用:真
#,引擎:
#,mmapv1:
#,wiredTiger:#如何流程运行
processManagement:
,叉:true #叉和运行在后台
,pidFilePath:/var/run/mongodb/mongod.pid #位置pidfile
,timeZoneInfo:/usr/share/zoneinfo#网络接口净:
,
#安全:
# operationProfiling:
引用>
<李>
复制配置文件给其他实例,并将mongodb2。conf中参的端口数配置为27018年,mongod3.conf中参的端口数配置为27019年,mongod4。会议中参的端口数配置为27020。同样也将dbpath和logpath参数修改为对应的路径值
详解MongoDB复制集