TiDB监控实现 -- 存活监控
--20190228 刘春雷
1、需求
1、随着TiDB集群的数量的发展,需要监控TiDB集群的存活情况
2、公司监控使用zabbix,需要将TiDB的监控接入进去
2、实现方式
3、通过zabbix的接口,创建监控等
4、通过zabbix实现短信报警
美团的实现方式:
https://tech.meituan.com/2018/11/22/mysql-pingcap-practice.html
5、其他实现
也可以通过 Alertmanager报警
3、具体实现
3.1、规范
3.1.1、host规范
3.1.2、监控项
监控项名字 | key | type | 值情况 | 采集时间 |
TiDBAliveCheck | TiDBaliveCheck | Zabbix trapper | 0:不存活 1:存活 | 10s 采集一次 |
PDAliveCheck | PDaliveCheck | Zabbix trapper | 0:不存活 1:存活 | 10s 采集一次 |
TiKVAliveCheck | TiKValiveCheck | Zabbix trapper | 0:不存活 1:存活 | 10s 采集一次 |
GrafAliveCheck | GrafaliveCheck | Zabbix trapper | 0:不存活 1:存活 | 10s 采集一次 |
3.1.3、触发器
监控项名字 | 触发器名字 | key | 采集时间 | 触发 |
TiDBAliveCheck | TiDB Down | TiDBaliveCheck | 10s 采集一次 | 最近3次采集数据值等于0 个数大于2即30s内采集不到即报警) { TiDB.GrafanaaliveCheck .count (#3,0,"eq")} >2 |
PDAliveCheck | PD Down | PDaliveCheck | 10s 采集一次 | 最近3次采集数据值等于0 个数大于2即30s内采集不到即报警) { TiDB.GrafanaaliveCheck.count(#3,0,"eq")} >2 |
TiKVAliveCheck | TiKV Down | TiKValiveCheck | 10s 采集一次 | 最近3次采集数据值等于0 个数大于2即30s内采集不到即报警) { GrafanaaliveCheck.count(#3,0,"eq")} >2 |
GrafAliveCheck | Graf Down | GrafaliveCheck | 10s 采集一次 | 最近3次采集数据值等于0 个数大于2即30s内采集不到即报 警) { GrafanaaliveCheck.count(#3,0,"eq")} >2 |
3.2、发送至zabbix实现
3.2.1、举例zabbix_sender命令
sent: 1; skipped: 0; total: 1
3.2.2、具体
tidb_monitor
输入如下:
python tidb_monitor.py -c {$cluster_id1,$cluster_id2} (检查 指定tidb cluster)
python tidb_monitor.py -a (检查 所有tidb cluster)
python tidb_monitor.py -g (从mysql获取tidb集群信息,生成最新的配置文件)
python tidb_monitor.py -m (检查zabbix的监控与cdb的一致性)
单个集群的检查时间:0.298s
【2 】举例检查全部Tidb集群,耗时0.936s
3.3、一致性检查
python tidb_monitor.py -m
获取zabbix的host
检查zabbix多的,并删除
检查元信息库多的,并添加
【一致的情况】
【zabbix缺少监控的情况】
3.4、更新配置文件
配置文件里面记录了集群的拓扑信息,用于检查监控获取实例信息
tidb_monitor -g
3.5、配置文件
3.6、运行
放在管理机的crontab任务里面运行,后期与平台联动即可
4、zabbix部分
4.1、Template
4.2、Applications
4.3、items
4.4、Triggers
4.5、Graphs
4.6、Actions
4.7、Users
4.8、 测试报警
4.9.1、宕机测试 – 微信
4.9.2、宕机测试 – 短信
4.9.3、宕机测试 – zabbix
4.9.4、ack测试
4.9.5、恢复测试--zabbix
4.9.6、恢复测试--微信
4.9.7、恢复测试--短信
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/28823725/viewspace-2655486/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/28823725/viewspace-2655486/