zabbix高级【二】周二

zabbix架构的工作
zabbix-server是收集信息、报警 数据库是存储zabbix-server收集的信息 zabbix-web展示数据
zabbix-agent是采集数据

忘记zabbix密码时,可以使用md5反推查看密码

MariaDB [(none)]> select * from zabbix.users;
+--------+-------+--------+---------------+----------------------------------+-----+-----------+------------+-------+---------+------+---------+----------------+------------+---------------+---------------+
| userid | alias | name   | surname       | passwd                           | url | autologin | autologout | lang  | refresh | type | theme   | attempt_failed | attempt_ip | attempt_clock | rows_per_page |
+--------+-------+--------+---------------+----------------------------------+-----+-----------+------------+-------+---------+------+---------+----------------+------------+---------------+---------------+
|      1 | Admin | Zabbix | Administrator | 670b14728ad9902aecba32e22fa4f6bd |     |         1 | 0          | zh_CN | 30s     |    3 | default |              0 |            |             0 |            50 |
|      2 | guest |        |               | d41d8cd98f00b204e9800998ecf8427e |     |         0 | 15m        | en_GB | 30s     |    1 | default |              0 |            |             0 |            50 |
+--------+-------+--------+---------------+----------------------------------+-----+-----------+------------+-------+---------+------+---------+----------------+------------+---------------+---------------+
2 rows in set (0.00 sec)

MariaDB [(none)]> exit
Bye

在这里插入图片描述
假设71,我已经添加了10个自定义的监控项,想在7主机上,也可以添加这10个监控项。
如果没有include的话,我们需要每一个监控项都写一行配置文件。
现在的话,可以在这个目录中将定义的监控写入一个配置文件,比如磁盘的是一个配置文件,nginx的是一个配置文件。当7主机上也想要监控这些自定义监控项时,将这些文件传输过去就好了。

PS注意,传输过去以后,看看有没有取值的命令。
注意:将每个配置项写入单独单独配置文件后,原来的总的配置文件要将自定义监控项给注释掉

[root@lsy zabbix_agentd.d 22:02:43]# pwd
/etc/zabbix/zabbix_agentd.d

这个include是在配置文件中定义的。

[root@lsy zabbix_agentd.d 22:03:47]# grep -Ev '^$|#'  /etc/zabbix/zabbix_agentd.conf 
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
Server=10.0.0.71
ServerActive=127.0.0.1
Hostname=Zabbix server
Include=/etc/zabbix/zabbix_agentd.d/*.conf

传参数方式监控多块硬盘,在一行配置文件中监控多个硬盘

[root@lsy zabbix_agentd.d 22:07:47]# cat tps.conf 
UserParameter=tps[*],iostat |grep $1|   awk '{print $$2}'

不完美之处就是print $2 中的$2 不再是打印第二行,而是识别成变量了。

UserPearmeter=tps[*],iostat|grep $1 |awk '{print $ $2 }'

这样就解决了。

[root@zabbix zabbix_agentd.d]# zabbix_get  -s 10.0.0.7 -k  tps[sda] 
sda               0.87        19.97        14.90    1791724    1337270
[root@zabbix zabbix_agentd.d]# zabbix_get  -s 10.0.0.7 -k  tps[sda] 
0.87
[root@zabbix zabbix_agentd.d]# 
[root@lsy zabbix_agentd.d 22:02:20]# cat tps.conf 
UserParameter=tps[*],iostat |grep $1|   awk '{print $$2}'

页面配置
在这里插入图片描述

这样的好处就是让配置时,传参的方式可以让配置文件中写的比较少,但是在页面配置时,每个监控项都要定义一次,只是在配置文件中不需要写这么多行了。

zabbix默认监控项,内置key ,直接写死在二进制程序里面的,没有配置文件。

触发器的表达式:

diff() 比较两次取到的值
last() 最新值 监控nginx服务状态 ,适合用最新值
avg(5m) 平均5分钟,改值都大于>1 查看负载的情况下,容易有波动的值,使用平均。
max(5m) 大值
min(5m) 小值
nodate(5m) 没有收到数据 报警 监控主机存活

格式
{监控主机的名称:监控项key.函数方法()}

创建触发器两种方式

一种是自己手写
另外一种就是web页面点击

每一个监控项都是有取值间隔的,每隔30秒监控一次
nginx已经触发报警,修复故障,需要等待下一次监控项取值

邮件报警;
一 配置发件人
二 收件人
三 启动报警

在这里插入图片描述

自定义监控项 自定义触发器 邮件报警

微信报警
weixin.py
依赖requests模块
安装pip
yum install -y python-pip
pip install -i https://pypi.tuna.tsunghua.edu.cn/simple request

pip源

申请企业微信

脚本使用方法

(脚本中的内容是需要修改的)

脚本的放置路径的查看方法:

[root@zabbix ~]# grep  -Ev '^$|#' /etc/zabbix/zabbix_server.conf 
LogFile=/var/log/zabbix/zabbix_server.log
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_server.pid
SocketDir=/var/run/zabbix
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
DBPort=3306
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
Timeout=4
AlertScriptsPath=/usr/lib/zabbix/alertscripts
ExternalScripts=/usr/lib/zabbix/externalscripts
LogSlowQueries=3000
[root@zabbix ~]# find / -name "weixin.py"
/usr/lib/zabbix/alertscripts/weixin.py
[root@zabbix ~]# 

在这里插入图片描述
这里的三行内容是需要修改的。
分别是

企业微信的id
密码
机器人的id

python weixin.py 收件人 标题 内容

自己就是因为少了一个参数,导致出现错误。

在这里插入图片描述
zabbix使用微信来发送报警
第一个历程:把报警脚本放在指定目录中
第二个历程

{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}

在这里插入图片描述

配置微信收件人
在这里插入图片描述

在这里插入图片描述
报错信息 是因为没有权限

Permission denied: '/tmp/weixin.log'

看清楚是哪个服务器上进行操作/tmp/weixin.log文件,是在zabbix-server上面

解决办法:
1.赋予属主属组为zabbix
2.删除日志

修改一下报警发送的内容信息

在这里插入图片描述
内容;
默认标题

服务器:{HOST.NAME}发生: {TRIGGER.NAME}故障!

消息内容

{
告警主机:{HOST.NAME} 
告警地址:{HOST.IP} 
监控项目:{ITEM.NAME} 
监控取值:{ITEM.LASTVALUE} 
告警等级:{TRIGGER.SEVERITY} 
当前状态:{TRIGGER.STATUS} 
告警信息:{TRIGGER.NAME} 
告警时间:{EVENT.DATE} {EVENT.TIME} 
事件ID:{EVENT.ID} 
}

恢复的消息
在这里插入图片描述

默认标题:

服务器:{HOST.NAME}恢复: {TRIGGER.NAME}故障!

消息内容:

{ 
告警主机:{HOST.NAME} 
告警地址:{HOST.IP} 
监控项目:{ITEM.NAME} 
监控取值:{ITEM.LASTVALUE} 
告警等级:{TRIGGER.SEVERITY}
 当前状态:{TRIGGER.STATUS} 
告警信息:{TRIGGER.NAME} 
告警时间:{EVENT.DATE} {EVENT.TIME} 
事件ID:{EVENT.ID}
 }

一张图可以抵过千言万语

通过看图的趋势,图形 监控项 (结果为数据类型为数字类型)

乱码的原因就是因为字体的原因

修改字符,将文件上传到,即可

[root@zabbix fonts]# pwd
/usr/share/zabbix/assets/fonts
[root@zabbix fonts]# ll
total 7784
-rw-r--r-- 1 root root 7969108 Mar 22  2017 graphfont.ttf

随便选中监控项出图,临时出图

永久出图

自定义出图 grafana

grafana专业出图软件
使用grafana给zabbix出图
安装启动grafana
在grafana安装zabbix插件
创建一个连接zabbix的数据源
dashboard 展示面板

==yum localinstall ==

[root@zabbix ~]# ll
total 62288
-rw-------. 1 root root     1326 Mar  7 13:42 anaconda-ks.cfg
-rw-r--r--  1 root root 63775490 Apr 14 04:12 grafana-6.7.2-1.x86_64.rpm
[root@zabbix ~]# yum localinstall   -y grafana-6.7.2-1.x86_64.rpm 
 yum localinstall
[root@zabbix ~]# systemctl  start  grafana-server.service 
[root@zabbix ~]# systemctl  enable  grafana-server.service 
Created symlink from /etc/systemd/system/multi-user.target.wants/grafana-server.service to /usr/lib/systemd/system/grafana-server.service.
 [root@zabbix ~]# netstat  -ntupl |grep  3000
tcp6       0      0 :::3000                 :::*                    LISTEN      81004/grafana-serve 

登录地址 10.0.0.71:3000
grafana 默认的密码Admin admin

命令行方式下载插件

[root@zabbix ~]# grafana-cli  plugins  install  alexanderzobnin-zabbix-app

默认存放目录地址:(如果不能够使命令行下载的话,使用网页下载压缩包)

/var/lib/grafana/plugins

zabbix 出图 最新数据 临时出图 监控主机创建图形 永久出图
grafana:
插件
数据源
dashboard
自定义图形
导入dashboard

发布了224 篇原创文章 · 获赞 19 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/weixin_42506599/article/details/105527074
今日推荐