这里写目录标题

  • zabbix监控mysq且配置自动发送报警邮件
    • zabbix监控mysql
      • 实验环境
      • 创建一个目录存放mysql用户的帐号密码
      • 将mysql用户密码配置在文件中(安全)
      • 安装percona-zabbix
      • 将conf文件复制到到/etc/zabbix/zabbix_agentd.d/
      • 编辑ss_get_mysql_stats.php.cnf
      • 然后重启zabbix-server主机上的zabbix-agent
      • 测试脚本
      • 导入模版:
      • 给zabbix-server主机添加导入的模版
      • 测试zabbix对mysql的监视
    • 配置zabbix自动发送报警邮件
      • 具体操作
      • 进行测试,我们将server3的agent停掉
      • 查看邮件日志

zabbix监控mysq且配置自动发送报警邮件

zabbix监控mysql

实验环境

开启server1的zabbix-server,zabbix-agent,mariadb,httpd
开启server2的httpd和zabbix-agent
开启server3的nginx,zabbix-agent

Server1:

Server2:

Server3:

然后打开浏览器: http://172.25.21.1/zabbix
会发现监控中有警告,这里的zabbix-server,server2,server3都进行了重启

根据颜色来看这个是警告

现在要使用zabbix来监控mysql
这里监控本机的mysql

创建一个目录存放mysql用户的帐号密码

mkdir /var/lib/zabbix
cat /etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf


将mysql用户密码配置在文件中(安全)

在这个文件中我们可以看到一些mysql监控的信息:
Mysql默认使用mysqladmin命令来检测mysql是否存活
mysqladmin -uzabbix -predhat -h 127.0.0.1 ping | grep -c alive

只要这个ping返回的alive信息是1,就表示mysql正常,alive为0说明mysql挂了
我们可以通过这个参数来判断mysql否正常,
Mysql的帐号密码写在命令行里不安全,所以要把帐号和密码写到文件(隐藏文件)里面
我们把文件写在刚创建的/var/lib/zabbix目录

cd /var/lib/zabbix
vim .my.cnf[mysql]
host=localhost
user=root
password=redhat
socket=/var/lib/mysql/mysql.sock[mysqladmin]
host=localhost
user=root
password=redhat
socket=/var/lib/mysql/mysql.sock

这时候我们不使用zabbix自带的mysql模版,
因为zabbix自带的mysql模版的信息太少了,

安装percona-zabbix

我们这里采用percona-zabbix模版,这时zabbix的一个外部的脚本模版(其他人二次开发的API)
Zabbix是支持二次开发的API,

rpm -ivh percona-zabbix-templates-1.1.8-1.noarch.rpm
cd /var/lib/zabbix/percona/templates/

先查看一下这个xml文件(就是正常的xml文件格式)


然后看一下这个mysql模版的conf文件内容

将conf文件复制到到/etc/zabbix/zabbix_agentd.d/

可以看到这里190个对于mysql的监控项(这个第三方模版提供了190个监控项)
然后将这个conf文件复制到/etc/zabbix/zabbix_agentd.d/下:

然后进到/var/lib/zabbix/percona/scripts下,

编辑ss_get_mysql_stats.php.cnf

我们在这个cnf文件中写一个php页面

<?php
$mysql_user = 'root';
$mysql_pass = 'redhat';
?>

然后重启zabbix-server主机上的zabbix-agent

测试脚本

这时运行脚本获取数据:
我们要获取gk(key),来获取gk的值
/var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh gk

Key有值的话说明正常
我们可以查看所有的key

这时我们再在浏览器上可以看到没有警告了

导入模版:

选择导入:
我们把模版放在真机桌面
因为使用的是真机的浏览器,所以导入时从真机的文件中找模版;


选择后点击open
选择聚合图形,我们可以多组图形显示;
然后选择导入

导入成功后
就可以在模版中看到我们导入的percona模版:
我们使用Ctrl + f在三页模版中搜索percona
然后在第三页中找到了我们导入的第三方模块:

给zabbix-server主机添加导入的模版

我们选择zabbix-server主机,给我们的zabbix-server主机添加新导入的模版:




测试zabbix对mysql的监视

现在的监控中是没有数据的
我们在mysql中输入一些数据,

mysql -uroot -predhat
show databases;
use mysql;
show tables;
select * from user;



这个监控不可能实时上传数据,
我们需要过好长一会儿才能看到图像;
随便选择一个percona的图像:
我们这里看的是InnoDB Buffer Pool:

配置zabbix自动发送报警邮件

我们运维人员不可能把电脑时时刻刻抱在身边,
如果我们管理的服务器出现了问题,但是我们没有在服务器前,
所以这里就使用zabbix结合QQ邮箱,
如果zabbix监控的服务器出现问题,就给我们发邮件,
在公司中邮件使用的比较多,
各个部门之间,或者跟领导之间发邮件,

具体操作

点击管理–> 报警媒介类型

可以看到这里支持Email和SMS
我们将SMS先禁用,只留一个Email

所以我们就要配置我们的虚拟机上网:

然后我们给server1安装一个邮件mailx软件发邮件

查看邮件服务的端口是否开启:

对mail进行测试:
按Ctrl + d结束

mailq #查看邮件队列中是否有我们刚才发的内容(因为已经发出去了,所以是空的)

我们查看邮件:

可以看到我们这里的域名是root@server1.localdomain
我们等会儿用的是zabbix用户,
所以在QQ邮箱中添加的是zabbix@server1.localdomain
然后进到我们的zabbix监控界面;
点击Email



然后点击配置–>动作
右上角选择触发器:



点击该处使其变为启用

查看

这时我们的zabbix@server1.localdomain邮箱地址就可以在互联网上进行访问了

然后我们设置我们的QQ邮箱:

登陆进QQ邮箱(https加密的)
我使用二维码登陆的(这样就防止了钓鱼网站)
我们来设置白名单

点开如下操作:


在手机上的QQ邮箱设置也可以,
点击右上角的加号 +
然后选择设置
然后选择白名单
然后进到QQ邮箱里面设置(跟上面操作一样);
zabbix@server1.localdomain
Zabbix: 用户
Server1:主机名字
白名单的作用:
只要zabbix-server检测我们添加进白名单主机的后端的服务有问题,
就会给我们发出邮件报警

进行测试,我们将server3的agent停掉

然后可以看到server3主机下线了(变红了)

点击左上角的zabbix标志进行监控:

我们然后我们就可以在监控页面看到报警信息:

如果这里没有发送成功(1.检查网络2.鼠标放在动作下面就会出来出错的具体情况)

如果成功如下:
这时我们再查看我们的邮箱的收键箱

查看邮件日志

在server1上我们可以查看邮件日志
vim /var/log/maillog

可以看到我们给自己的QQ邮箱发送邮件的日志记录

zabbix监控mysq且配置自动发送报警邮件相关推荐

  1. Linux下监控磁盘使用量并在超过阀值后自动发送报警邮件

    参考博客:http://www.heminjie.com/system/linux/1923.html 最近Linux服务器磁盘使用量经常到100%,直到影响到正常服务出现故障才会去注意,做不到防患于 ...

  2. 运维实操——zabbix监控结合睿象云报警平台及API调用

    zabbix监控结合睿象云报警平台及API调用 1.zabbix监控结合睿象云报警平台 2.API调用 1.zabbix监控结合睿象云报警平台 由于我们不能时时刻刻盯着zabbix监控,所以呢,我们想 ...

  3. Linux服务管理-zabbix监控邮箱告警配置

    zabbix监控邮箱告警配置及自定义监控 1.在web界面配置 详情请看https://blog.csdn.net/Mzh_CSDN/article/details/107433532 2.通过脚本用 ...

  4. linux检测磁盘 报警,linux服务器磁盘监控脚本分享(含报警邮件)

    在日常的运维工作中,我们经常会对服务器的磁盘使用情况进行巡检,以防止磁盘爆满导致的业务故障. 如果能编写一个合理完善的监控脚本,当磁盘使用率达到我们设置的阀值时,就自动发送报警邮件,以便我们及时获悉到 ...

  5. 服务器磁盘监控脚本分享(含报警邮件)

    在日常的运维工作中,我们经常会对服务器的磁盘使用情况进行巡检,以防止磁盘爆满导致的业务故障. 如果能编写一个合理完善的监控脚本,当磁盘使用率达到我们设置的阀值时,就自动发送报警邮件,以便我们及时获悉到 ...

  6. zabbix配置发送报警邮件

    配置邮件分为两种情况: 第一种:使用远端邮件服务器发送报警邮件 Linux系统版本:CentOS6.5-64 下载mailx: http://nchc.dl.sourceforge.net/proje ...

  7. Zabbix监控web基本配置

    文章目录 一:Zabbix 介绍 二:zabbix监控配置步骤 三:web端 --- 语言配置 四:web端 -- Monitoring设置 1. 调整仪表板(Dashboard) 2.仪表板信息介绍 ...

  8. zabbix监控原理及配置方法

    1.zabbix简介 zabbix是一个基于WEB页面的提供分布式系统监控以及网络建时功能的企业级的开源解决方案,zabbix能监视各种网络参数,保证服务器系统的安全运营并提供灵活的的通知机制让管理员 ...

  9. Zabbix监控网络设备模板配置

    一.SNMP简介 设备支持简单网络管理协议(Simple Network Management Protocol),简称为SNMP.SNMP是应用层协议,它通过标准框架.公共语言和相对应的安全机制来监 ...

最新文章

  1. 基于图神经网络的聚类研究与应用
  2. 计算机设备报废界定,福建省国家税务局关于印发《计算机及其附属设备报废淘汰暂行办法》的通知...
  3. MongoDB 全文检索
  4. Spring整合junit4实现对方法的测试
  5. python中re模块_python中re模块的使用以及一些正则表达式的总结
  6. URAL 1225 Flags
  7. [精品]CSAPP Bomb Lab 解题报告(五)
  8. import() 动态加载component组件失败
  9. 服务器操作系统的安装步骤,服务器操作系统的安装步骤
  10. 杭电1434 幸福列车
  11. c语言如何在手机上运行程序,各位前辈这两个程序怎么在手机上运行
  12. 常见显示器PPI备忘
  13. python官方文档(自翻译)
  14. SCAU华南农业大学-数电实验-用74LS138实现1位的全加器
  15. Sublime Text编辑器设置中文
  16. Linux 删除多余内核
  17. java半角英数check_java - 关于全角半角介绍以及处理方式
  18. 垃圾分类全套技术方案
  19. ubuntu14.04安装gnu/emacs24
  20. Lichee_RV学习系列---移植dhrystone

热门文章

  1. 互联网运营打造个人微博之道
  2. 对linux用户空间DMA的分析(和单片机一样简单)
  3. 【实战】——以波士顿房价为例进行数据的相关分析和回归分析
  4. linux OBM分析
  5. c语言程序设计0039大作业答案,西南大学20年12月[0039]C语言程序设计课程大作业参考...
  6. 什么模式下不可使用曝光补偿_在不同曝光模式下,使用曝光补偿的区别
  7. 三分钟搞定一个网页原型设计
  8. 餐饮行业移动管理系统—Pad点餐系统
  9. hashmap的put方法解读
  10. 【测试人】最全测试策略总结,这一篇足足够用了......