跳至主要內容

2.18 集群_哨兵监控 🎉

刘春龙...大约 2 分钟数据库redis

2.18 集群_哨兵监控 🎉

Redis主从复制缺点:当主机 Master 宕机以后,我们需要人工解决切换。

一旦主节点宕机,写服务无法使用,就需要手动去切换,重新选取主节点,手动设置主从关系。

当主服务器宕机后,需要手动把一台从服务器切换为主服务器,这就需要人工干预,费事费力,还会造成一段时间内服务不可用。这不是一种推荐的方式,更多时候,我们优先考虑哨兵模式。

哨兵模式是一种特殊的模式,首先Redis提供了哨兵的命令,哨兵是一个独立的进程,作为进程,它会独立运行。其原理是哨兵通过发送命令,等待Redis服务器响应,从而监控运行的多个Redis实例。

哨兵作用

  • 集群监控:负责监控redis master和slave进程是否正常工作
  • 消息通知:如果某个redis实例有故障,那么哨兵负责发送消息作为报警通知给管理员
  • 故障转移:如果master node挂掉了,会自动转移到slave node上
  • 配置中心:如果故障转移发生了,通知client客户端新的master地址

配置哨兵监控 💎

假设你有三台redis服务器,分别为:192.168.29.10,192.168.66.100,192.168.66.101,其中192.168.29.10是主节点,
现在给每台服务器搭建一个哨兵(注意区分redis.conf文件)

# 新建sentinel-26379.conf文件 192.168.29.10 sentinel-26379.conf
port 26379
daemonize yes
logfile "26379.log"
sentinel monitor mymaster 192.168.29.10 6379 2
# 新建sentinel-26380.conf文件 192.168.66.100 sentinel-26380.conf
port 26380
daemonize yes
logfile "26380.log"
sentinel monitor mymaster 192.168.66.100 6379 2
# 新建sentinel-26381.conf文件 192.168.66.101 sentinel-26381.conf
port 26381
daemonize yes
logfile "26381.log"
sentinel monitor mymaster 192.168.66.101 6379 2

提示

sentinel monitor mymaster 192.168.92.128 6379 2 配置的含义是:该哨兵节点监控192.168.92.128:6379这个主节点,该主节点的名称是mymaster,最后的2的含义与主节点的故障判定有关:至少需要2个哨兵节点同意,才能判定主节点故障并进行故障转移。

哨兵节点的启动

redis-sentinel ../sentinel-26379.conf  #启动第一台
redis-sentinel ../sentinel-26380.conf  #启动第二台
redis-sentinel ../sentinel-26381.conf  #启动第三台

查看哨兵节点状态

./redis-cli -p 26379
上次编辑于:
贡献者: 刘春龙
评论
  • 按正序
  • 按倒序
  • 按热度
Powered by Waline v2.15.7