2-28 使用zabbix监控私有信息-邮件报警

白日放歌须纵酒,青春作伴好还乡。这篇文章主要讲述2-28 使用zabbix监控私有信息-邮件报警相关的知识,希望能为你提供帮助。
1. 如果可用性ZBX那里一直不变绿,可以用如下命令先检查一下连通性:

[root@xuegod13 ~]# cd /usr/local/zabbix/bin/ [root@xuegod13 bin]# ./zabbix_get -s 192.168.31.14 -p10050 -k system.uname Linux xuegod14 3.10.0-957.el7.x86_64 #1 SMP Thu Nov 8 23:39:32 UTC 2018 x86_64

2.监控apache服务
2.1 在xuegod14上安装apache服务
[root@xuegod14 ~]# yum -y install httpd

修改配置文件
[root@xuegod14 ~]# cd /etc/httpd/conf/ [root@xuegod14 conf]# vim httpd.conf #在349行,添加如下内容 350 < location /server-status> 351SetHandler server-status 352Order allow,deny 353Allow from 127.0.0.1 192.168.31.0/24 354 < /location> [root@xuegod14 conf]# service httpd restart Redirecting to /bin/systemctl restart httpd.service

访问如下页面
2-28 使用zabbix监控私有信息-邮件报警

文章图片

2.2 接下来,我们要做的就是让我们的zabbix访问到这个server-status
#注意,因为可能直接访问github访问不了,需要修改hosts文件,注意,宿主机也需要如下修改 [root@xuegod14 opt]# vim /etc/hosts 127.0.0.1localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.31.13 xuegod13# GitHub520 Host Start 140.82.112.25alive.github.com 140.82.113.25live.github.com 185.199.108.154github.githubassets.com 140.82.113.21central.github.com 185.199.108.133desktop.githubusercontent.com 185.199.108.153assets-cdn.github.com 185.199.108.133camo.githubusercontent.com 185.199.108.133github.map.fastly.net 199.232.69.194github.global.ssl.fastly.net 140.82.114.4gist.github.com 185.199.108.153github.io 140.82.112.4github.com 140.82.114.5api.github.com 185.199.108.133raw.githubusercontent.com 185.199.108.133user-images.githubusercontent.com 185.199.108.133favicons.githubusercontent.com 185.199.108.133avatars5.githubusercontent.com 185.199.108.133avatars4.githubusercontent.com 185.199.108.133avatars3.githubusercontent.com 185.199.108.133avatars2.githubusercontent.com 185.199.108.133avatars1.githubusercontent.com 185.199.108.133avatars0.githubusercontent.com 185.199.108.133avatars.githubusercontent.com 140.82.112.9codeload.github.com 52.216.165.51github-cloud.s3.amazonaws.com 52.217.45.68github-com.s3.amazonaws.com 52.216.184.179github-production-release-asset-2e65be.s3.amazonaws.com 52.216.133.99github-production-user-asset-6210df.s3.amazonaws.com 52.217.128.49github-production-repository-file-5c1aeb.s3.amazonaws.com 185.199.108.153githubstatus.com 64.71.168.201github.community 185.199.108.133media.githubusercontent.com# Update time: 2021-05-28T12:34:32+08:00 # Star me GitHub url: https://github.com/521xueweihan/GitHub520 # GitHub520 Host End [root@xuegod14 conf]# cd /opt [root@xuegod14 opt]# wget https://github.com/lorf/zapache/archive/master.zip #解压 [root@xuegod14 opt]# unzip master.zip Archive:master.zip 24a764b2e224f9b8d0a6bc94dcadd7568b2fe650 creating: zapache-master/ inflating: zapache-master/README.md inflating: zapache-master/httpd-server-status.conf.sample inflating: zapache-master/userparameter_zapache.conf.sample inflating: zapache-master/zapache inflating: zapache-master/zapache-template-active.xml inflating: zapache-master/zapache-template.xml [root@xuegod14 zapache-master]# ls httpd-server-status.conf.sampleREADME.mduserparameter_zapache.conf.samplezapachezapache-template-active.xmlzapache-template.xml [root@xuegod14 zapache-master]# cp zapache /usr/local/bin/ [root@xuegod14 zapache-master]# cp userparameter_zapache.conf.sample /usr/local/zabbix/etc/zabbix_agentd.conf.d/userparameter_zapache.conf [root@xuegod14 zapache-master]# cd /usr/local/zabbix/etc/zabbix_agentd.conf.d/ [root@xuegod14 zabbix_agentd.conf.d]# ls userparameter_zapache.conf [root@xuegod14 zabbix_agentd.conf.d]# vim userparameter_zapache.conf #修改第6行为 UserParameter=zapache[*],/usr/local/bin/zapache \\$1

2.3 修改配置文件
[root@xuegod14 zabbix_agentd.conf.d]# vim /usr/local/zabbix/etc/zabbix_agentd.conf #264 取消前面的注释符号,修改路径添加zabbix(路径原来没有zabbix) Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/ [root@xuegod14 zabbix_agentd.conf.d]# /etc/init.d/zabbix_agentd restart Restarting zabbix_agentd (via systemctl):[确定]

2.4 导入模板文件【2-28 使用zabbix监控私有信息-邮件报警】配置-模板-导入-选择文件-选择下载的master.zip解压后的路径的文件-即zapache-template.xml-导入
2.5 模板和主机进行关联配置-主机-xuegod14-模板-选择-勾选Template App Apache Web Server zapache-选择-添加-更新
\\
进行查看
监测中-最新数据-主机:输入xuegod14-应用集-选择-点击Apache Web Server-应用-勾选选项-显示堆叠数据图
3. 监控mysql
3.1 在主服务器上授权
mysql> grant usage on *.* to zabbix@% identified by 123456; Query OK, 0 rows affected, 1 warning (0.01 sec)mysql> flush privileges; Query OK, 0 rows affected (0.00 sec)

3.2 到客户端拷贝模板,并修改配置文件
[root@xuegod14 ~]# cp /usr/local/src/zabbix-3.4.3/conf/zabbix_agentd/userparameter_mysql.conf /usr/local/zabbix/etc/zabbix_agentd.conf.d/ [root@xuegod14 ~]# vim /usr/local/zabbix/etc/zabbix_agentd.conf #265行打开并把264注释掉,只能同时打开1个 Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/*.conf

3.3 创建mysql连接配置文件
[root@xuegod14 ~]# cd /usr/local/zabbix/etc/ [root@xuegod14 etc]# ls zabbix_agentd.confzabbix_agentd.conf.d [root@xuegod14 etc]# vim my.cnf [mysql] host=localhost user=zabbix password=123456 socket=/var/lib/mysql/mysql.sock[mysqladmin] host=localhost user=zabbix password=123456 socket=/var/lib/mysql/mysql.sock

3.4 修改刚才拷贝的模板文件
[root@xuegod14 etc]# vim /usr/local/zabbix/etc/zabbix_agentd.conf.d/userparameter_mysql.conf #第5行、15行、17行的HOME=/var/lib/zabbix改成HOME=/var/lib/zabbix/etc [root@xuegod14 etc]# /etc/init.d/zabbix_agentd restart Restarting zabbix_agentd (via systemctl):[确定]

3.5 web页面需要的操作配置
配置-主机-xuegod14-模板-选择-勾选Template DB MySQL-选择-添加-更新
查看
监测中-最新数据-主机已经选择好(xuegod14)-应用集-选择-MySQL-应用-随便勾选(如MySQL slow queries/MySQL status/MySQL uptime)-显示堆叠数据图
4 Zabbix邮件报警配置
邮件服务可以使用系统自带的邮件服务来发送邮件或者使用其他邮件服务调用第三方邮件来发送警告邮件
这里演示如何调用第三方邮件服务来发送邮件:
4.1 第一步:首先安装mailx组件并配置好能够通过三方邮箱发送邮件
[root@xuegod13 ~]# yum install mailx

然后编辑mailx的配置文件
[root@xuegod13 ~]# vi /etc/mail.rc #在最末尾添加如下信息 set from=xuegodzabbix@163.com set smtp=smtp.163.com set smtp-auth-user=xuegodzabbix@163.com set smtp-auth-password= #你的密码 注意:此为163邮箱设置的客户端授权密码 set smtp-auth=login #测试发送 [root@xuegod13 ~]# echo "zabbix test for xuegod linux 1903"|mailx -s "zabbix test message" xxx@qq.com

能收到邮件,证明没问题。
4.2 在zabbix服务端写邮件发送脚本:
[root@xuegod13 ~]# cd /usr/local/zabbix/share/zabbix/alertscripts/ [root@xuegod13 alertscripts]# vim sendmail.sh #!/bin/bash messages=`echo $3 | tr \\r\\n \\n` subject=`echo $2 | tr \\r\\n \\n` echo "$messages" | mailx -s "$subject" $1 > > /tmp/sendmail.log 2> & 1 [root@xuegod13 alertscripts]# chmod +x sendmail.sh [root@xuegod13 alertscripts]# chown zabbix.zabbix sendmail.sh

4.3 修改主配置文件,让服务读取到这个脚本:
[root@xuegod13 alertscripts]# cd /usr/local/zabbix/etc/ [root@xuegod13 etc]# ls zabbix_agentd.confzabbix_agentd.conf.dzabbix_server.confzabbix_server.conf.d [root@xuegod13 etc]# vim zabbix_server.conf 修改: # AlertScriptsPath=$datadir/zabbix/alertscripts 下添加一行,如下 AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts

测试用脚本发送邮件
[root@xuegod13 etc]# /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh xxx@qq.com "hello world zabbix" "hello world linux"

能正常收到,没问题!
4.4 在页面设置管理-报警媒介类型-
页面添加:
2-28 使用zabbix监控私有信息-邮件报警

文章图片

2-28 使用zabbix监控私有信息-邮件报警

文章图片

ALERT.SENDTO
ALERT.SUBJECT
ALERT.MESSAGE
很多人安装zabbix 3.0之后,写的脚本一直发信不成功,手动执行时可以的。
这是因为zabbix3.0之后,可以自定义参数了。所以不写参数,它是不会传参数的。
在2.x版本不存在这个问题,默认会传3个参数。
2-28 使用zabbix监控私有信息-邮件报警

文章图片

2-28 使用zabbix监控私有信息-邮件报警

文章图片

2-28 使用zabbix监控私有信息-邮件报警

文章图片

内容如下
动作
名称:Action-Email
2-28 使用zabbix监控私有信息-邮件报警

文章图片

操作
默认接收人:故障TRIGGER.STATUS,服务器:HOSTNAME1发生:TRIGGER.NAME故障!
默认信息:
告警主机:HOSTNAME1
告警时间:EVENT.DATE EVENT.TIME
告警等级:TRIGGER.SEVERITY
告警信息: TRIGGER.NAME
告警项目:TRIGGER.KEY1
问题详情:ITEM.NAME:ITEM.VALUE
当前状态:TRIGGER.STATUS:ITEM.VALUE1
事件 ID:EVENT.ID
2-28 使用zabbix监控私有信息-邮件报警

文章图片

2-28 使用zabbix监控私有信息-邮件报警

文章图片

恢复操作
默认接收人:已恢复!TRIGGER.STATUS, 服务器:HOSTNAME1: TRIGGER.NAME
恢复信息:
告警主机:HOSTNAME1
告警时间:EVENT.DATE EVENT.TIME
告警等级:TRIGGER.SEVERITY
告警信息: TRIGGER.NAME
告警项目:TRIGGER.KEY1
问题详情:ITEM.NAME:ITEM.VALUE
当前状态:TRIGGER.STATUS:ITEM.VALUE1
事件 ID:EVENT.ID
2-28 使用zabbix监控私有信息-邮件报警

文章图片

2-28 使用zabbix监控私有信息-邮件报警

文章图片

2-28 使用zabbix监控私有信息-邮件报警

文章图片

测试,关闭 zabbix 客户端服务 zabbix_agentd
[root@xuegod14 ~]# /etc/init.d/zabbix_agentd stop 结果:
延迟比较大,大概要5-10分钟
可以在日志看送达状态:
2-28 使用zabbix监控私有信息-邮件报警

文章图片


    推荐阅读