【Redis】16.Redis哨兵
哨兵简介
主机”宕机“后我们要做的事情
- 将宕机的master下线
- 找一个slave作为master
- 通知所有的slave连接新的master
- 启动新的master与slave
- 全量复制*N+部分复制 *N
但是这伴随着以下问题
- 谁来确认master宕机了
- 找一个主?怎么找法
- 修改配置后,原始的主恢复了怎么办?
哨兵
哨兵(sentinel) 是一个分布式系统,用于对主从结构中的每台服务器进行监控,当出现故障时通过投票机制选择新的master并将所有slave连接到新的master
哨兵的作用
- 监控
不断地检查master和slave是否正常运行
master存活检测、master与slave运行情况检测 - 通知(提醒)
当被监控地服务器出现问题时,向其他(哨兵间,客户端)发送通知 - 自动故障转移
断开master与slave连接,选取一个slave作为master,将其他slave连接到新的master,并告知客户端新的服务器地址
注意:哨兵也是一台redis服务器,只是不提供数据服务,通常哨兵配置数量为单数
启用哨兵模式
- 配置一拖二的主从结构
- 配置三个哨兵(配置相同,端口不同)
查看sentinel.conf - 启动哨兵
redis-sentinel sentinel-端口号.conf
哨兵工作原理
主从切换
- 哨兵在进行主从切换过程中经历三个阶段
- 监控
- 通知
- 故障转移
阶段一:监控阶段
sentinel会向master要状态,然后根据master中的slave信息向slave要状态,也会向其他的sentinel要状态,而且,sentinel之间会组建一个对应的频道,在里面发布信息、订阅信息、收信息、同步信息。这就是监控阶段的工作过程。
阶段二:通知阶段
维护一个长期的信息对等阶段。sentinel侦听master、slave的状态,并在sentinel之间交互,维护信息对等。
阶段三:故障转移阶段
只有一个sentinel侦测到一个master挂了时,将其状态记为S_DOWN(主观下线),然后,将该主机挂了的消息在sentinel内网中交互,然后,其他的sentinel得到该消息,就也去看该主机是否真的挂了,如果超过半数的sentinel认为master挂了,那就是真的挂了(客观下线 ),状态记为O_DOWN。一旦进入客观下线状态,就开始清理队伍。
选择领头哨兵
处置阶段
总结:
- 监控 ——》同步信息
- 通知——》保持联通
- 故障转移
发现问题-》竞选负责人-》优选新master-》新master上任,其他slave切换master,原master作为slave故障回复后连接
【Redis】16.Redis哨兵相关推荐
- Redis(16) -- Redis集群
Redis6 12.1)存在问题 容量不够,redis如何进行扩容? 并发写操作, redis如何分摊? 另外,主从模式,薪火相传模式,主机宕机,导致ip地址发生变化,应用程序中配置需要修改对应的主机 ...
- 【带你重拾Redis】Redis 哨兵集群实现高可用
Redis 哨兵集群实现高可用 哨兵的介绍 sentinel,中文名是哨兵.哨兵是 Redis 集群架构中非常重要的一个组件,主要有以下功能: 集群监控:负责监控 Redis master 和 sla ...
- redis 系列25 哨兵Sentinel (高可用演示 下)
原文:redis 系列25 哨兵Sentinel (高可用演示 下) 一. Sentinel 高可用环境准备 1.1 Sentinel 集群环境 环境 说明 操作系统版本 CentOS 7.4.17 ...
- redis logfile 只读_docker 配置redis主从,哨兵sentinel
注释:docker自行安装,主从使用一主两从,然后使用sentinel进行高可用配置,当主服务器挂掉,从服务器自动升为主服务器. 主从模式介绍 主从模式是三种模式中最简单的,在主从复制中,数据库分为两 ...
- Redis主从复制、哨兵、Cluster安装部署
文章目录 1.主从复制(Replication) 1.1.部署主从复制 1.1.1.环境说明 1.1.2.安装步骤 1.2.配置主从 1.3.主从复制优缺点 2.哨兵(Sentinel) 2.1.部署 ...
- Redis主从、哨兵、 Cluster集群一锅端!
天跟小伙伴们一起学习Redis的主从.哨兵.Redis Cluster集群. Redis主从 Redis哨兵 Redis Cluster集群 1. Redis 主从 面试官经常会问到Redis的高可用 ...
- 一篇教会你,Redis主从、哨兵、 Cluster集群。
前言 大家好,今天跟小伙伴们一起学习Redis的主从.哨兵.Redis Cluster集群. Redis主从 Redis哨兵 Redis Cluster集群 1. Redis 主从 面试官经常会问到R ...
- mysql哨兵模式_3台服务器Redis高可用哨兵模式实现
1. 介绍 Redis 的 Sentinel 系统用于管理多个 Redis 服务器(instance), 该系统执行以下三个任务: 监控(Monitoring): Sentinel 会不断地检查你的主 ...
- 3台服务器Redis高可用哨兵模式
3台服务器Redis高可用哨兵模式 @(学习)[redis, 高可用] 3台服务器Redis高可用哨兵模式 介绍 redis程序安装 哨兵模式配置 1 主redis配置 2 从redis配置 3 启动 ...
- Redis集群-哨兵模式
版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/liuzhixiong_521/article/details/84797609 文章目录 概述 ...
最新文章
- 国贫县山西永和:“一揽子”保险“保”脱贫
- Kafka面试题及答案整理 110道 (持续更新)
- Python | 除法
- OpenKruise v0.7.0发布:增加周期任务分发控制器
- typescript 怎么表示当前时间减一个月_TypeScript 入门知识点总结
- 专业软件 —— 硬件评测
- 【总结】 Lucas定理
- centos7黑客帝国装逼
- SpringBoot非官方教程 | 终章:文章汇总
- python zemax_python的用途和优点
- 计算机鼠标能用键盘不能用,电脑键盘鼠标都不能用了,怎么回事?
- c++ 秋招总结 字节跳动
- iOS9 未受信任的企业级开发者
- 【我们一起写框架】MVVM的WPF框架(五)—完结篇
- 当前佛教界的乱相之一就是以凡滥圣、惑乱人心
- grpc istio_在皮质数据湖中使用grpc envoy和istio进行大规模数据摄取
- python实现杨辉三角思路_Python极简代码实现杨辉三角示例代码
- 取消SVN感叹号即去除版本库
- 管理口安装服务器操作系统,管理口安装服务器操作系统
- android 杀死程序收不到推送_Android收不到推送解决方案
热门文章
- 验证整数 Double 转 int 两种写法
- java.lang.NoClassDefFoundError: org/springframework/context/ApplicationContextAware
- xml节点的添加和删除
- Shiro缓存使用Redis、Ehcache、自带的MpCache实现的三种方式实例
- LeetCode 1004.最长连续1的个数
- (4)pyspark---dataframe清理
- socket多线程方式案例
- 做红颜知己就要恪守界限
- AJPFX实例集合嵌套之ArrayList嵌套ArrayList
- 缓存中常见的概念及解决方案