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三种高可用方式部署的实现
May 11 Redis
基于Redis实现分布式锁的方法(lua脚本版)
May 12 Redis
Redis 配置文件重要属性的具体使用
May 20 Redis
聊一聊Redis与MySQL双写一致性如何保证
Jun 26 Redis
缓存替换策略及应用(以Redis、InnoDB为例)
Jul 25 Redis
Redis分布式锁Redlock的实现
Aug 07 Redis
Redis RDB技术底层原理详解
Sep 04 Redis
SpringBoot整合Redis入门之缓存数据的方法
Nov 17 Redis
Spring Boot实战解决高并发数据入库之 Redis 缓存+MySQL 批量入库问题
Feb 12 Redis
Redis集群节点通信过程/原理流程分析
Mar 18 Redis
Redis超详细讲解高可用主从复制基础与哨兵模式方案
Apr 07 Redis
Redis特殊数据类型bitmap位图
Jun 01 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源码分析之变量的存储过程分解
2014/07/03 PHP
分享微信扫码支付开发遇到问题及解决方案-附Ecshop微信支付插件
2015/08/23 PHP
PHP实现无限分类的实现方法
2016/11/14 PHP
PHPExcel中文帮助手册|PHPExcel使用方法(分享)
2017/06/09 PHP
全面解析PHP面向对象的三大特征
2017/06/10 PHP
node.js chat程序如何实现Ajax long-polling长链接刷新模式
2012/03/13 Javascript
自己写的兼容ie和ff的在线文本编辑器类似ewebeditor
2012/12/12 Javascript
JavaScript获取网页表单提交方式的方法
2015/04/02 Javascript
如何用JS判断两个数字的大小
2016/07/21 Javascript
BootStrap glyphicon图标无法显示的解决方法
2016/09/06 Javascript
js for循环倒序输出数组元素的实例
2017/03/01 Javascript
vue数据双向绑定的注意点
2017/06/23 Javascript
js自定义弹框插件的封装
2020/08/24 Javascript
11行JS代码制作二维码生成功能
2018/03/09 Javascript
解决在Bootstrap模糊框中使用WebUploader的问题
2018/03/22 Javascript
详解使用jQuery.i18n.properties实现js国际化
2018/05/04 jQuery
express.js中间件说明详解
2019/03/19 Javascript
vue中的v-if和v-show的区别详解
2019/09/01 Javascript
Vue Router 实现动态路由和常见问题及解决方法
2020/03/06 Javascript
微信小程序动态评分展示/五角星展示/半颗星展示/自定义长度展示功能的实现
2020/07/22 Javascript
vue实现虚拟列表功能的代码
2020/07/28 Javascript
Vue单文件组件开发实现过程详解
2020/07/30 Javascript
爬山算法简介和Python实现实例
2014/04/26 Python
Python cookbook(数据结构与算法)将名称映射到序列元素中的方法
2018/03/22 Python
Python封装成可带参数的EXE安装包实例
2019/08/24 Python
django框架两个使用模板实例
2019/12/11 Python
Python threading.local代码实例及原理解析
2020/03/16 Python
在python中使用pyspark读写Hive数据操作
2020/06/06 Python
骨干教师考核方案
2014/05/09 职场文书
森林病虫害防治方案
2014/06/02 职场文书
员工安全责任书范本
2014/07/24 职场文书
党员“一帮一”活动总结
2015/05/07 职场文书
2015年体检中心工作总结
2015/05/27 职场文书
Nginx配置80端口访问8080及项目名地址方法解析
2021/03/31 Servers
Nginx工作原理和优化总结。
2021/04/02 Servers
Python基础之元类详解
2021/04/29 Python