redis从入门到精通(十四)——— redis-sentinel哨兵集群

运行时修改master-slave

修改一台slave为master

  1. 命令该服务不做其他redis服务的slave

命令:replicaof(slave) no one

2) 修改readonly为yes

 

其他的slave再指向new master A

1)命令该服务为new master A的slave

replicaof(slave)  ip port

 

port,daemonize,logfile和dir

port表示Sentinel节点的端口;

daemonize表示守护进程,开启则Sentinel将在后台运行;

logfile表示Sentinel节点的日志路径;

dir表示Sentinel节点的工作目录;

 

sentinel monitor mymaster

sentinel monitor <master-name> <ip> <port> <quorum>

1

Sentinel节点会定期监控主节点,所以从配置上必然也会有所体现,本

配置说明Sentinel节点要监控的是一个名字叫做,ip地址和端

口为的主节点。代表要判定主节点最终不可达所需要的票数。一

般建议将其设置为Sentinel节点的一半加1。

同时还与Sentinel节点的领导者选举有关,至少要有max(quorum,num(sentinels)/2+1)个Sentinel节点参与选举,才能选出领导者Sentinel,从而完成故障转移。例如有5个Sentinel节点,quorum=4,那么至少要有max(quorum,num(sentinels)/2+1)=4个在线Sentinel节点才可以进行领导者选举

如:

 

sentinel monitor mymaster 127.0.0.1 6379 2

1

sentinel down-after-milliseconds

sentinel down-after-milliseconds <master-name> <times>

1

每个Sentinel节点都要通过定期发送ping命令来判断Redis数据节点和其余Sentinel节点是否可达,如果超过了down-after-milliseconds配置的时间且没有有效的回复,则判定节点不可达,(单位为毫秒)就是超时时间。这个配置是对节点失败判定的重要依据。

 

sentinel parallel-syncs

sentinel parallel-syncs <master-name> <nums>

1

当Sentinel节点集合对主节点故障判定达成一致时,Sentinel领导者节点会做故障转移操作,选出新的主节点,原来的从节点会向新的主节点发起复制操作,parallel-syncs就是用来限制在一次故障转移之后,每次向新的主节点发起复制操作的从节点个数。如果这个参数配置的比较大,那么多个从节点会向新的主节点同时发起复制操作,尽管复制操作通常不会阻塞主节点,但是同时向主节点发起复制,必然会对主节点所在的机器造成一定的网络和磁盘IO开销。

 

sentinel failover-timeout

sentinel failover-timeout <master-name> <times>

1

failover-timeout通常被解释成故障转移超时时间,但实际上它作用于故

障转移的各个阶段:

a)选出合适从节点。

b)晋升选出的从节点为主节点。

c)命令其余从节点复制新的主节点。

d)等待原主节点恢复后命令它去复制新的主节点。

 

sentinel auth-pass

sentinel auth-pass <master-name> <password>

1

如果Sentinel监控的主节点配置了密码,sentinel auth-pass配置通过添加

主节点的密码,防止Sentinel节点对主节点无法监控。

 

sentinel notification-script

sentinel notification-script <master-name> <script-path>

1

sentinel notification-script的作用是在故障转移期间,当一些警告级别的Sentinel事件发生(指重要事件,例如-sdown:客观下线、-odown:主观下线)时,会触发对应路径的脚本,并向脚本发送相应的事件参数。

 

sentinel client-reconfig-script

sentinel client-reconfig-script <master-name> <script-path>

1

sentinel client-reconfig-script的作用是在故障转移结束后,会触发对应路

径的脚本,并向脚本发送故障转移结果的相关参数。

 

Sentinel的特点

Redis Sentinel具有以下几个功能:

·监控:Sentinel节点会定期检测Redis数据节点、其余Sentinel节点是否

可达。

·通知:Sentinel节点会将故障转移的结果通知给应用方。

·主节点故障转移:实现从节点晋升为主节点并维护后续正确的主从关

系。

·配置提供者:在Redis Sentinel结构中,客户端在初始化的时候连接的

是Sentinel节点集合,从中获取主节点信息

 

Redis Sentinel的优势:

 

·对于节点的故障判断是由多个Sentinel节点共同完成,这样可以有效地

防止误判。

·Sentinel节点集合是由若干个Sentinel节点组成的,这样即使个别Sentinel

节点不可用,整个Sentinel节点集合依然是健壮的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值