Redis哨兵模式搭建及故障切换模拟
2023-09-14 09:02:05 时间
Redis哨兵模式搭建及故障切换模拟
0. Redis 哨兵架构
序号 | HOSTNAME | IPADDRESS | 操作系统版本 |
---|---|---|---|
1 | Master | 192.168.31.8 | CentOS Linux release 8.4.2105 |
2 | Slave-1 | 192.168.31.18 | CentOS Linux release 8.4.2105 |
3 | Slave-2 | 192.168.31.28 | CentOS Linux release 8.4.2105 |
1. Redis安装
主从节点都执行
yum install -y redis
2. Redis配置文件修改
主从节点都执行
sed -Ei -e 's/^(bind ).*/\10.0.0.0/' \
-e 's/^# (masterauth ).*/\1123456/' \
-e 's/^# (requirepass ).*/\1123456/' /etc/redis.conf
systemctl enable --now redis
3. 从节点配置
仅在从节点上执行
echo "replicaof 192.168.31.8 6379" >> /etc/redis.conf
systemctl restart redis
4. 主节点验证
systemctl restart redis
redis-cli -a 123456 info replication
5. 从节点验证
redis-cli -a 123456 info replication
6. sentinel配置
Sentinel实际上是一个特殊的redis服务器,有些redis指令支持,但很多指令并不支持.默认监听在26379/tcp端口.
\cp /etc/redis-sentinel.conf{,.bak}
cat > /etc/redis-sentinel.conf<<EOF
bind 0.0.0.0
port 26379
daemonize yes
pidfile "/var/run/redis-sentinel.pid"
logfile "/var/log/sentinel_26379.log"
dir "/tmp"
sentinel monitor mymaster 192.168.31.8 6379 2
sentinel auth-pass mymaster 123456
sentinel down-after-milliseconds mymaster 30000
sentinel parallel-syncs mymaster 1
sentinel failover-timeout mymaster 180000
sentinel deny-scripts-reconfig yes
logfile /var/log/redis/sentinel.log
EOF
touch /var/log/sentinel_26379.log
chown redis.redis /var/log/sentinel_26379.log
systemctl enable --now redis-sentinel.service
7. 哨兵日志
redis-cli -p 26379 info sentinel
8. 停止Redis Master测试故障转移
master上停止Redis
systemctl stop redis
随便哪个节点上查看sentinel状态
redis-cli -a 123456 -p 26379 info sentinel
9. 查看故障转移状态
tail -f /var/log/redis/sentinel.log
此时另外一台redis的配置文件会被修改
10. 故障恢复
当master恢复后,会被自动连接.但不会替代master的位置,会以slave的身份存在.
redis-cli -a 123456 info replication
redis-cli -a 123456 -p 26379 info sentinel
相关文章
- 精通Redis:哨兵模式的意义与实现(redis的哨兵模式)
- 使用Redis管理多个数据库(redis几个数据库)
- :优化Redis的性能指标(redis性能指标)
- redis比较SSDB、MongoDB和Redis(ssdbmongodb)
- 探秘:如何利用Cacti监控Redis数据库?(cactiredis)
- 微服务如何使用Redis共享数据(微服务共享数据redis)
- 程序瞬间访问Redis储存数据信息(程序访问redis)
- 瞬间爆棚秒杀系统靠Redis集群实现超强性能(秒杀系统redis集群)
- Redis代码下的点赞状态运作(点赞状态 redis代码)
- 从概念上看消息队列与Redis的区别(消息队列和redis区别)
- 以有道引领,Redis发出新声音(有道redis 发音)
- Redis实战开发·优化·指南推荐(推荐redis的书)
- upupw开启全新数据存储模式Redis(upupw开启redis)
- 大公司用Redis实现秒杀场景的新模式(大公司redis秒杀场景)
- Redis强大的数据库缓存系统(介绍一下 redis)
- 部署Redis集群模式,提高存储能力(redis集群模式部署)
- Redis集群优雅地进行模式选举(redis集群模式选举)
- 深入理解Redis的集群模式分类(redis集群模式分类)
- Redis集群模式下的事务处理策略(redis集群模式事务)
- Redis集群中模式不平衡的解决之道(redis集群模式不均衡)
- 尝试Redis结合SSM框架开启新模式(redis集成ssm)
- 模式重启后Redis AOF模式恢复数据完整性(redis重启 aof)
- 部署Redis集群,实现高可用及高性能(redis部署集群模式)
- Redis进阶指南一步一步精通(redis 进阶笔记)
- Redis实现过期策略的场景研究(redis过期策略场景)
- Redis中过期数据自动删除机制(redis过期会删除吗)
- 重连Redis 订阅者模式下的断线重连机制(redis 订阅模式断线)
- 红色守卫Redis缓存的哨兵模式(redis缓存哨兵模式)