redis哨兵常用命令和监控示例详解


Posted in Redis onMay 27, 2021

sentinel monitor advertise 192.168.0.5 28001 2
sentinel set advertise client-reconfig-script /etc/redis/reconfig.sh
sentinel flushconfig

sentinel启动后需要手动将配置文件对应的调整为sentinel deny-scripts-reconfig no,否则不支持命令行runtime修改client-reconfig-script
# SECURITY
#
# By default SENTINEL SET will not be able to change the notification-script
# and client-reconfig-script at runtime. This avoids a trivial security issue
# where clients can set the script to anything and trigger a failover in order
# to get the program executed.

#sentinel deny-scripts-reconfig yes

role命令
查看sentinel monitor的master names名字

sentinel masters
查看所有监控master及其配置信息

sentinel master monitor_name
查看指定监控master及其配置信息

sentinel failover monitor_name
手动进行swithover切换主从,如果有多个slave会选择哪个slave做为新的master,待测试?

sentinel moniotr <name> <ip> <port> <quorum>
添加监视的master

sentinel remove monitor_name
将监视的为name的master移除监视

sentinel set <mastername> [<option> <value>]
修改监视的master的一些属性
down-after-milliseconds 过了这个时间考虑master go down
failover-timeout 刷新故障转移状态的最大时间
parallel-syncs slave同时reconfigure的个数
notification-script 设置通知脚本
client-reconfig-script 设置通知脚本
auth-pass 执行auth的密码
quorum 修改master的quorum

sentinel flushconfig

将sentinel信息写入到配置文件中

sentinel配置文件示例:

daemonize yes
pidfile "/home/redis/sentinel/25000/redis.pid"
loglevel notice
protected-mode yes
bind 192.168.100.5
logfile "/home/redis/sentinel/25000/redis.log"
port 25000
dir "/home/redis/sentinel/25000"
# Generated by CONFIG REWRITE
sentinel myid 0338c4ceb7cf39a8037a22fa17d0f7a76923b5a0
sentinel deny-scripts-reconfig no
sentinel monitor advertise 192.168.100.5 28001 2
sentinel client-reconfig-script advertise /etc/redis/reconfig.sh
sentinel config-epoch advertise 4
sentinel leader-epoch advertise 4
sentinel known-replica advertise 192.168.100.6 28001
sentinel known-sentinel advertise 192.168.100.7 25000 06f937e1d35496dc66d2899e3b25e286ff91d658
sentinel known-sentinel advertise 192.168.100.6 25000 ede86ac0b7d2ff7b532d0e5352ba6e33dd36670e
 
sentinel monitor mymaster1 192.168.100.6 28002 2
sentinel client-reconfig-script mymaster1 /etc/redis/reconfig.sh
sentinel config-epoch mymaster1 5
sentinel leader-epoch mymaster1 1
sentinel known-replica mymaster1 192.168.100.5 28002
sentinel known-sentinel mymaster1 192.168.100.7 25000 06f937e1d35496dc66d2899e3b25e286ff91d658
sentinel known-sentinel mymaster1 192.168.100.6 25000 ede86ac0b7d2ff7b532d0e5352ba6e33dd36670e
sentinel current-epoch 5

sentinel client-reconfig-script脚本示例

#!/bin/bash
 
check_time=$(date +"%F-%T")
master_name="$1"
from_ip="$4"
from_port="$5"
to_ip="$6"
to_port="$7"
 
 
#填写自己正确的机器人链接
curl 'https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxxx' \
   -H 'Content-Type: application/json' \
   -d '
   {
        "msgtype": "text",
        "text": {
            "content": "【'$check_time' '$master_name' redis failover】\nfrom\n'$from_ip:$from_port'\nto\n'$to_ip:$to_port'",
            "mentioned_list":["xiaodongl"]
        }
   }'

以上就是redis哨兵常用命令和监控的详细内容,更多关于redis哨兵常用命令的资料请关注三水点靠木其它相关文章!

Redis 相关文章推荐
详解Redis实现限流的三种方式
Apr 27 Redis
Redis延迟队列和分布式延迟队列的简答实现
May 13 Redis
Django使用redis配置缓存的方法
Jun 01 Redis
SpringBoot 集成Redis 过程
Jun 02 Redis
Windows中Redis安装配置流程并实现远程访问功能
Jun 07 Redis
SpringBoot集成Redis的思路详解
Oct 16 Redis
Redis高并发防止秒杀超卖实战源码解决方案
Nov 01 Redis
Springboot/Springcloud项目集成redis进行存取的过程解析
Dec 04 Redis
一文搞懂Redis中String数据类型
Apr 03 Redis
解决 Redis 秒杀超卖场景的高并发
Apr 12 Redis
解决 redis 无法远程连接
May 15 Redis
redis protocol通信协议及使用详解
Jul 15 Redis
Java Socket实现Redis客户端的详细说明
May 26 #Redis
redis实现共同好友的思路详解
详解Redis瘦身指南
May 26 #Redis
Redis高级数据类型Hyperloglog、Bitmap的使用
May 24 #Redis
redis实现排行榜功能
May 24 #Redis
分布式锁为什么要选择Zookeeper而不是Redis?看完这篇你就明白了
May 21 #Redis
Redis 配置文件重要属性的具体使用
May 20 #Redis
You might like
用PHP编写PDF文档生成器
2006/10/09 PHP
jqPlot 图表中文API使用文档及源码和在线示例
2012/02/07 Javascript
Javascript this 的一些学习总结
2012/08/31 Javascript
Jquery 模板数据绑定插件的使用方法详解
2013/07/08 Javascript
JavaScript常用小技巧小结
2014/12/29 Javascript
js实现下拉框选择要显示图片的方法
2015/02/16 Javascript
jQuery simplePage+AJAX plus分页插件用法实例
2016/02/17 Javascript
JavaScript高级程序设计(第三版)学习笔记6、7章
2016/03/11 Javascript
Jquery技巧(必须掌握)
2016/03/16 Javascript
javascript将中国数字格式转换成欧式数字格式的简单实例
2016/08/02 Javascript
js 上传文件预览的简单实例
2016/08/16 Javascript
JavaScript实现图片懒加载(Lazyload)
2016/11/28 Javascript
详解angular2采用自定义指令(Directive)方式加载jquery插件
2017/02/09 Javascript
jQuery中 bind的用法简单介绍
2017/02/13 Javascript
JavaScript实现左右下拉框动态增删示例
2017/03/09 Javascript
Vue 2.0 服务端渲染入门介绍
2017/03/29 Javascript
基于JavaScript实现微信抢红包功能
2017/07/20 Javascript
jQuery选择器特殊字符与属性空格问题
2017/08/14 jQuery
vue获取当前点击的元素并传值的实例
2018/03/09 Javascript
ES6基础之展开语法(Spread syntax)
2019/02/21 Javascript
详解微信小程序scroll-view横向滚动的实践踩坑及隐藏其滚动条的实现
2019/03/14 Javascript
layer.js open 隐藏滚动条的例子
2019/09/05 Javascript
Vue axios 跨域请求无法带上cookie的解决
2020/09/08 Javascript
python生成日历实例解析
2014/08/21 Python
python selenium UI自动化解决验证码的4种方法
2018/01/05 Python
python opencv设置摄像头分辨率以及各个参数的方法
2018/04/02 Python
浅谈python下tiff图像的读取和保存方法
2018/12/04 Python
Python实现TCP通信的示例代码
2019/09/09 Python
css3 flex布局 justify-content:space-between 最后一行左对齐
2020/01/02 HTML / CSS
应届生煤化工求职信
2013/10/21 职场文书
舞蹈比赛获奖感言
2014/02/04 职场文书
投标担保书范文
2014/04/02 职场文书
领导参观欢迎词
2015/01/26 职场文书
导游欢送词
2015/01/31 职场文书
解决golang post文件时Content-Type出现的问题
2021/05/02 Golang
使用Oracle跟踪文件的问题详解
2021/06/28 Oracle