设为首页 收藏本站
查看: 690|回复: 0

[经验分享] Redis-sentinel哨兵模式集群方案配置

[复制链接]

尚未签到

发表于 2018-11-2 13:51:29 | 显示全部楼层 |阅读模式
# Example sentinel.conf  

  
# 哨兵sentinel实例运行的端口 默认26379
  

  
port 26379
  

  

  
# 哨兵sentinel的工作目录
  

  
dir /tmp
  

  
# 哨兵sentinel监控的redis主节点的 ip port
  

  
# master-name  可以自己命名的主节点名字 只能由字母A-z、数字0-9 、这三个字符".-_"组成。
  

  
# quorum 当这些quorum个数sentinel哨兵认为master主节点失联 那么这时 客观上认为主节点失联了
  

  
# sentinel monitor   
  

  
sentinel monitor mymaster 127.0.0.1 6379 2
  

  

  
# 当在Redis实例中开启了requirepass foobared 授权密码 这样所有连接Redis实例的客户端都要提供密码
  

  
# 设置哨兵sentinel 连接主从的密码 注意必须为主从设置一样的验证密码
  

  
# sentinel auth-pass  
  

  
sentinel auth-pass mymaster MySUPER--secret-0123passw0rd
  

  

  
# 指定多少毫秒之后 主节点没有应答哨兵sentinel 此时 哨兵主观上认为主节点下线 默认30秒
  

  
# sentinel down-after-milliseconds  
  

  
sentinel down-after-milliseconds mymaster 30000
  

  

  
# 这个配置项指定了在发生failover主备切换时最多可以有多少个slave同时对新的master进行 同步, 这个数字越小,完成failover所需的时间就越长,  但是如果这个数字越大,就意味着越 多的slave因为replication而不可用。
  

  
# 可以通过将这个值设为 1 来保证每次只有一个slave 处于不能处理命令请求的状态。
  

  
# sentinel parallel-syncs  
  

  
sentinel parallel-syncs mymaster 1
  

  

  
# 故障转移的超时时间 failover-timeout 可以用在以下这些方面:
  

  
#1. 同一个sentinel对同一个master两次failover之间的间隔时间。
  

  
#2. 当一个slave从一个错误的master那里同步数据开始计算时间。直到slave被纠正为向正确的master那里同步数据时。
  

  
#3.当想要取消一个正在进行的failover所需要的时间。
  

  
#4.当进行failover时,配置所有slaves指向新的master所需的最大时间。不过,即使过了这个超时,slaves依然会被正确配置为指向master,但是就不按parallel-syncs所配置的规则来了
  

  
# 默认三分钟
  

  
# sentinel failover-timeout  
  

  
sentinel failover-timeout mymaster 180000
  

  

  
# SCRIPTS EXECUTION
  

  
#配置当某一事件发生时所需要执行的脚本,可以通过脚本来通知管理员,例如当系统运行不正常时发邮件通知相关人员。
  

  
#对于脚本的运行结果有以下规则:
  

  
#若脚本执行后返回1,那么该脚本稍后将会被再次执行,重复次数目前默认为10
  

  
#若脚本执行后返回2,或者比2更高的一个返回值,脚本将不会重复执行。
  

  
#如果脚本在执行过程中由于收到系统中断信号被终止了,则同返回值为1时的行为相同。
  

  
#一个脚本的最大执行时间为60s,如果超过这个时间,脚本将会被一个SIGKILL信号终止,之后重新执行。
  

  
#通知型脚本:当sentinel有任何警告级别的事件发生时(比如说redis实例的主观失效和客观失效等等),将会去调用这个脚本,
  

  
这时这个脚本应该通过邮件,SMS等方式去通知系统管理员关于系统不正常运行的信息。调用该脚本时,将传给脚本两个参数,
  

  
一个是事件的类型, 一个是事件的描述。
  

  
如果sentinel.conf配置文件中配置了这个脚本路径,那么必须保证这个脚本存在于这个路径,并且是可执行的,否则sentinel无法正常启动成功。
  

  
#通知脚本
  

  
# sentinel notification-script  
  

  
sentinel notification-script mymaster /var/redis/notify.sh
  

  
# 客户端重新配置主节点参数脚本
  

  
# 当一个master由于failover而发生改变时,这个脚本将会被调用,通知相关的客户端关于master地址已经发生改变的信息。
  

  
# 以下参数将会在调用脚本时传给脚本:
  

  
#      
  

  
# 目前总是“failover”,
  

  
# 是“leader”或者“observer”中的一个。
  

  
# 参数 from-ip, from-port, to-ip, to-port是用来和旧的master和新的master(即旧的slave)通信的
  

  
# 这个脚本应该是通用的,能被多次调用,不是针对性的。
  

  
# sentinel client-reconfig-script  
  

  
sentinel client-reconfig-script mymaster /var/redis/reconfig.sh



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-629915-1-1.html 上篇帖子: Redis笔记整理(三):进阶操作与高级部分 下篇帖子: centos7 redis安装
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表