白日放歌须纵酒,青春作伴好还乡。这篇文章主要讲述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.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 在页面设置管理-报警媒介类型-
页面添加:
文章图片
文章图片
ALERT.SENDTO
ALERT.SUBJECT
ALERT.MESSAGE
很多人安装zabbix 3.0之后,写的脚本一直发信不成功,手动执行时可以的。
这是因为zabbix3.0之后,可以自定义参数了。所以不写参数,它是不会传参数的。
在2.x版本不存在这个问题,默认会传3个参数。
文章图片
文章图片
文章图片
内容如下
动作
名称:Action-Email
文章图片
操作
默认接收人:故障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
文章图片
文章图片
恢复操作
默认接收人:已恢复!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
文章图片
文章图片
文章图片
测试,关闭 zabbix 客户端服务 zabbix_agentd
[root@xuegod14 ~]# /etc/init.d/zabbix_agentd stop 结果:
延迟比较大,大概要5-10分钟
可以在日志看送达状态:
文章图片
推荐阅读
- ELK企业级日志分析系统
- 2019年6月份,CAT老师关于监控的
- #yyds干货盘点# 听说过python协程没(听说过 asyncio 库没?都在这一篇博客了)
- #yyds干货盘点#shell如何进行远程ssh
- 三分钟教你看懂工字电感怎么识别大小
- 了解下C# 可空类型(Nullable)
- #yyds干货盘点# 大厂面试Java内功深厚()
- #yyds干货盘点#K8S 之 kubeadm 介绍
- 天津港焦炭码头牵手图扑软件,可视化解锁智慧焦炭港口