Linux安装redis-哨兵模式部署


哨兵部署:在master节点出现故障后,哨兵进程会自动将master下线,自动将子节点提升为主节点。完成故障转移,实现高可用性。

91226c7b-0f7a-4f6e-9165-038db56113b9.png

这个架构图里面,我们部署了3个哨兵节点组成了一个哨兵集群。它们在启动的时候会进行哨兵选举,选举出一个领导者,在出现故障转移的时候,由领导者进行主导,而触发故障转移需要大部分的哨兵节点都认为主节点发生了故障。这个状态我们称为客观下线。与之对应的是主观下线:也就是单个哨兵发现主节点出现故障,会去询问其他的节点,确认当前主节点是否已经出现故障,当其他哨兵确认主节点出现了故障,并且数量超过了大多数。这时就会从主观下线转为客观下线,一旦确认客观下线就会触发故障转移。由领导者主导,将主节点进行下线操作。然后在从节点里选一个晋升为主机点。然后告知客户端,新的主节点在什么位置,实现无缝切换。旧的主节点恢复后会重新加入到整个集群中,只是角色变成了从节点。

3.1. 哨兵模式部署

整体架构:这个结构是基于主从部署的基础上,新增你了3个哨兵节点,每个哨兵节点都是监控 同一个主节点129的状态.


d4a5aad5-25da-4365-8569-46e50d144e53.png


3 个机器都需要修改 sentinel.conf 配置(vim sentinel.conf),配置完成之后先从主节点开始启动哨兵。
protected-mode no #6⾏,关闭保护模式
daemonize yes  #15⾏,指定sentinel为后台启动
logfile /opt/software/redis/redis-stable/sentinel.log #34⾏,指定⽇志存放路径
dir /opt/software/redis #73⾏,指定数据库存放路径
sentinel monitor mymaster 192.168.75.129 6379 2#93⾏,修改 指定该哨兵节点监控20.0.0.20:6379这个主节点,该主节点的名称是mymaster,最后的2的含义与主节点的故障判定有关:⾄少需要2个哨兵节点同意,才能判定主节点故障并进⾏故障转移
sentinel down-after-milliseconds mymaster 30000 #134⾏,判定服务器down掉的时间周期,默认30000毫秒(30秒)
sentinel failover-timeout mymaster 180000 #234⾏,故障节点的最⼤超时时间为180000(180秒)

将三个服务都启动redis-server redis.conf后,可以用redis-cli info replication查看下当前主从架构的状态。

b5e1a4ca-2598-46dd-b181-cd856acec4dd.png

    • 操作

    • 然后启动哨兵(主节点操作):redis-sentinel sentinel.conf

    • 查看哨兵(主节点操作):   redis-cli -p 26379 info sentinel

测试:将129主节点下线:redis-cli shutdown,然后查看当前的sentinel.log日志: cat sentinel.log。
节点查看状态:redis-cli info replication。发现131的节点已变成了主节点。

0be9eff4-7ba9-49e7-8c4c-83130f738b0a.png


也可以到129上,日志文件查看下变化。cat redis.conf     cat sentinel.conf


本文原创,转载必追究版权。

分享给朋友:

相关文章

使用Myeclipse 8.5开发基于JAX-WS的Web service实例

 本文为Web service 开发入门篇,主要介绍在Myeclipse 8.5环境下开发Web service的服务程序和客户端程序的基本流程。 在Weblogic 11g...

Java判断是数字还是字符串

方法一:利用正则表达式public class Testone {public static void main(String[] ...

MySQL、Oracle数据库字段分别设置默认系统时间

MySQL设置方法:1、将字段类型设为  TIMESTAMP 2、将默认值设为  CURRENT_TIMESTAMPMySQL 脚本实现用例--添加CreateTime 设置默认时...

Jfinal +百度WebUploader组件实现多图片上传实例

Jfinal +百度WebUploader组件实现多图片上传实例

百度 Web Uploader文档的getting-started文档说明太简单,没有写全,在这里给大家补全($list会报没有定义,文档中确实没给定义)效果:有用部分外部jar包jfinal-2.0...

看了《欢乐颂》,才知道什么是真正的教养!

看了《欢乐颂》,才知道什么是真正的教养!

中国人一直讲究“穷养儿富养女”。然而我们发现,在现实生活中,甭管是儿子还是女儿,很多父母都采用“富养”的方式。为孩子创造良好的物质条件,宁可苦自己也不能苦孩子,自己可以衣衫褴褛,孩子必须披金戴银。比如...

表单用submit提交前增加校验

有时由于各种原因 input 必须用submit类型提交,在表单提交前增加校验。直接附代码 <HTML>      <he...

评论列表

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。