目录
引言
Zabbix是一个开源的企业级分布式监控解决方案,能够监控各种网络参数,保证服务器系统的安全运营,并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。本文将详细介绍Zabbix的自定义监控、自动发现和注册以及代理设置的过程和技巧。
环境准备
类别 | IP地址 | 主机名 | 安装服务 |
zabbix服务端 | 192.168.83.90 | zbx-server | zabbix-server-mysql zabbix-agent centos-release-scl mariadb-server mariadb |
zabbix客户端 | 192.168.83.60 | zabbix-client | zabbix-agent2 |
zabbix代理端 | 192.168.83.20 | zabbix-proxy | zabbix-proxy mariadb-server mariadb |
windows客户端 | 192.168.83.253 | DESKTOP-TO8B1DA | zabbix-agent2 |
一、自定义监控内容
(一)添加监控主机
将agent客户端添加到服务端的监控范围当中
//在 Web 页面中添加 agent 主机
点击左边菜单栏【配置】中的【主机】,点击【创建主机】
【主机名称】设置成 zbx-client #自定义
【可见的名称】设置成 192.168.83.60 #自定义
【群组】选择 Linux server
【Interfaces】的【IP地址】设置成 192.168.83.60
(二)添加自定义监控内容
创建自定义 “key” 意味着在 Zabbix 监控系统中定义一个新的监控项
该监控项将执行特定的 Linux 命令并返回结果作为监控数据
案列:自定义监控客户端服务器登录的人数
需求:限制登录人数不超过 5 个,超过 5 个就发出报警信息
[root@zabbix-client ~]#who |wc -l
2
[root@zabbix-client ~]#vim /etc/zabbix/zabbix_agent2.conf
......
273 Include=/etc/zabbix/zabbix_agent2.d/﹡.conf
#指定zabbix的子目录,该路径下的所有以.conf结尾的文件,都可以识别
......
[root@zabbix-client ~]#cd /etc/zabbix/zabbix_agent2.d/
[root@zabbix-client zabbix_agent2.d]#ls
[root@zabbix-client zabbix_agent2.d]#vim user.conf
[root@zabbix-client zabbix_agent2.d]#cat user.conf
UserParameter=user.login,who|wc -l
[root@zabbix-client zabbix_agent2.d]#systemctl restart zabbix-agent2
---------------------------------------------------------------------------
UserParameter=
#Zabbix Agent配置文件中定义自定义监控项的起始标记,
#用户可以定义Zabbix Agent执行的外部命令或脚本,以收集无法通过标准监控项获取的信息。
#监控项与外部命令或脚本以键值的方式表示,以','进行分割
user.login
#自定义监控项的键名,也就是在Zabbix前端界面配置监控项时会用到的“监控项键值”。
#这个名称可以根据实际监测需求自定义,用于标识这个监控项的用途
who|wc -l
#自定义监控项键名后面的命令,这部分会在Zabbix Agent端执行。这个命令由两部分组成:
who 命令用于列出当前系统中登录的所有用户。
#wc -l 命令用于统计输入行的数量
#整个命令的作用是计算当前有多少行登录用户记录,也就等价于当前登录用户的数量
在服务端测试新建的监控项
[root@zbx-server ~]# zabbix_get -s '192.168.83.60' -p 10050 -k 'user.login'
1
#返回值为1,表示正常使用
(三)自定义监控模板
在 Web 页面创建自定义监控项模板
1.创建模板
点击左边菜单栏【配置】中的【模板】,点击【创建模板】
【模板名称】设置成 Template Login User
【可见的名称】设置成 Template Login User
【群组】选择 Template
【描述】可自定义
点击 【添加】,此时就可在【链接的模板】中搜索到 Template Login User 了
2.创建应用集
点击上方菜单栏【应用集】,点击【创建应用集】
【名称】设置成 Login User
点击 【添加】PS:应用集用于管理监控选项
3.创建监控项
点击上方菜单栏【监控项】,点击【创建监控项】
【名称】设置成users
【键值】设置成 login.user #键值必须要与自定义的监控项配置文件中设置的保持一致
【更新间隔】设置成 10s
【历史数据保留时长】Storage period 30d #保留时间可自定义设置
点击 【添加】
点击添加之前,也可以先进行联通性测试
4.创建触发器
当监控项获取到监控的值后和触发器预设的值进行对比,判断是否报警
点击上方菜单栏【触发器】,点击【创建触发器】
【名称】设置成 users than 3
【严重性】设置成 一般严重
【表达式】点击添加,【监控项】点击选择 users,【功能】选择 last(),【结果】选择 > =3,点击 【插入】
点击 【添加】
5.创建图形
点击上方菜单栏【图形】,点击【创建图形】
【名称】设置成 users
【宽】、【高】可直接采用默认值
【监控项】点击添加勾选相关监控项 users,【功能】选择 最大,其它可保持默认值
点击 【添加】
6.主机与模板关联
将主机与模板关联起来(一个主机可以关联多个模板)
点击左边菜单栏【配置】中的【主机】,点击你要关联的主机
点击上方菜单栏【模板】,【Link new tamplates】搜索 login,选择 Template Login User,点击【更新】
<