阶段八:企业级监控中间件之Zabbix进阶
图形与仪表板(聚合图形)
监控项创建好了, 但是它监控收集的数据在哪里看呢? 答案就是图形
创建图形显示监控项数据
在模板里创建图形
数据采集 =》 模板:
配置图形对应监控项
验证图形
监测 =》 主机 =》 点图形:
练习: 请将前面自定义的登录用户数这个监控项也做成图形
仪表板(监控大屏)
仪表板: 就是把多个重要常用的图形整合一起来显示,方便查看.
假设需要经常查看agent1的cpu负载与登录用户数这两张图,我们可以将其聚合到一起做成一张聚合图形
创建仪表板
创建完成后,如下图所示:
编辑图形
添加要监控主机:
在”类型“那里找到”图形“
添加监控项,包括1分钟负载、5分钟负载、15分钟负载
设置完成后,如下图所示:
添加System登录用户数
添加监控项
整合后如下图所示:
单击保存设置
触发器
虽然我们可以通过图形查看到监控的数据,但我们不可能一直盯着图形的变化。
所以需要定义监控项到达一个临界值(阈值)或者满足一个条件,就会发生状态变化的通知。
定义触发器(trigger)就是定义这个临界值(阈值)或条件.
监控项有无限种可能,触发器也一样有无限种可能。如:
- cpu负载值大于某个值则通知
- 登录用户数大于某个值则通知
- 内存空闲率小于某个值则通知
- 磁盘使用率大于某个值则通知
- 主机名被修改则通知
等等,主要还是看需求。
创建登录用户数过多的触发器
创建触发器
配置触发器
改 ”结果“ 处的 ”=“ 为 ”>=“ 0 为 10
验证创建成功
验证触发器效果
先在agent1上再多打开几个终端,将登录用户数控制在10个以上(操作过程省略)
然后通过下图查看触发器通知
自由思考与操作练习: 请将cpu负载的相关监控项也创建对应的触发器并验证。
告警
触发器的通知信息显示在web管理界面, 运维工程师仍然没办法24小时盯着它。所以我们希望它能自动地通知工程师们,这就是告警。
zabbix的告警媒介支持email,jabber,sms(短信),微信,电话语音等。
告警过程原理
告警平台申请
自己配置告警过程比较复杂,需要配置触发器动作,用户与其告警媒介,最麻烦的是写程序对接邮件,微信,短信,电话等接口.
- 邮件容易被拒,当做垃圾邮件
- 微信需要企业微信号并开发程序对接
- 短信一般都需要付费买运营商相关服务
- 电话语音需要更专业的开发
以上要求对于没有太强开发能力和开发支持的运维工程师来说,难度较大。
大部分同学,将来一旦接触到运维监控,必然会接触到Python和Shell。因为, 在中小企业(总人数<500,开发运维<50)里,往往运维只有不到5个人! 工资一般在14K以上,要求全栈。 那什么是全栈? 通俗来说,八个字可以概括,既会,又会,既要,又要。
所以我们这里选择专业的告警平台就可以帮助实现一体化告警方案。
如:onealeart 参考:http://www.onealert.com/
请先申请一个账号,绑定邮箱,手机,微信等(过程省略)。
登录进去后,按如下图示操作
告警平台增加Zabbix应用
server上安装告警agent
按照提示进行安装
[root@server ~]# grep AlertScriptsPath /etc/zabbix/zabbix_server.conf
### Option: AlertScriptsPath
# AlertScriptsPath=/usr/lib/zabbix/alertscripts
[root@server ~]# cd /usr/lib/zabbix/alertscripts
[root@server alertscripts]# ls
[root@server alertscripts]# wget https://download.aiops.com/ca_agent/zabbix/ca_zabbix_release-4.0.4.tar.gz
[root@server alertscripts]# ls
ca_zabbix_release-4.0.4.tar.gz
[root@server alertscripts]# tar -xzf ca_zabbix_release-4.0.4.tar.gz
[root@server alertscripts]# ls
ca_zabbix_release-4.0.4.tar.gz cloudalert
[root@server alertscripts]# cd cloudalert/
[root@server cloudalert]# ls
bin logs
[root@server cloudalert]# cd bin/
[root@server bin]# ls
alert.sh funcs install.sh uninstall.sh
[root@server bin]# bash install.sh e11f698d4b5c474db42071dee0718972
请输入Zabbix管理地址:http://192.168.88.201
Check connection success!
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 109 0 42 100 67 323 515 --:--:-- --:--:-- --:--:-- 838
Check api version success!
请输入Zabbix管理员账号:Admin
请输入Zabbix管理员密码:zabbix
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 174 0 70 100 104 228 338 --:--:-- --:--:-- --:--:-- 566
Authentication success!
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 326 0 57 100 269 293 1386 --:--:-- --:--:-- --:--:-- 1680
Create new media type success!
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 192 0 54 100 138 357 913 --:--:-- --:--:-- --:--:-- 1263
Create new group success!
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 364 0 51 100 313 57 355 --:--:-- --:--:-- --:--:-- 413
Create new user success!
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 1654 0 53 100 1601 219 6643 --:--:-- --:--:-- --:--:-- 6863
Create new action success!
Install zabbix agent success!
[root@server bin]#
......
补充:如果信息填写错误,请执行以下命令后再重新配置。
cd /usr/lib/zabbix/alertscripts/cloudalert/bin/
bash uninstall.sh命令作用:
- 访问
https://download.aiops.com/ca_agent/zabbix/ca_zabbix_release-4.0.4.tar.gz;curl默认把响应写到终端,wget默认下载到文件。可据 HTTP 状态、响应内容或下载结果判断服务是否可访问。
- 按选项打包或解包归档文件;
-c表示创建归档,-x表示解包,-f后面指定归档文件名。
执行结果:
- 成功后会输出匹配行;没有匹配时通常无输出并返回非零状态。
- 成功后目标文件会下载到当前目录或
-O指定的位置。
- 成功后会生成归档文件或把归档内容解压到目标目录;用
tar -tf 归档文件可查看归档内容。
关键参数:
注意事项:
我这里主要配置的是任务时间任务告警立刻发送到我所绑定的邮箱,微信,手机短信,手机电话。
这里以前面配置过的"登录用户数大于2个"这个触发器来测试告警.
如果在测试前就已经大于2个了是不会告警的,需要先降到2个以下,再升到2个以上让其触发。
数值升上去的方法也很简单,多开几个终端窗口。
补充:
本文由飞书云文档同步生成。涉及命令、SQL、配置示例时,请以飞书源文档和实际环境执行结果为准。