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通过6379端口无法连接服务器(redis-server.exe闪退)
May 08 Redis
详解redis分布式锁的这些坑
May 19 Redis
Redis Cluster 字段模糊匹配及删除
May 27 Redis
Redis可视化客户端小结
Jun 10 Redis
缓存替换策略及应用(以Redis、InnoDB为例)
Jul 25 Redis
关于SpringBoot 使用 Redis 分布式锁解决并发问题
Nov 17 Redis
SpringBoot整合Redis入门之缓存数据的方法
Nov 17 Redis
redis的list数据类型相关命令介绍及使用
Jan 18 Redis
Redis 异步机制
May 15 Redis
Redis实现分布式锁的五种方法详解
Jun 14 Redis
Redis主从复制操作和配置详情
Sep 23 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 fopen()和 file_get_contents()应用与差异介绍
2014/03/19 PHP
php实现zip文件解压操作
2015/11/03 PHP
CSS+Table图文混排中实现文本自适应图片宽度(超简单+跨所有浏览器)
2009/02/14 Javascript
Jquery 设置标题的自动翻转
2009/10/03 Javascript
『JavaScript』限制Input只能输入数字实现思路及代码
2013/04/22 Javascript
JavaScript中switch判断容易犯错的一个细节
2014/08/27 Javascript
jquery隔行换色效果实现方法
2015/01/15 Javascript
html的DOM中document对象anchors集合用法实例
2015/01/21 Javascript
Knockout自定义绑定创建方法
2015/12/26 Javascript
jQuery 3.0 的 setter和getter 模式详解
2016/07/11 Javascript
Bootstrap组件系列之福利篇几款好用的组件(推荐二)
2016/07/12 Javascript
JS实现简单的浮动碰撞效果示例
2017/12/28 Javascript
vue cli2.0单页面title修改方法
2018/06/07 Javascript
jQuery实现的点击按钮改变样式功能示例
2018/07/21 jQuery
vue抽出组件并传值实例
2020/07/31 Javascript
在nodejs中创建child process的方法
2021/01/26 NodeJs
python实现用户登陆邮件通知的方法
2015/07/09 Python
Python爬取三国演义的实现方法
2016/09/12 Python
python 专题九 Mysql数据库编程基础知识
2017/03/16 Python
Python自定义函数定义,参数,调用代码解析
2017/12/27 Python
对python捕获ctrl+c手工中断程序的两种方法详解
2018/12/26 Python
Python实现字符串匹配的KMP算法
2019/04/04 Python
分享PyCharm的几个使用技巧
2019/11/10 Python
python按顺序重命名文件并分类转移到各个文件夹中的实现代码
2020/07/21 Python
用pushplus+python监控亚马逊到货动态推送微信
2021/01/29 Python
C/C++程序员常见面试题二
2015/11/19 面试题
环境科学专业个人求职信
2013/09/26 职场文书
给同学的道歉信
2014/01/16 职场文书
学雷锋志愿服务月活动总结
2014/03/09 职场文书
老公爱的承诺书
2014/03/31 职场文书
法人委托书范本
2014/04/04 职场文书
法人代表授权委托书范文
2014/09/10 职场文书
培训感想范文
2015/08/07 职场文书
幼儿园体操比赛口号
2015/12/25 职场文书
NGINX 权限控制文件预览和下载的实现原理
2022/01/18 Servers
JS前端轻量fabric.js系列之画布初始化
2022/08/05 Javascript