Redis(六)【哨兵】

Sentinel哨兵是Redis官方提供的高可用方案,可以用它来监控多个Redis服务实例的运行情况。

Redis Sentinel是一个运行在特殊模式下的Redis服务器。Redis Sentinel 是在多个 Sentinel 进程环境下互相协作工作的。 

 

Sentinel 系统有三个主要任务:

  1)监控:Sentinel不断的检查主服务和从服务器是否按照预期正常工作。

  2)提醒:被监控的Redis出现问题时,Sentinel会通知管理员或其他应用程序。

  3)自动故障转移:监控的主Redis不能正常工作,Sentinel会开始进行故障迁移操作。将 一个从服务器升级新的主服务器。让其他从服务器挂到新的主服务器。同时向客户端提 供新的主服务器地址。 

 

启动Sentinel需要修改sentinel.conf,对以下内容进行修改:

  1)根据需要修改Sentinel的port,Sentinel默认端口号为26379。

  2)修改监控的master地址,Sentinel根据Master的配置自动发现Master的Slave。

 

 

 

  注意:

    1)Sentinel会不断检查Master和Slave是否正常

    2)如果 Sentinel 挂了,就无法监控,所以需要多个哨兵,组成 Sentinel 网络,一个健康的Sentinel至少有3个Sentinel应用,彼此在独立的物理机器或虚拟机。

    3)监控同一个Master的Sentinel会自动连接,组成一个分布式的 Sentinel 网络,互相通信并交换彼此关于被监控服务器的信息

    4)当一个Sentinel认为被监控的服务器已经下线时,它会向网络中的其它Sentinel进行确认,判断该服务器是否真的已经下线

    5)如果下线的服务器为主服务器,那么Sentinel网络将对下线主服务器进行自动故障转移,通过将下线主服务器的某个从服务器提升为新的主服务器,并让其他从服务器转移到新的主服务器下,以此让系统重新回到正常状态

    6)下线的旧主服务器重新上线,Sentinel会让它成为从,挂到新的主服务器下

 

posted @ 2020-05-29 00:02  Rhettttt  阅读(86)  评论(0)    收藏  举报