Redis高可用性—Sentinel配置

Redis Sentinel 系统负责监控、通知和自动故障迁移,确保Redis服务的高可用性。Sentinel通过哨兵模式运行,当主服务器失效时, Sentinel会选择一个从服务器升级为主服务器并重新配置其他从服务器。Sentinel配置涉及多个选项,如down-after-milliseconds和parallel-syncs,影响故障迁移策略。在多节点部署中,可能存在复制问题,可能导致数据丢失,但可以通过配置避免。
摘要由CSDN通过智能技术生成
简介

Redis 的 Sentinel 系统用于管理多个 Redis 服务器(instance), 该系统执行以下三个任务:

  • 监控(Monitoring): Sentinel 会不断地检查你的主服务器和从服务器是否运作正常。
  • 提醒(Notification): 当被监控的某个 Redis 服务器出现问题时, Sentinel 可以通过 API 向管理员或者其他应用程序发送通知。
  • 自动故障迁移(Automatic failover): 当一个主服务器不能正常工作时, Sentinel 会开始一次自动故障迁移操作, 它会将失效主服务器的其中一个从服务器升级为新的主服务器, 并让失效主服务器的其他从服务器改为复制新的主服务器; 当客户端试图连接失效的主服务器时, 集群也会向客户端返回新主服务器的地址, 使得集群可以使用新主服务器代替失效服务器。

Redis Sentinel 是一个分布式系统,可以在一个架构中运行多个 Sentinel 进程,这些进程使用流言协议(gossip protocols)来接收关于主服务器是否下线的信息, 并使用投票协议(agreement protocols)来决定是否执行自动故障迁移, 以及选择哪个从服务器作为新的主服务器。

虽然 Redis Sentinel 释出为一个单独的可执行文件 redis-sentinel , 但实际上它只是一个运行在特殊模式下的 Redis 服务器,在启动一个普通 Redis 服务器时通过给定 --sentinel选项来启动 Redis Sentinel 。

获取Sentinel

Sentinel已经包含在redis的源码包中,可以直接获取
在这里插入图片描述

配置Sentinel

1、将sentinel配置文件复制到/etc/redis/,先修改配置文件,再将配置文件发送各个至slave

[root@server5 ~]#  vim /etc/redis/sentinel.conf
protected-mode no #禁止安全检测
sentinel monitor mymaster 172.25.14.7 6379 2 #表示要有两个sentinel通过,确认后master才可以客观下线,在只有少数sentinel进程正常工作情况下,sentinel时不能执行自动故障切换的
sentinel down-after-milliseconds mymaster 10000 
sentinel failover-timeout mymaster 30000
sentinel parallel-syncs mymaster 1
daemonize no ###后台运行

2、启动服务,三个节点都做,为了方便查看,将进程不打入后台

# redis-server /etc/redis/sentinel.conf

可以看到,此时sentinel有三个,master为172.25.254.5,两个slave
在这里插入图片描述
登陆master客户端,查看详细信息

# redis-cli
127.0.0.1> INFO

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值