在Leader触发failover之前,首先wait数秒(随即0~5),以便让其他sentinel实例准备和调整。如果一切正常,那么leader就需要开始将一个salve提升为master,此slave必须为状态良好(不能处于SDOWN/ODOWN状态)且权重值最低(redis.conf中)的,当master身份被确认后,开始failover

A)“+failover-triggered”: Leader开始进行failover,此后紧跟着“+failover-state-wait-start”,wait数秒。

B)“+failover-state-select-slave”: Leader开始查找合适的slave

C)“+selected-slave”: 已经找到合适的slave

D) “+failover-state-sen-slaveof-noone”: Leader向slave发送“slaveof no one”指令,此时slave已经完成角色转换,此slave即为master

E) “+failover-state-wait-promotition”: 等待其他sentinel确认slave

F)“+promoted-slave”:确认成功

G)“+failover-state-reconf-slaves”: 开始对slaves进行reconfig操作。

H)“+slave-reconf-sent”:向指定的slave发送“slaveof”指令,告知此slave跟随新的master

I)“+slave-reconf-inprog”: 此slave正在执行slaveof + SYNC过程,如过slave收到“+slave-reconf-sent”之后将会执行slaveof操作。

J)“+slave-reconf-done”: 此slave同步完成,此后leader可以继续下一个slave的reconfig操作。循环G)

K)“+failover-end”: 故障转移结束

L)“+switch-master”:故障转移成功后,各个sentinel实例开始监控新的master。

转载于:https://www.cnblogs.com/moonandstar08/p/5001902.html

Redis failover过程相关推荐

  1. 通过Keepalived实现Redis Failover自动故障切换功能(整理中) .

    通过Keepalived实现Redis Failover自动故障切换功能 分类: Linux 2013-06-21 16:44 1049人阅读 评论(1) 收藏 举报 详细可参考http://heyl ...

  2. mysql 失效转移_MySQL基于MHA的FailOver过程

    大家好,我是anyux.本文介绍MySQL基于MHA的FailOver过程. MHA FailOver过程详解 什么是FailOver 故障转移 主库宕机,一直到业务恢复正常的处理过程 如何处理Fai ...

  3. 启动Redis的过程

    启动Redis的过程 1. 下载Redis安装包 2. 解压缩 3. 进入解压缩的文件, 4. 启动 Redis-server.exe 5.启动Redis-cli.exe,出现Could not co ...

  4. 通过Keepalived实现Redis Failover自动故障切换功能

    参考资料: http://patrick-tang.blogspot.com/2012/06/redis-keepalived-failover-system.html http://deidara. ...

  5. 【Linux】【服务器】 CentOS7下安装Redis详细过程步骤

    Linux 源码安装 一.下载地址:http://redis.io/download,下载最新稳定版本. # wget http://download.redis.io/releases/redis- ...

  6. Redis使用过程出现类型转换异常问题- 20190220

    问题描述: 使用redis过程中,出现类型转换异常问题,出现在存数据和取数据时.而且相同代码在本地测试无异常,而提交到测试环境,则会出现问题. 问题原因: 最后定位到,原因在使用redis存取数据时, ...

  7. maxwaitmill redis_在redis使用过程遇到的一些问题的总结

    tpn(taobao push notification)在使用redis计算消息未读数的过程中,遇到了一系列的问题,下面把这个过程整理了一下,也让大家了解这个纠结的过程,供大家以后使用redis或者 ...

  8. redis安装过程中遇到的问题

    正常的 wget http://download.redis.io/releases/redis-3.0.7.tar.gz下载 解压缩 tar -zxvf redis-3.0.7.tar.gz cd ...

  9. 深入redis内部之redis启动过程之一

    redis作为一个服务器,它的启动是从main函数开始的.redis.c 1. 进程重命名 #ifdef INIT_SETPROCTITLE_REPLACEMENTspt_init(argc, arg ...

最新文章

  1. PYTHON -MYSQLDB安装遇到的问题和解决办法
  2. free 内存 注意点的事
  3. Google引火烧身 还是致命一击
  4. 如果Java快死了,那么它肯定看起来非常健康
  5. leetcode 73. 矩阵置零
  6. Caffe中如果高效实现卷积层
  7. 我学到的5件事,指导2,500名有抱负的开发人员
  8. mysql5.7 至少需要1560,mysq5.7.28配置innodb_page_size错误引起的错误1071(42000)
  9. last_inner = inner_lateral + inner_top_down RuntimeError: The size of tensor a (81) must match the s
  10. 安装vs2017出现闪退现象_win7安装vs2017时闪退
  11. 计算机打字键盘亮怎么设置,win7系统键盘灯亮着但是不能打字的解决方法?
  12. 职场高效率:用印象笔记来提升你的工作效率
  13. 循环冗余校验码CRC原理与LFSR循环码编码器原理
  14. 电脑安全证书错误怎么处理比较好
  15. 无刷直流电机四象限matlab pudn,一种无刷直流电机四象限运行的PWM控制方法与流程...
  16. Android TextView设置背景色和边框
  17. STC51从入门到精通(汇编)~~~ 第一讲:概述
  18. 微信公众平台开发——引言
  19. 哈工大软件构造课程知识点总结(一)
  20. 前端技术书(前端优秀书籍整理)

热门文章

  1. 数论--中国剩余定理模板
  2. Python+Opencv实现自动化阅卷
  3. Perl获取当前系统时间
  4. ashx和asmx的HttpContext
  5. 大数据平台蓝图_数据科学面试蓝图
  6. 美国人口普查年收入比赛_训练网络对收入进行分类:成人普查收入数据集
  7. api 规则定义_API有规则,而且功能强大
  8. 为什么银行存款不能按复利计息?
  9. 最穷的日子,你是如何熬过来的?
  10. Windows Azure SDK 1.6让Visual Studio下的Azure开发更高效