redis学习笔记---redis的哨兵Sentinel

  1、介绍:
    redis的sentinel系统用来管理多个redis服务器,能够实现一个功能上实现HA的集群。该系统主要执行三个任务:
    ①监控( Monitoring ): Redis Sentinel实时监控主服务器和从服务器运行状态。
    ②提醒(notification): 当被监控的某个 Redis 服务器出现问题时, Redis Sentinel 能够向系统管理员发送通知, 也能够经过 API 向其余程序发送通知
    ③自动故障转移( Automatic failover ): : 当一个主服务器不能正常工做时,Redis Sentinel 能够将一个从服务器升级为主服务器, 并对其余从服务器进行配置,让它们使用新的主服务器。当应用程序链接Redis 服务器时, Redis Sentinel会告之新的主服务器地址和端口。
    一个简单的主从结构加sentinel集群的架构图以下:
    
    上图是一主一从节点,加上两个部署了sentinel的集群,sentinel集群之间会互相通讯,沟通交流redis节点的状态,作出相应的判断并进行处理,这里的主观下线状态和客观下线状态是比较重要的状态,它们决定了是否进行故障转移
    能够 经过订阅指定的频道信息,当服务器出现故障得时候通知管理员
    客户端能够将 Sentinel 看做是一个只提供了订阅功能的 Redis 服务器,你不可使用 PUBLISH 命令向这个服务器发送信息,但你能够用 SUBSCRIBE 命令或者 PSUBSCRIBE 命令, 经过订阅给定的频道来获取相应的事件提醒。
    一个频道可以接收和这个频道的名字相同的事件。 好比说, 名为 +sdown 的频道就能够接收全部实例进入主观下线(SDOWN)状态的事件。    
     2、部署  
Redis的sentinel系统能够监控主从节点,而且实现自动切换
注意:在使用sentinel监控主从节点的时候,从节点须要是使用动态方式配置的,若是直接修改配置文件,后期sentinel实现故障转移的时候会出问题。
 
节点以下:
redis主节点:192.168.1.170
redis从节点:192.168.1.171(能够有多个)
 
Sentinel节点:192.168.1.172    192.168.1.173
 
部署步骤:
1:192.168.1.170、192.168.1.17一、192.168.1.17二、192.168.1.173,在这四个节点上解压redis-3.0压缩包
 
2:在这四个节点上对redis进行编译,安装。
 
3:修改192.168.1.170、192.168.1.171上的redis.conf文件中的下面属性
daemonize yes
logfile "/usr/local/redis-3.0.0/log"
 
4:修改192.168.1.17二、192.168.1.173上的sentinel.conf文件中的下面属性
sentinel monitor mymaster 192.168.1.170 6379 2
5:启动redis和sentinel
在192.168.1.170和192.168.1.171上分别启动reids
Redis-server //etc/redis.conf
在192.168.1.171上使用动态方式设置主节点信息
Redis-cli
slaveof 192.168.1.170 6379
在192.168.1.17二、192.168.1.173上分别启动sentinel
Redis-sentinel /etc/sentinel
这样咱们的集群就可使用了
   3、sentinel的一些命令
     ① INFO
    sentinel的基本状态信息
    ②SENTINEL masters
    列出全部被监视的主服务器,以及这些主服务器的当前状态
    ③ SENTINEL slaves <master name>
    列出给定主服务器的全部从服务器,以及这些从服务器的当前状态
    ④SENTINEL get-master-addr-by-name <master name>
    返回给定名字的主服务器的 IP 地址和端口号
    ⑤SENTINEL reset <pattern>
    重置全部名字和给定模式 pattern 相匹配的主服务器。重置操做清除主服务器目前的全部状态, 包括正在执行中的故障转移, 并移除目前已经发现和关联的, 主服务器的全部从服务器和 Sentinel 。
    ⑥SENTINEL failover <master name>
当主服务器失效时, 在不询问其余 Sentinel 意见的状况下, 强制开始一次自动故障迁移,可是它会给其余sentinel发送一个最新的配置,其余sentinel会根据这个配置进行更新
相关文章
相关标签/搜索