专栏首页J的故事Redis 哨兵模式

Redis 哨兵模式

哨兵模式概述

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

多哨兵模式

假设主服务器宕机,哨兵1先检测到这个结果,系统并不会马上进行failover过程,仅仅是哨兵1主观的认为主服务器不可用,这个现象成为主观下线。当后面的哨兵也检测到主服务器不可用,并且数量达到一定值时,那么哨兵之间就会进行一次投票,投票的结果由一个哨兵发起,进行failover操作。切换成功后,就会通过发布订阅模式,让各个哨兵把自己监控的从服务器实现切换主机,这个过程称为客观下线。

测试!

1.配置哨兵配置文件sentinel.conf

sentinel monitor myredis 127.0.0.1 6379 1

后面的这个数字1,代表主机挂了,slave投票看让谁阶梯成为主机,票数最多的就成为主机

/www/server/redis/src/redis-sentinel /www/server/redis/kconfig/sentinel #启动监控

[root@iz2zeclwyjl1sk1uesu6z1z src]#  /www/server/redis/src/redis-sentinel 
/www/server/redis/kconfig/sentinel
3383:X 23 Oct 2020 17:35:07.017 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
3383:X 23 Oct 2020 17:35:07.017 # Redis version=6.0.8, bits=64, commit=00000000, modified=0, pid=3383, 
just started
3383:X 23 Oct 2020 17:35:07.017 # Configuration loaded
                _._                                              
           _.-``__ ''-._                                         
      _.-``    `.  `_.  ''-._           Redis 6.0.8 (00000000/0) 64 bit
  .-`` .-```.  ```\/    _.,_ ''-._                               
 (    '      ,       .-`  | `,    )     Running in sentinel mode
 |`-._`-...-` __...-.``-._|'` _.-'|     Port: 26379
 |    `-._   `._    /     _.-'    |     PID: 3383
  `-._    `-._  `-./  _.-'    _.-'                               
 |`-._`-._    `-.__.-'    _.-'_.-'|                              
 |    `-._`-._        _.-'_.-'    |           http://redis.io    
  `-._    `-._`-.__.-'_.-'    _.-'                               
 |`-._`-._    `-.__.-'    _.-'_.-'|                              
 |    `-._`-._        _.-'_.-'    |                              
  `-._    `-._`-.__.-'_.-'    _.-'                               
      `-._    `-.__.-'    _.-'                                   
          `-._        _.-'                                       
              `-.__.-'                                           

3383:X 23 Oct 2020 17:35:07.018 # WARNING: The TCP backlog setting of 511 cannot be enforced because 
/proc/sys/net/core/somaxconn is set to the lower value of 128.
3383:X 23 Oct 2020 17:35:07.022 # Sentinel ID is ee42d4ff53ff3617a6287c1946b44e62ca621873
3383:X 23 Oct 2020 17:35:07.022 # +monitor master myredis 127.0.0.1 6379 quorum 1
3383:X 23 Oct 2020 17:35:07.023 * +slave slave 127.0.0.1:6381 127.0.0.1 6381 @ myredis 127.0.0.1 6379
3383:X 23 Oct 2020 17:35:07.027 * +slave slave 127.0.0.1:6380 127.0.0.1 6380 @ myredis 127.0.0.1 6379

如果主节点宕机了,这是偶就会从从机中选举出来一个新的主机

如果刚开始的主机复活了,那也只能当新选举的主机的从机,这就是哨兵模式的规则!

哨兵模式

优点:

  1. 哨兵集群,基于主从复制,所有的主从配置优点他都有
  2. 主从可以切换,故障可以转移,系统的额可用性就会更好
  3. 哨兵模式就是主从模式的升级,手动到制动,更加健壮 缺点:
  4. Redis不好在线扩容,集群容量一旦达到上线,在线扩容就十分的麻烦!
  5. 实现哨兵模式的配置其实是很麻烦的,里面有多种选择

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Redis哨兵模式

    主从切换技术的方法是:当主服务器宕机后,需要手动把一台从服务器切换为主服务器,这就需要人工干预,费事费力,还会造成一段时间内服务不可用。这不是一种推荐的方式,更...

    后端码匠
  • Redis哨兵模式

    Redis 哨兵模式(Sentinel)是一个自动监控处理 redis 间故障节点转移工作的一个redis服务端实例,它不提供数据存储服务,只进行普通 red...

    July
  • Redis 哨兵模式(Sentinel)

    上一篇我们介绍了 redis 主从节点之间的数据同步复制技术,通过一次全量复制和不间断的命令传播,可以达到主从节点数据同步备份的效果,一旦主节点宕机,我们可以选...

    Single
  • Redis哨兵模式详解

      在主从模式的Redis系统中,从数据库在整个系统中起到了数据冗余备份和读写分离的作用,但是当数据库遇到异常中断服务后,我们只能通过手动的方式选择一个从...

    用户4919348
  • redis 哨兵模式集群搭建

    Sentinel(哨兵),顾名思义就是站岗放哨的,是redis提供的高可用解决方案,它是对主从模式的优化升级,在主从模式下,如果主库发生宕机,需要人工...

    MySQL数据库技术栈
  • Redis 学习总结(3) Redis 哨兵模式

    在实际开发中不会仅仅部署一个 Redis 示例,为了获得高可用,Redis 哨兵模式 则是高可用的一种选择。

    zhangyunfeiVir
  • Logstash2.3.4趟坑之集成Redis哨兵模式

    我是攻城师
  • 在一台机器上配置 redis 哨兵模式

    最后要检查服务器防火墙有没有开放这些端口 6379, 6380, 6381, 26379, 26380, 26381

    北漂的我
  • Redis哨兵模式与分区详细分析

    Redis-Sentinel是redis官方推荐的高可用性解决方案, 当用redis作master-slave的高可用时,如果master本身宕机,redis本...

    chengcheng222e
  • Redis哨兵(Sentinel)模式

    主从切换技术的方法是:当主服务器宕机后,需要手动把一台从服务器切换为主服务器,这就需要人工干预,费事费力,还会造成一段时间内服务不可用。这不是一种推荐的方式,更...

    秃头哥编程
  • Redis 哨兵模式(全网最详细,最通俗易懂)

    之前的主从复制我们已经会搭建了,但是当我们的主机挂了之后,还需要手动的从 从机里面选一个作为主机,这个手动的太麻烦,现在就需要用新的技术,当主机挂了之后,可以从...

    一天不写程序难受
  • Redis哨兵模式(sentinel)集群方案部署记录

    洗尽了浮华
  • CentOS 7 Redis 5.0.8 哨兵模式配置

    准备三台虚拟机CentOS 7环境, 然后再下载 redis-5.0.8 安装包, 我是放在 /opt 目录

    北漂的我
  • Redis哨兵(Sentinel)模式快速入门

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

    全菜工程师小辉
  • redis集群之哨兵模式

    安装配置可参考一下地址: https://www.cnblogs.com/zhoujinyi/p/5569462.html

    一笠风雨任生平
  • dotNetCore操作Redis(含CentOS7哨兵模式部署)

    现在说到使用缓存中间件基本就是 Redis 了,通常开发环境或测试环境部署一个单机版就可以运行了,但要上生产环境还需要进行高可用的方式来部署,本文说说在 Cen...

    oec2003
  • Redis哨兵模式(sentinel)学习总结及部署记录(主从复制、读写分离、主从切换)

    一、sentinel哨兵模式介绍 Sentinel(哨兵)是用于监控redis集群中Master状态的工具,是Redis 的高可用性解决方案,sentinel...

    用户5546570
  • redis详解及哨兵模式搭建

    redis的出现时间并不长,是NoSQL中的一种,基于键-值型的存储,与memcache类似,但是memcache中只是内存的缓存,而redis不仅是内存中的缓...

    lee_yanyi
  • Redis高可用之哨兵模式

    我们在之前的文章里面已经介绍了 redis 高可用之数据持久化,我们分别介绍了 AOF 持久化和 RDB 持久化两种方式,我们来简单回忆下:

    张琳兮

扫码关注云+社区

领取腾讯云代金券