语法 https://segmentfault.com/a/1190000002680804

启动3台redis 6379,6380,6381

cp 多个redis.conf文件
开启daemonize yes
PID文件名字
端口
log文件名字
dump.rdb名字 requirepass 密码

更改从机的masterauth密码 和requirepass密码一致.

下载的redis 有默认的sentinel.conf默认配置文件

touch sentinel.conf.创建一个哨兵配置文件


#1表示在sentinel集群中只要有1个sentinel认为master死了, 就算真的死了,
  #集群的时候sentinel也是多个

sentinel monitor mymaster 127.0.0.1 6380 1

#如果10秒后,mysater仍没活过来,则启动failover(主备切换)
#sentinel 会给master发送心跳PING来确认
sentinel down-after-milliseconds mymaster #指定多少个slave同时对新matster同步, 值越小耗时越长,越大多个slave因为replication不可以
#设定为1 每次只有1个slve处于不可以处理命令请求状态
sentinel failover-timeout mymaster #后台执行
daemonize yes #指定工作目录
dir "/usr/local/redis/sentinel-work" protected-mode no logfile "/usr/local/redis/sentinel-log/sentinel.log" #主 的密码
sentinel auth-pass mymaster bb123456
# Generated by CONFIG REWRITE
port

执行redis-server redis.conf启动redis

执行redis-cli -p 6379 [6380,6381] 进入redis客户端查看info replication信息,

运行sentinel有两种方式:

redis-sentinel /path/to/sentinel.conf
redis-server   /path/to/sentinel.conf --sentinel

主从切换日志

:X  Jun ::55.951 # +sdown master mymaster 127.0.0.1
:X Jun ::55.951 # +odown master mymaster 127.0.0.1 #quorum /
:X Jun ::55.951 # +new-epoch
:X Jun ::55.951 # +try-failover master mymaster 127.0.0.1
:X Jun ::55.954 # +vote-for-leader 0bc851c61ce22b98c9b3c7857f240721a5d6c9b5
:X Jun ::55.954 # +elected-leader master mymaster 127.0.0.1
:X Jun ::55.954 # +failover-state-select-slave master mymaster 127.0.0.1
:X Jun ::56.038 # +selected-slave slave 127.0.0.1: 127.0.0.1 @ mymaster 127.0.0.1
:X Jun ::56.038 * +failover-state-send-slaveof-noone slave 127.0.0.1: 127.0.0.1 @ mymaster 127.0.0.1
:X Jun ::56.128 * +failover-state-wait-promotion slave 127.0.0.1: 127.0.0.1 @ mymaster 127.0.0.1
:X Jun ::57.020 # +promoted-slave slave 127.0.0.1:6381 127.0.0.1 6381 @ mymaster 127.0.0.1 6379 选举6381作为新的主机
:X Jun ::57.020 # +failover-state-reconf-slaves master mymaster 127.0.0.1
:X Jun ::57.080 * +slave-reconf-sent slave 127.0.0.1: 127.0.0.1 @ mymaster 127.0.0.1
:X Jun ::58.027 * +slave-reconf-inprog slave 127.0.0.1: 127.0.0.1 @ mymaster 127.0.0.1
:X Jun ::58.027 * +slave-reconf-done slave 127.0.0.1: 127.0.0.1 @ mymaster 127.0.0.1
:X Jun ::58.088 # +failover-end master mymaster 127.0.0.1
:X Jun ::58.088 # +switch-master mymaster 127.0.0.1 127.0.0.1 6381   切换81为新的主机
:X Jun ::58.088 * +slave slave 127.0.0.1: 127.0.0.1 @ mymaster 127.0.0.1
:X Jun ::58.088 * +slave slave 127.0.0.1: 127.0.0.1 @ mymaster 127.0.0.1 6381
:X Jun ::01.162 # +sdown slave 127.0.0.1: 127.0.0.1 @ mymaster 127.0.0.1

Redis 哨兵模式 带密码单机的更多相关文章

  1. Spring Boot 入门(十):集成Redis哨兵模式,实现Mybatis二级缓存

    本片文章续<Spring Boot 入门(九):集成Quartz定时任务>.本文主要基于redis实现了mybatis二级缓存.较redis缓存,mybaits自带缓存存在缺点(自行谷歌) ...

  2. [Redis] Redis哨兵模式部署 - zz胖的博客

    1. 部署Redis集群 redis的安装及配置参考[redis部署] 本文以创建一主二从的集群为例. 1.1 部署与配置 先创建sentinel目录,在该目录下创建8000,8001,8002三个以 ...

  3. Redis哨兵模式的配置

    绪论 现有三台设备,192.168.137.11.192.168.137.12和192.168.137.13,要求在三台设备上实现redis哨兵模式,其中192.168.137.11为master,其 ...

  4. Redis哨兵模式主从同步不可以绑定127.0.0.1或者0.0.0.0,不然无法进行主从同步

    Redis哨兵模式主从同步不可以绑定127.0.0.1或者0.0.0.0,不然无法进行主从同步,一定要绑定内网IP,而对于跨机房的问题,可以使用iptables进行nat转发来解决.

  5. Redis哨兵模式大key优化

    目前,Redis哨兵模式,内存资源有限,有很多key大于500M,性能待优化.需要迁移至Redis-cluster集群中.        涉及到的key如下: 0,hash,duser_record, ...

  6. Springboot2.x集成Redis哨兵模式

    Springboot2.x集成Redis哨兵模式 说明 Redis哨兵模式是Redis高可用方案的一种实现方式,通过哨兵来自动实现故障转移,从而保证高可用. 准备条件 pom.xml中引入相关jar ...

  7. Redis 哨兵模式(Sentinel)

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

  8. 搭建redis哨兵模式

    搭建redis哨兵模式,一主两从三哨兵   1.从官网下载redis安装包:此处是redis-5.0.7.tar.gz 2.上传到目录 /utxt/soft 3.解压 4.cd /utxt/soft/ ...

  9. docker-compose一键部署redis一主二从三哨兵模式(含密码,数据持久化)

    本篇基于centos7服务器进行部署开发 一.拉取redis镜像,使用如下命令 docker pull redis 1.查看镜像是否拉取成功,使用如下命令 docker images 显示如下则证明拉 ...

随机推荐

  1. 从数组里随机获取N项

    基础知识: 复制数组: (1)循环遍历复制(不推荐) var arry = [1,5,9,7], new_arry = [], n = 0, len = arry.length; for(;n< ...

  2. TCP握手及状态图

    为什么需要“三次握手”? 为了解决“网络中存在延迟的重复分组”的问题,即为了防止已失效的连接请求报文段突然又传送到了服务端,因而产生错误. 例:“已失效的连接请求报文段”的产生在这样一种情况下:cli ...

  3. windows 下搭建python虚拟环境

    ###################################windows 下测试环境 C:\Users\wongg\django-cmdb>cd ..\cmdb ##下载get-pi ...

  4. 非ie浏览器必备函数常识

    场景描述: 我们都知道IE浏览器和非IE浏览器都有很多功能一样但写法不同,或者各自都有一些自己独特的方法,那么为了保持兼容性和便于编写,我们可以通过这两个方法给非IE浏览器的对象增加自己没有,但IE有 ...

  5. [批处理]简易命令行RAR

    这个BAT是为了病毒满满的信管实验室而专门定制的,在这机房上了两年,跟病毒也玩了两年了,也都脸熟的不行不行的了,来来回回就那几个病毒不是autorun.inf就是Desktop__.ini要么就是ga ...

  6. linux 服务器性能调优总结

    1.性能分析的几个方面 https://blog.csdn.net/w174504744/article/details/53894127 2.cpu 性能分析工具 perf https://blog ...

  7. tensorflow中 tf.train.slice_input_producer 和 tf.train.batch 函数

    tensorflow数据读取机制 tensorflow中为了充分利用GPU,减少GPU等待数据的空闲时间,使用了两个线程分别执行数据读入和数据计算. 具体来说就是使用一个线程源源不断的将硬盘中的图片数 ...

  8. 取出表A中第31到第40记录

    方法一: select top 10 * from A where RowId not in (select top 10 RowId from A) 方法二(使用临时表): with tempTab ...

  9. C语言--第四次作业

    作业要求一 (70分) 实践最简答的项目wordcount,必须完成其中的基本功能,若可以完成其他功能给予加分.完成后请将你的设计思路.主要代码写在本次作业博客里. 真的迷茫<(_ _)> ...

  10. jqGrid使用json实现的范例一

    qGrid 是一个用来显示网格数据的jQuery插件,通过使用jqGrid可以轻松实现前端页面与后台数据的ajax异步通信.文档比较全面,其官方网址为:http://www.trirand.com. ...