Redis学习(十三):使用哨兵自动管理主从数据库

Redis集群搭建实战(主从复制、哨兵、集群) Redis集群搭建实战(主从复制、哨兵、集群)。顾名思义,哨兵的作用就是对Redis的系统的运行情况的监控,它是一个独立进程。监控主数据库和从数据库是否运行正常;主数据出现故障后自动将从数据库转化为主数据库; 阅读详情

一、什么是哨兵

顾名思义,哨兵的作用就是监控Redis系统的运行状况。它的功能主要包括以下两个:

  • 监控主数据库和从数据库是否正常运行;
  • 主数据库故障时自动将从数据库转换为主数据库,并使其他从数据库连接到新的主数据库上

二、哨兵配置

配置文件名称:sentinel.conf,内容如下:

sentinel monitor mymaster 127.0.0.1 6379 1
  • 首先,对于一个主从数据库系统,哨兵只需要配置主数据库地址即可(后边解释),哨兵还可以同时监控多个主从数据库系统
  • sentinel monitor:固定写法;
  • mymaster:给要监控的主数据库起一个别名;
  • 127.0.0.1:主数据库ip地址
  • 6379:主数据库运行端口
  • 1:最低通过票数。

启动哨兵命令:

redis-sentinel /path/to/sentinel.conf

三、哨兵实现原理

(一)建立连接:

哨兵启动后,会与要监控的主数据库建立两条连接:

  1. 用来订阅该主数据库的_sentinel_:hello频道,来获取同样监控了此数据库的其他哨兵信息。
    • 监控频道中其他哨兵发送的信息,每2秒向频道中发送自己的信息;
  2. 向主从数据库发送工作命令(第一条连接是订阅,所以无法进行其他操作,需要重新建立一条)
    1. 向主数据发送INFO命令,第一次发送时会获取到主数据库下的从数据库信息,然后哨兵会跟从数据库用相同的方式建立两条连接;
    2. 每10秒向主从数据库发送INFO命令:刷新纪录的主从数据库信息,发现新节点等;
    3. 每1秒(可以配置:down-after-milliseconds)向主从数据库发送ping命令,来判断主从数据库是否正常。

(二)事故出现和哨兵选举

主观下线和客观下线:

  • 哨兵在PING主从服务器时,如果超过down-after-milliseconds配置的时间,仍没有得到回复,哨兵就认为这个数据库主观下线;
  • 如果主服务器出现故障,哨兵会发送SENTINEL is-master-down-by-addr命令询问其他哨兵,了解他们是否也认为主数据库下线,当到达哨兵配置文件中配置的最低通过票数后,就认为其客观下线。

领头哨兵选举(一个哨兵一轮只有一次投票权):

  1. 发现主数据库客观下线的哨兵A,会向其他哨兵发送命令,让对方选自己为领头哨兵;
  2. 如果目标哨兵在这一轮没有选过别的人,就会同意A哨兵的请求,A哨兵票数+1;
  3. 只要A哨兵获得的票数超过半数,就会成为领头哨兵;
  4. 特殊情况:一轮投票中有好几个哨兵参加选举,但是最后票数都没超过半数,那么这几个哨兵会随机等待一个事件,重新进行上述步骤,直到领头哨兵被选出来。

(三)故障修复

哨兵挑选从数据库升级为主数据库需要遵循以下原则:

  • 选取优先级最高的从数据库,优先级通过slave-priority设置;
  • 如果有多个优先级相同的,选取增量复制队列中,命令偏移量最大的从数据库,偏移量最大说明复制越完整;
  • 如果还是有多个,选择运行时id较小的从数据库。

四、任务完成

Redis 主从配置、哨兵、集群模式 redis 主从复制、哨兵、集群模式 阅读详情

相关推荐

Redis 哨兵:开启高可用 Redis 之旅

分布式协同问题的解决思路,是保证分布式系统在不同节点能够相互独立情况下达成共识的一套解决方案,典型的实现就是通过投票算法或者共识算法解决问题,它要求在分布式节点协同时,只要半数以上的节点同意,即说明分布式节点全票通过,以保证分布式协同简洁高效,常见的实践有。而redis哨兵就是基于raft算法解决分布式协同的典型实现,传统主从复制模式一旦主节点因为故障不可达时,就需要人工干预进行故障转移,对于实时性较强的业务场景,人工干预无论从效率和风险成本都是非常高的。

禅与计算机程序设计的艺术 3817

六、redis哨兵

Sentinel简介安装部署配置三台主从复制,一主两从配置哨兵的三个节点配置优化API 简介 Redis的主从复制模式下,一旦主节点由于故障不能提供服务,需要人工将从节点晋升为主节点,同时还要通知应用方更新主节点地址,对于很多应用场景这种故障处理的方式是无法接受的。可喜的是Redis从2.8开始正式提供了Redis Sentinel (哨兵)架构来解决这个问题 基本概念 名词逻辑结构物理结构主节点 Redis主服务一个独立的Redis进程从节点 Redis从服务一个独立的Redis进程Redis数据节点主节

hjyhjy0的博客 415

VMware Workstation Pro 17 最新破解版安装教程(附永久激活密钥)

本文详细介绍了VMware Workstation Pro 17专业版的安装与配置指南,包括系统要求检查、官方版本安装流程、高级配置优化及常见问题排查。通过合规使用官方版本,开发者可以充分利用其强大的虚拟化能力,提升多平台开发与测试效率。

weixin_29327977的博客 3531

死磕 NoSQL 数据库系列(九):Redis sentinel 哨兵集群原理、部署及数据恢复

点关注公众号,回复“1024”获取2TB学习资源!前面我们介绍了:Redis 的持久化、主从复制与数据恢复。今天我将详细的为大家介绍 Redis sentinel( Redis 哨兵集群原理、功能、部署及数据恢复等)相关知识,希望大家能够从中收获多多!如有帮助,请点在看、转发支持一波!!!在上文主从复制的基础上,如果主节点出现故障该怎么办呢?在 Redis 主从集群中,哨兵机制是实现主从库自动切换...

民工哥的博客 752

商品评论中的实体情感分析

在之前的文章中我已经将商品评论中的评价实体,也就是特征(feature)给挖掘出来了,我看了一下,挖掘的效果还是不错的。原文链接:http://blog.youkuaiyun.com/chixujohnny/article/details/52794685 下面一步要做的是施加情感因子,也就是说,要将人们评论时候所连带的感情程度施加一下。这项任务的归类应该是情感分析技术。 目前该类问题的情感分析技

chixujohnny 7971

Carla-编译CarlaUE4提示HoloLens.Automation项目缺少Windows程序集?

编译CarlaUE4提示HoloLens.Automation项目缺少Windows程序集?不妨看看这个!

DSK_981029的博客 2573

必备技能17:iDesktop安装Sentinel许可问题处理

Sentinel LDK License Manager启动失败,获得不了许可

m1m2m3mmm的博客 3340

产生式系统的完整示例——医疗诊断系统(附python代码)

发烧(Fever)、咳嗽(Cough)、皮疹(Rash)、喉咙痛(SoreThroat)、头痛(Headache)、流涕(RunnyNose)、呼吸困难(ShortnessOfBreath)、白细胞计数高(HighWBC)、接触流感患者(ContactFlu)、接触麻疹患者(ContactMeasles)。(2)若规则库中存在尚未使用过的规则,而且它的前提(前件)可与综合数据库中的已知事实匹配,则转第(3)步;(3)执行当前选中的规则,并对该规则做上标记,把该规则执行后得到的结论送入综合数据库中。

搏博的专栏 1701

Redis数据库(四)哨兵和集群

redis3中高可用

sjc090132的博客 2304

Win10环境借助DockerDesktop部署Open web UI集成DeepSeek

Win10环境借助DockerDesktop部署Open web UI集成DeepSeek,并借助DuckDuckGo实现联网查询

虎鲸不是鱼 1698

【Bug已解决】codex file edit fails / Write operation denied — CodeX CLI 文件编辑失败解决方案

CodeX CLI 编辑文件时报写入被拒绝,本质是沙箱限制或权限不足。文中给出配置允许目录、修复权限、Git stash 管理冲突等完整方案。

一键难忘的博客 4296

数据库mysql主从哨兵_redis主从+哨兵模式

主从模式配置分为手动和配置文件两种方式进行配置,我现在有192.168.238.128(CentOS1)、192.168.238.131(CentOS3)、192.168.238.132(CentOS4)几台机器,只是配置文件的配置方式是降手动配置的命令放在配置文件中而已,本质是一致的。下面将对配置文件方式进行配置,我所述的案例,是基于我自己的另一篇博文《Redis的安装、服务配置》之上:1、我将...

weixin_30768403的博客 900

OMAPL138使用UPP读写测试

UPP测试代码 #include "hw_types.h" // 宏命令 #include "hw_syscfg0_OMAPL138.h" // 系统配置模块寄存器 #include "soc_OMAPL138.h" // DSP C6748 外设寄存器 #include "psc.h" // 电源与睡眠控制宏及设备抽象层函数声明 #include "interrupt.h" // DSP C6748 中断相关应用程序接...

wangjie36的博客 1192

Linux下 Redis集群搭建详解(主从+哨兵)

由于项目需要,搭建了一个 Redis 服务器集群,实现了主从配置和容灾部署,使得主机出现故障时,可自动进行容灾切换,下面就详细讲解一下如何利用 Redis 来实现。。Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。Redis不仅仅支持简单的key-value类型的数据,同时还提供 list,set,zset,hash等数据结构的存储。Redis支持数据的备份,即master-slave模式的数据备份。为什么用Redis?一个字,快!

程序员大佬超的博客 4万+

无线充电Qi协议正向通信FSK的解调设计

常见的FSK解调方法是使用频率锁相环(PLL)来跟踪输入信号中的频率变化。PLL根据输入信号的频率变化来生成数字信号,从而实现FSK信号的解调。本文将详细介绍无线充电Qi协议正向通信FSK的解调设计,并提供相应的源代码。在上述示例代码中,我们首先定义了FSK解调的参数,包括采样率、载波频率、每个比特的持续时间和比特判定阈值。最后,通过比较滤波后的信号与比特判定阈值,我们将解调后的数字数据转换为0和1的序列。请注意,上述代码仅为示例,实际的解调设计可能需要根据具体的应用场景和系统要求进行调整和优化。

IunScala的博客 2441

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

Redis 主从复制、哨兵和集群区别

转自:http://www.kongzid.com/archives/redis1 Redis Cluster是Redis的分布式集群解决方案,在 3.0 版本正式推出。在3.0之前的集群方案主要是主从复制和哨兵机制,3种方案各有优缺点。 主从复制(Replication)主要是备份数据、读写分离、负载均衡,一个Master可以有多个Slaves服务器作为备份。

孔子说 8332

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

Redis必学(二)redis主从模式和哨兵模式

1 概述 一般的文档,都把redis的集群方式分成三种:主从、哨兵、集群(这里的集群只是广义集群的一种)。但是这么分类很不严谨,哨兵模式,单独使用是没有意义的,哨兵的作用有两个: 监控:监控主节点和从节点是否正常运行 提醒:当被监控的某个Redis节点出现问题时, 哨兵(sentinel) 可以通过 API 向管理员或者其他应用程序发送通知。 故障迁移:主数据库出现故障时自动将从数据库转换为主数...

u012133048的博客 1万+

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Redis集群之主从、哨兵、分片集群,SpringBoot整合Redis集群

在我看来主从集群和哨兵这都不能算是真正的集群,只有Redis集群模式才是真的集群。 可能看到这么说大家会很疑惑,那么请看下面相信你一定会有所获。 Redis集群中文文档 之前一直担心搭建集群虚拟机内存不足,搭建完发现6个Redis只用了0.1G内存 文章目录一、主从集群二、哨兵集群2-1、哨兵的作用2-2、哨兵原理三、分片集群3-1、分片集群简单理解3-2、分片集群深入理解3-3、Redis集群图3-4、其它补充三、集群搭建3-1、环境准备3-2、配置文件修改3-3、启动全部的redis3-4、.

小道仙的后宫 3823

Redis主从复制、哨兵模式、Java客户端使用redis

7、Redis的发布订阅 1、是什么 进程间的一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息。 订阅/发布消息图 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Vc888GIQ-1597021540575)(E:\Typora笔记\images/TIM图片20200504140921.png)] 2、命令 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EfY4qQq2-1597021540577)(E:\Typora笔记\

星海IT学习之路 3163

Redis 主从、哨兵和集群 区别

主从模式 (master-slave) 备份数据、负载均衡,一个Master可以有多个Slaves。 主从模式强调 数据备份,读写分离等 Redis 复制功能的几个重要方面: 一个主服务器可以有多个从服务器。 不仅主服务器可以有从服务器, 从服务器也可以有自己的从服务器, 多个从服务器之间可以构成一个图状结构。 复制功能不会阻塞主服务器: 即使有一个或多个从服务器正在进行初次同步, 主服务器也可...

You can you up,No can no bb ! 1万+

redis 三种模式(主从复制,哨兵,集群)理论图文详解和 redis 总结

redis 主从同步 哨兵 集群 优化

shenyuanhaojie的博客 5万+

Redis数据库:高可用(主从复制、哨兵模式、cluster集群)

本文主要介绍Redis高可用集群,包括主从复制、哨兵模式、cluster集群,详细介绍其概念和搭建过程,希望对你有帮助!

十七拾的博客 2126

Redis主从/哨兵机制原理介绍

Redis 主从集群机制和Redis Sentinel 机制的基本使用和底层知识原理介绍,同时在使用哨兵机制过程中对于可能出现的数据丢失进行相关避坑方案讲解..............

qq_25409421的博客 3万+

Redis的主从复制和哨兵模式

1、redis主从复制是为了数据冗余和读写分离在这两种模式中,有两种角色主节点(master)和从节点(slave),主节点负责处理写的操作,并将数据更改复制到一个或多个从节点。这样我们的主节点负载减轻,从节点可以提供数据读取服务,实现读写分离,如果主节点停止服务,从节点之一可以立即接管主节点的角色,再继续提供服务。2、redis 哨兵模式是一个用于管理多个reids服务的系统,它提供监控、通知、自动故障转移、配置提供服务的功能,以实现redis高可用性。

taoxiayu的博客 1444

Redis三种集群模式:主从模式、哨兵模式和Cluster模式

redis主从:可实现高并发(读),典型部署方案:一主二从redis哨兵:可实现高可用,典型部署方案:一主二从三哨兵redis集群:可同时支持高可用(读与写)、高并发,典型部署方案:三主三从。

3783

redis学习三,Redis主从复制和哨兵模式

Redis主从复制 1.Master可以拥有多个slave 2.多个slave可以连接同一个Master外,还可以连接到其他的slave 3.主从复制不会阻塞Master在主从复制时,Master可以处理client请求。 4.提供系统的伸缩性。 关注公众号,我们一起学java 主从复制的过程 1.slave与Master建立连接,发送sync同步命令。 也就是说当用户在Mast...

我是个少年的博客 1万+
上一篇: Gitee项目上传步骤(转载)
下一篇: SpringMVC中DispatchServlet是单例还是多例(附源码分析)
life is ftc
博客等级 码龄9年 19粉丝 111原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值