我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Redis中的哨兵模式如何实现

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Redis中的哨兵模式如何实现

这篇文章主要介绍Redis中的哨兵模式如何实现,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

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

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

  • 监控(Monitoring): Sentinel 会不断地检查你的主服务器和从服务器是否运作正常。

  • 提醒(Notification): 当被监控的某个 Redis 服务器出现问题时, Sentinel 可以通过 API 向管理员或者其他应用程序发送通知。

  • 自动故障迁移(Automatic failover): 当一个主服务器不能正常工作时, Sentinel 会开始一次自动故障迁移操作, 它会将失效主服务器的其中一个从服务器升级为新的主服务器, 并让失效主服务器的其他从服务器改为复制新的主服务器; 当客户端试图连接失效的主服务器时, 集群也会向客户端返回新主服务器的地址, 使得集群可以使用新主服务器代替失效服务器。

Sentinel工作机制

  • 每个sentinel以每秒钟一次的频率向它所知的master,slave以及其他sentinel实例发送一个 PING 命令

  • 如果一个实例距离最后一次有效回复 PING 命令的时间超过 down-after-milliseconds 选项所指定的值, 则这个实例会被sentinel标记为主观下线。

  • 如果一个master被标记为主观下线,则正在监视这个master的所有sentinel要以每秒一次的频率确认master的确进入了主观下线状态

  • 当有足够数量的sentinel(大于等于配置文件指定的值)在指定的时间范围内确认master的确进入了主观下线状态, 则master会被标记为客观下线

  • 在一般情况下, 每个sentinel会以每 10 秒一次的频率向它已知的所有master,slave发送 INFO 命令

  • 当master被sentinel标记为客观下线时,sentinel向下线的master的所有slave发送 INFO 命令的频率会从 10 秒一次改为 1 秒一次

  • 若没有足够数量的sentinel同意master已经下线,master的客观下线状态就会被移除; 若master重新向sentinel的 PING 命令返回有效回复,master的主观下线状态就会被移除

Sentinel模式搭建

环境

master:127.0.0.1:6379 【初始化master】

slave:127.0.0.1:6380  127.0.0.1:6381

sentinel:127.0.0.1:26379  127.0.0.1:26380  127.0.0.1:26381
  • 修改配置:

这里省略安装了redis,直接修改sentinel配置文件。对应文件夹Redis6379-Redis6381

# 监控节点,且超过2个sentinel 任务故障,方可执行故障转移
sentinel monitor mymaster 127.0.0.1 6379 2
# 如果节点在 30000毫秒内未回应,就认为故障
sentinel down-after-milliseconds mymaster 30000
# 如果故障转移后,同时进行主从复制数为 1
sentinel parallel-syncs mymaster 1
# 故障转移的超时时间
sentinel failover-timeout mymaster 180000
sentinel deny-scripts-reconfig yes

启动命令

./class="lazy" data-src/redis-sentinel ./config/redis-sentinel-6379.conf(同样启动6380 6381)

以上是“Redis中的哨兵模式如何实现”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Redis中的哨兵模式如何实现

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Redis哨兵模式实现一主二从三哨兵

目录一、redis环境:二、哨兵介绍:三、安装redis:四、使用Redis主从复制的作用:五、配置redis一主二从:六、配置redis三哨兵:一、redis环境:环境:redis6.2.6linux虚拟机一台,contos7;二、哨
2022-07-04

redis搭建哨兵模式实现一主两从三哨兵

目录一、Redis 哨兵模式:1、哨兵模式原理:2、哨兵模式的作用:3、哨兵的结构:4、故障转移机制:二、案例环境三、实验部署四、哨兵部署五、验证哨兵,模拟故障一、Redis 哨兵模式:哨兵的核心功能:在主从复制的基础上,哨兵引入了主节点
redis搭建哨兵模式实现一主两从三哨兵
2024-08-30

redis哨兵模式如何搭建

Redis哨兵模式是一种高可用性的Redis部署架构,它通过监控Redis主节点的状态,并在主节点失效时自动将其中一个从节点升级为主节点,从而实现故障转移。以下是搭建Redis哨兵模式的步骤:安装Redis:首先,在每个服务器上安装Redi
2023-10-24

redis哨兵模式如何查看状态

要查看Redis哨兵模式的状态,可以使用以下命令:使用`redis-cli`命令行工具连接到任何一个哨兵节点。执行命令`info sentinel`,可以获取当前哨兵的状态信息,包括哨兵节点的ID、名称、IP地址、端口号、运行状态、最后一
2023-10-25

redis 主从哨兵模式实现一主二从

目录一、环境二、安装三、配置3.1、配置Redis.config文件3.2、配置sentinel.config文件一、环境操作系统:Centos7.6/MAC OSredis版本:6.2.5以上版本ssh工具:xshell和xftpspr
2022-07-11

Redis | 第12章 Sentinel 哨兵模式《Redis设计与实现》

目录前言1. 启动并初始化 Sentinel2. Sentinel 与服务器间的默认通信2.1 获取主服务器信息2.2 获取从服务器信息2.3 向主服务器和从服务器发送信息3. 接受来自主服务器和从服务器的频道信息3.1 更新 Sentinel 字典3.2 创
Redis | 第12章 Sentinel 哨兵模式《Redis设计与实现》
2017-09-21

PHP中redis哨兵模式怎么使用

PHP中的Redis哨兵模式哨兵模式是一种高可用性解决方案,通过哨兵监视Redis实例,在主实例故障时自动进行故障转移。配置哨兵配置sentinel.conf文件,指定Redis和哨兵实例信息。哨兵实例会监视主实例,并在主实例不可用超过指定时间后进行故障转移。使用PHP连接哨兵使用Predis库连接哨兵,指定哨兵实例地址和端口。连接后,可以像往常一样读取和写入数据。在故障转移发生时,PHP客户端会自动重连到新的主实例。优点高可用性自动故障转移监控和通知缺点性能开销复杂性
PHP中redis哨兵模式怎么使用
2024-04-13

PHP中redis哨兵模式怎么配置

PHP中Redis哨兵模式配置哨兵模式是Redis的高可用部署架构,引入哨兵监控服务器健康并自动故障转移。配置步骤包括:创建哨兵配置文件,指定要监控的主服务器和配置选项。启动哨兵。在PHP代码中使用Redis::OPT_SENTINEL配置客户端连接到哨兵。当主服务器故障时,哨兵会自动选择一个从服务器作为新主服务器并同步数据。优点:高可用性、自动故障转移、可扩展性、监视和警报。
PHP中redis哨兵模式怎么配置
2024-04-12

PHP中redis哨兵模式怎么使用

在PHP中使用Redis的哨兵模式,需要安装redis扩展,并设置哨兵模式相关的配置。步骤如下:安装Redis扩展:使用`pecl`命令安装Redis扩展。例如,可以在终端运行以下命令进行安装:pecl install redis在PH
2023-10-25

Redis的哨兵模式指的是什么

Redis的哨兵模式(Sentinel mode)是一种用于实现高可用性(high availability)的架构设计。在Redis中,哨兵模式通过监控主节点(master node)和从节点(slave node)的健康状态,以及自动进
Redis的哨兵模式指的是什么
2024-03-12

编程热搜

目录