MongoDB远程复制集集群((两台服务器,8个实例))

第三阶段基础

时  间:2023年7月4日

参加人:全班人员

内  容:

MongoDB远程复制集集群

目录

MongoDB远程复制集集群

实验环境:(两台服务器,8个实例)

环境部署:

安装部署

实  验:

实验结果总结:


MongoDB远程复制集集群

实验环境:(两台服务器,8个实例)

Huyang1

Node1

Node2

Node3

Node4

192.168.59.137

27017

27018

27019

27020

Huyang2

Node1

Node2

Node3

Node4

192.168.59.138

27017

27018

27019

27020

环境部署:

1、关闭防火墙

systemctl stop firewall

iptables -F

setenforce 0

2、上传软件包或下载

3、解包、移动位置,命令优化

tar xf mongodb-linux-x86_64-rhel70-4.0.6.tgz

mv mongodb-linux-x86_64-rhel70-4.0.6

/usr/local/mongodb

ln -s /usr/local/mongodb/bin/* /bin/ 命令优化

安装部署

1、创建数据目录,日志文件及目录并创建相应配置文件

mkdir -p /data/mongodb1

mkdir -p /data/logs/mongodb

touch /data/logs/mongodb/mongodb1.log

cd /usr/local/mongodb/

mkdir conf

2、修改配置文件

vim conf/mongodb1.conf

添加配置如下:

  同理,配置huyang1/huyang2上的27018/27019

3、启动服务

mongod -f /usr/local/mongodb/conf/mongodb1.conf

4、进入数据库,配置复制集

mongo

rs.status()  查看状态

配置复制集【huyang1或huyang2操作,另一方不操作】

cfg={"_id":"huyang","members":[{"_id":0,"host":"192.168.59.138:27017"},{"_id":1,"host":"192.168.59.138:27018"},{"_id":2,"host":"192.168.59.138:27019"},{"_id":10,"host":"192.168.59.137:27017"},{"_id":11,"host":"192.168.59.137:27018"},{"_id":12,"host":"192.168.59.137:27019"}]}

rs.initiate(cfg)  配置成功

rs.status()  查看变化

【huyang1】   无状态--->成为从库

【huyang2】   无状态--->从库--->主库

实  验:

实验一:在没有配置优先级下,模拟故障转移

【huyang2】宕机主库

查看复制集内变化

【huyang1】rs.status()

huyang2的27018成为新的主库

【huyang2】宕机主库

查看复制集内变化

【huyang1】rs.status()

huyang2的27018成为新的主库

可见,在没有配置优先级的情况下,主库随机产生

实验二:配置优先级测试

【huyang2】配置8个hosts,六个优先级,一从,一仲裁

重启复制集查看变化

rs.reconfig(cfg)

只能添加不超过7个

rs.isMaster()

【huyang2】配置7个hosts,5个优先级,一从,一仲裁

重启复制集查看变化

rs.reconfig(cfg)

rs.isMaster()

建立成功,五个优先,一从一仲裁

只能建立奇数类的复制集

【huyang2】配置7个hosts,4个优先级,一从,两仲裁

【huyang2】配置7个hosts,4个优先级,一从,三仲裁

rs.reconfig(cfg)

rs.isMaster()

建立均不成功,只能建立一个仲裁(奇数偶数都不可以)

【huyang2】配置7个hosts,4个优先级,两从,一仲裁

rs.reconfig(cfg)

rs.isMaster()

配置四从,结果都可以建立

实验三:配置了优先级后,测试故障转移

当前为5hosts,1从,1仲裁

优先级为:

138:27017=100   27018=95  27019=90

137:27017=85    27018=80

【huyang2】27017主库宕机

【huyang1】rs.status() 查看变化 138:27018成为主库

【huyang2】27018主库宕机

【huyang1】rs.status() 查看变化 138:27019成为主库

实验结果总结:

1、mongodb远程复制集建立hosts,只能建立奇数个hosts,不能建立偶数个hosts;

2、mongodb远程复制集建立仲裁点,只能建立一个仲裁(奇数偶数都不可以);

3、mongodb远程复制集建立从库,可以建立多个,(奇数偶数都可以);

4、配置了优先级后的mongodb远程复制集,由仲裁点和优先级决定主库宕机之后的新主库。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

人间打气筒(Ada)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值