大型电商缓存框架-系统环境搭建-redis 哨兵模式配置以及主备切换测试

不说废话,上至少三台服务器,因为是选举机制,两台选也没啥意义

在安装的redis的安装目录下有个sentinel.conf配置文件

新建目录 /etc/sentinel(存放配置文件)/var/sentinel/5000(存放数据文件和日志),将sentinel.conf复制到 /etc/sentinel/下面,改名为5000.conf,5000是端口号,其他端口可以改为其他名称

编辑配置文件

#绑定为本机ip
bind vm001
#端口
port 5000
#后台运行,初次配置不建议先加这个参数,因为看日志不方便
daemonize yes
#数据存储位置
dir "/var/sentinel/5000"
#日志位置
logfile "/var/sentinel/5000/sentinel.log"
#监听的redis master的ip 端口 指定人数(多少个哨兵sdown之后变为odown)
sentinel monitor mymaster 192.168.1.254 6379 3
#连接master和slave时的密码
sentinel auth-pass mymaster 123456

其他几台服务器也这么搞,唯一变动的就是band参数要绑定为本机ip,启动第一个哨兵服务

[root@vm001 ~]# redis-sentinel /etc/sentinel/5000.conf

查看日志,我redis配置的是一台master+3台slave,sentinel启动日志会展示出redis的节点信息

 

启动其他几个个哨兵服务,查看第一个哨兵的日志,会提示有新的哨兵加入+sentinel

到现在四个哨兵服务已经启动完,整个哨兵服务搭建已完成,下面测试一下redis master节点故障后主备切换情况,首先看一下现在的主备情况

第一台 master节点,可以看到该节点是master节点,其他三台服务器是slave节点

[root@vm001 bin]# redis-cli -a 123456 -h vm001
vm001:6379> info replication
# Replication
role:master
connected_slaves:3
slave0:ip=192.168.1.252,port=6379,state=online,offset=225578,lag=1
slave1:ip=192.168.1.253,port=6379,state=online,offset=225298,lag=1
slave2:ip=192.168.1.254,port=6379,state=online,offset=225298,lag=1
master_repl_offset:225718
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:2
repl_backlog_histlen:225717
vm001:6379> 

第二台 slave节点,可以看到该节点是slave(role:slave),master节点地址(master_host:192.168.1.199)以及master状态(master_link_status:up),其他几台slave节点信息是一样的

[root@vm002 ~]# redis-cli -h vm002 -a 123456
vm002:6379> info replication
# Replication
role:slave
master_host:192.168.1.199
master_port:6379
master_link_status:up
master_last_io_seconds_ago:1
master_sync_in_progress:0
slave_repl_offset:227972
slave_priority:100
slave_read_only:1
connected_slaves:0
master_repl_offset:0
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:0
repl_backlog_histlen:0
vm002:6379> 

下面使用kill命令杀掉master节点的redis模拟reids故障、

[root@vm001 bin]# ps -ef |grep redis
root      1105  1092  0 14:44 pts/2    00:00:00 tail -f /var/redis/6379/sentinel.log
root      1479     1  0 16:23 ?        00:00:00 redis-server vm001:6379          
root      1498     1  0 16:23 ?        00:00:00 redis-sentinel vm001:5000 [sentinel]  
root      1505  1016  0 16:24 pts/0    00:00:00 grep redis
[root@vm001 bin]# kill -9 1479

然后就会看到reids slave节点不断的提示连接异常

此时需要等待一段时间,等待哨兵检查到节点故障

几台服务器依次发现节点异常,提示sdown,当超过3个哨兵发现节点异常后出现odown,然后哨兵开始投票选举master,选完之后提拔选举的slave节点为master节点,之后将其他几个slave连接到新的master,最后哨兵再去检查一下挂掉的节点,确定确实是sdown了,到此主备切换已完成,然后看一下节点信息

发现master已经切换为了254,master下面挂有剩余的两个slave,然后在将之前故障的redis启动,模拟故障恢复

[root@vm001 ~]# redis-server /etc/redis/6379.conf 
[root@vm001 ~]# 

查看哨兵日志,发现其中一个哨兵输出了-sdown,并将原来的master转换为了slave

查看新的master节点的日志,发现数据已经同步到故障恢复节点上了

最后说明一下几个问题

  1. 每个redis节点的requirepass必须设为一致
  2. masterauth参数必须设置,即使是master节点,否则故障切换的时候,新加的配置没有这个参数(不知是我配置错了?)导致无法访问新的master

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
东南亚位于我国倡导推进的“一带一路”海陆交汇地带,作为当今全球发展最为迅速的地区之一,近年来区域内生产总值实现了显著且稳定的增长。根据东盟要经济体公布的最新数据,印度尼西亚2023年国内生产总值(GDP)增长5.05%;越南2023年经济增长5.05%;马来西亚2023年经济增速为3.7%;泰国2023年经济增长1.9%;新加坡2023年经济增长1.1%;柬埔寨2023年经济增速预计为5.6%。 东盟国家在“一带一路”沿线国家中的总体GDP经济规模、贸易总额与国外直接投资均为最大,因此有着举足轻重的地位和作用。当前,东盟与中国已互相成为双方最大的交易伙伴。中国-东盟贸易总额已从2013年的443亿元增长至 2023年合计超逾6.4万亿元,占中国外贸总值的15.4%。在过去20余年中,东盟国家不断在全球多变的格局里面临挑战并寻求机遇。2023东盟国家要经济体受到国内消费、国外投资、货币政策、旅游业复苏、和大宗品出口价企稳等方面的提振,经济显现出稳步增长态势和强韧性的潜能。 本调研报告旨在深度挖掘东南亚市场的增长潜力与发展机会,分析东南亚市场竞争态势、销售模式、客户偏好、整体市场营环境,为国内企业出海开展业务提供客观参考意见。 本文核心内容: 市场空间:全球行业市场空间、东南亚市场发展空间。 竞争态势:全球份额,东南亚市场企业份额。 销售模式:东南亚市场销售模式、本地代理 客户情况:东南亚本地客户及偏好分析 营环境:东南亚营环境分析 本文纳入的企业包括国外及印尼本土企业,以及相关上下游企业等,部分名单 QYResearch是全球知名的大型咨询公司,行业涵盖各高科技行业产业链细分市场,横跨如半导体产业链(半导体设及零部件、半导体材料、集成路、制造、封测、分立器件、传感器、光器件)、光伏产业链(设、硅料/硅片、池片、组件、辅料支架、逆变器、站终端)、新能源汽车产业链(动力池及材料、控、汽车半导体/子、整车、充桩)、通信产业链(通信系统、终端设子元器件、射频前端、光模块、4G/5G/6G、宽带、IoT、数字经济、AI)、先进材料产业链(金属材料、高分子材料、陶瓷材料、纳米材料等)、机械制造产业链(数控机床、工程机械、气机械、3C自动化、工业机器人、激光、工控、无人机)、食品药品、医疗器械、农业等。邮箱:market@qyresearch.com

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值