Zabbix监控mysql配置及故障告警配置
本文主要介绍zabbix监控mysql的配置,包含使用zabbix自带模板监控mysql相关信息及自定义key监控mysql同步情况。同时介绍了触发器的创建及zabbix通过邮件方式告警配置。
一、配置自带模板监控mysql
1.提供配置文件模板
文件位置在源码包/usr/local/src/zabbix-3.0.4/conf/zabbix_agentd/userparameter_mysql.conf
|
1
|
#cp/usr/local/src/zabbix-3.0.4/conf/zabbix_agentd/userparameter_mysql.conf /usr/local/zabbix/etc/zabbix_agentd.conf.d |
2.修改模板文件
|
1
|
#sed -i 's@/var/lib/zabbix@/usr/local/zabbix/etc@g' /usr/local/zabbix/etc/zabbix_agentd.conf.d/userparameter_mysql.conf |
修改后的文件
UserParameter=mysql.status[*],echo "show global status where Variable_name='$1';" | HOME=/usr/local/zabbix/etc /usr/local/mysql/bin/mysql -N | awk '{print $$2}'
UserParameter=mysql.size[*],bash -c 'echo "select sum($(case "$3" in both|"") echo "data_length+index_length";; data|index) echo "$3_length";; free) echo "data_free";; esac)) from information_schema.tables$([[ "$1" = "all" || ! "$1" ]] || echo " where table_schema=\"$1\"")$([[ "$2" = "all" || ! "$2" ]] || echo "and table_name=\"$2\"");" | HOME=/usr/local/zabbix/etc /usr/local/mysql/bin/mysql -N'
UserParameter=mysql.ping,HOME=/usr/local/zabbix/etc /usr/local/mysql/bin/mysqladmin ping | grep -c alive
UserParameter=mysql.version,/usr/local/mysql/bin/mysql -V
3.提供agent连数据库的文件
|
1
2
3
4
5
6
7
8
9
10
11
|
#vi /usr/local/zabbix/etc/.my.cnf[mysql]host=localhostuser=zabbixagentpassword=123456socket=/tmp/mysql.sock[mysqladmin]host=localhostuser=zabbixagentpassword=123456socket=/tmp/mysql.sock |
4.创建授权账号
|
1
2
|
mysql> GRANT USAGE,PROCESS,REPLICATION CLIENT,REPLICATION SLAVE ON *.* TO 'zabbixagent'@'localhost' IDENTIFIED BY '123456';mysql> flush privileges; |
5.修改zabbix_agentd.conf
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/
重启服务
6.在web界面关联mysql模板

7.最终效果

二、自定义key监控slave
1.提供监控slave的配置文件
#cat/usr/local/zabbix/etc/zabbix_agentd.conf.d/mysql_slave.conf
UserParameter=mysql.slave.Seconds_Behind_Master,echo "show slave status\G"| HOME=/usr/local/zabbix/etc /usr/local/mysql/bin/mysql |grep "Seconds_Behind_Master"|awk '{print $2}'
UserParameter=mysql.slave.Slave_IO_Running,echo "show slave status\G"| HOME=/usr/local/zabbix/etc /usr/local/mysql/bin/mysql |grep "Slave_IO_Running"|awk '{print $2}'
UserParameter=mysql.slave.Slave_SQL_Running,echo "show slave status\G"|HOME=/usr/local/zabbix/etc /usr/local/mysql/bin/mysql |grep "\<Slave_SQL_Running\>"|awk '{print $2}'
2.重启agent服务
# service zabbix_agentd restart
3.命令测试key获取的值
# /usr/local/zabbix/bin/zabbix_get -s 192.168.1.16 -k "mysql.slave.Seconds_Behind_Master"
# /usr/local/zabbix/bin/zabbix_get -s 192.168.1.16 -k "mysql.slave.Slave_IO_Running"
# /usr/local/zabbix/bin/zabbix_get -s 192.168.1.16 -k "mysql.slave.Slave_SQL_Running"
以上命令均返回正常值说明自定义key成功
4.在web界面配置监控项
创建slave延迟items

创建slave io线程items

创建slave sql线程items

三、主从同步延迟报警配置
1.定义触发器
创建主从延迟触发器

2.定义action



3.定义邮件发送用户
修改报警媒介类型的邮件服务器地址

用户关联到报警媒介并设置邮件账号


查看邮件

邮件具体内容

四、主从同步状态报警配置
1.创建主从同步状态触发器
定义io thread状态


定义sql thread状态

2.测试
在slave上分别停止io线程和sql线程
模拟停止io线程
mysql> stop slave io_thread;

同时告警邮件发出

恢复io线程
mysql> start slave io_thread;
故障恢复通知邮件
模拟停止sql线程
mysql> stop slave sql_thread;

同时告警邮件发出

恢复sql线程
mysql> start slave sql_thread;

故障恢复通知邮件

http://hnr520.blog.51cto.com/4484939/1852838
Zabbix监控mysql配置及故障告警配置的更多相关文章
- Zabbix 监控 Mysql 状态
简介: 如何使用 Zabbix 来监控 Mysql 状态 ? Zabbix 有自带监控 Mysql 的模板,但是却不能直接使用.. 需要我们根据模板提供的 Key 自己写脚本获取数据 1.查看都有哪些 ...
- Zabbix 监控MySQL、Apache、Nginx应用监控
zabbix对第三方应用软件的监控,主要有两个工作难点,一个是编写自定义监控脚本,另一个是在编写模板并导入zabbix web中,编写脚本这个要根据 监控需求定制即可,而编写模板文件有些难度,不过网上 ...
- Zabbix监控mysql performance
介绍 zabbix监控mysql性能,使用zabbix自带的mysql监控模板,可以监控以下内容OPS(增删改查).mysql慢查询数量.mysql请求\响应流量带宽 配置 新建mysql监控用户 G ...
- zabbix 监控MySQL
现在我来说一下我的监控环境 zabbix-3.0.3 MySQL-5.6.23 1.首先我们要登录MySQL,创建一个监控MySQL的用户 GRANT USAGE,PROCESS,SUPER,REPL ...
- 分布式数据存储 - Zabbix监控MySQL性能
Zabbix如何监控mysql性能,我们可以使用mysql自带的模板,可以监控如下内容:OPS(增删改查).mysql请求流量带宽,mysql响应流量带宽,最后会附上相应的监控图! 编写check_m ...
- 使用zabbix监控mysql的三种方式
使用zabbix监控mysql的三种方式 1.只是安装agent 2.启用模板监控 3.启用自定义脚本的模板监控 zabbix中默认有mysql的监控模板.默认已经在zabbix2.2及以上的版本中. ...
- zabbix监控mysql性能
使用zabbix监控mysql的三种方式 1.只是安装agent 2.启用模板监控 3.启用自定义脚本的模板监控 zabbix中默认有mysql的监控模板.默认已经在zabbix2.2及以上的版本中. ...
- zabbix监控mysql最简单的方法
该实验基于我的上一篇文章监控第一台主机的基础上 首先,因为水平有限,我选择直接关闭了防火墙和SELinux. 环境: 两台centos7,服务器端IP是192.168.200.128(以下简称主机), ...
- zabbix监控mysql以及其他常见
zabbix监控mysql以及其他常见,监控mysql,也可是使用percona提供的详细的模板,里面的监控项目非常的详细 <template>Template Percona MySQL ...
随机推荐
- HTML5 拖放(Drag 和 Drop)
拖放是一种常见的特性,即抓取对象以后拖到另一个位置. 在 HTML5 中,拖放是标准的一部分,任何元素都能够拖放. <!DOCTYPE HTML> <html> <hea ...
- IntelliJ IDEA中配置reportNG
找了好多资料,各种设置都是eclipse上面的.后来发现原来就在Run->Edit Configurations->TestNG->Configuration->Listenn ...
- javascript操作class和style样式
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...
- C#动态数组ArrayList和List<T>的比较
C#中一维动态数组(即列表)分ArrayList和List<T>两种,其容量可随着我们的需要自动进行扩充 一.ArrayList类(少用) ArrayList位于System.Collec ...
- ajax同步,异步
传输数据 同步:第一条传过去,对方接收到反馈以后,再传第二条; 异步:第一条传过去,不管对方有没有收到,继续传第二条. ajax(默认异步 async:true) 同步:执行完ajax内部代码,才执行 ...
- ADO.NET 拾遗
一.SqlDataReader和SqlDataAdapter性能对比 Stopwatch sw = new Stopwatch(); sw.Start(); using(SqlConnection c ...
- 关于checkbox的attr无效的问题
jq用了10版本的,一直发现attr无效,查找良久,由同事帮忙解决该问题,感谢. 特记录下该问题. 由于 新版本attr换成了prop的问题. $("input[name='delIds'] ...
- 【转】双机高可用、负载均衡、MySQL(读写分离、主从自动切换)架构设计
架构简介 前几天网友来信说帮忙实现这样一个架构:只有两台机器,需要实现其中一台死机之后另一台能接管这台机器的服务,并且在两台机器正常服务时,两台机器都能用上.于是设计了如下的架构.此架构主要是由kee ...
- 关于windows下c/c++的rand()的一个测试
,,,}; ,-,,}; ,y=; ;t<<<;t++){ ; x+=xs[d];y+=ys[d]; 在(x,y)绘制一个点; } 根据rand()%4的值决定点的移动方向,生成图像 ...
- "aa".equals(name)这种写法为什么就可以避免空指针
public static void main(String[] args) { String name=null; if("aa".equals(name))//这种情形,不出现 ...