1.自定义监控

Zabbix 默认内嵌了 300 多个监控模板,每个监控模板可以监控几十个甚至上百个监控数据。但内嵌再多的监控模板也无法满足企业的所有个性化需求。

如果我们想监控的数据在默认内嵌的监控模板中没有,可通过自定义监控实现。例如想监控 Web 主机(192.168.30.129)当前登录用户数量,使用 Linux by Zabbix agent 无法监控,需进行自定义监控配置

要监控 Web 主机的登录用户数量,需在被监控主机中定义自定义监控。被监控主机的 /etc/zabbix/zabbix_agentd.conf 配置文件默认通过 Include 语句加载 /etc/zabbix/zabbix_agentd.d/*.conf,即 /etc/zabbix/zabbix_agentd.d 目录中所有扩展名为 conf 的配置文件会被自动加载。实现自定义监控需在该目录中创建对应的自定义监控配置文件,这里创建配置文件 count.login.user.conf(文件名可任意),实现自定义监控登录用户数量。

[root@bbs ~]# vim /etc/zabbix/zabbix_agentd.d/count.login.user.conf
UserParameter=count.login.user,who | wc -l

配置文件中的 UserParameter 语句支持用户通过定义参数的方式实现自定义监控功能,语法格式为 UserParameter=<key>,<shell command><key> 是自定义监控的名称(键名可任意),在上述案例中定义了键 count.login.user。逗号后面的 <shell command> 是具体的监控命令,简单命令可直接写在配置文件中,复杂监控可提前编写脚本,在配置文件中逗号后面加上脚本路径和名称即可。上述案例中,通过 who | wc -l 统计系统登录的用户数量,who 命令查看当前登录用户具体信息,wc -l 统计行数,行数即代表登录用户数量。

在配置完自定义监控文件后,我们还需要重启zabbix-agent服务,让新的配置文件生效。

systemctl restart zabbix-agent

在被监控主机定义好自定义监控之后,管理员需要使用浏览器登录 Zabbix 监控服务器,配置监控服务器获取监控数据。在监控服务器上面需要自定义一个新的监控模板,在监控模板中添加监控项目,这个监控项目会调用上面创建的自定义监控,执行对应的监控命令,获取监控数据。

使用浏览器访问网站 ,单击 “配置” 菜单下面的 “模板” 子菜单,在右边的页面中单击 “创建模板” 按钮,如图 1 所示。

在弹出的 “模板” 对话框中,在 “模板名称” 的位置添加任意名称,这里填写的是 “monitor login”,可以在 “描述” 后面填写这个监控模板相关的描述信息(非必需操作),。单击 “群组” 后面的 “选择” 按钮,在弹出的 “主机群组” 对话框中将我们定义的监控模板加入一个群组,默认勾选的是 “Templates” 复选框,单击 “选择” 按钮,我们将自定义的监控模板加入该群组。在选择群组后,单击 “添加” 按钮即可完成自定义监控模板的创建,如图 1所示。

在创建自定义监控模板后,可在 “配置” 菜单的 “模板” 子菜单中找到刚创建的模板(如monitor login)。Zabbix 模板默认按字母顺序排序,也可通过名称搜索快速定位(如图 所示)。此时模板的 “监控项” 为空,需创建监控项:

单击monitor login模板后的 “监控项” 菜单,在右上角单击 “创建监控项” 按钮,弹出 “监控项” 对话框,如果图1所示

填写监控项基本信息:名称可任意填写,监控类型选择 “Zabbix 客户端”(监控服务器通过被监控主机的 zabbix agent 进程获取数据),键值需与被监控主机上定义的自定义监控 key 保持一致(如count.login.user),信息类型选 “数字(无正负)”,更新间隔设为1m,其他保持默认值,填写完成后单击 “应用” 按钮。

创建完监控项后,需将自定义监控模板与被监控主机绑定,步骤如下:

单击 “配置” 菜单下的 “主机” 子菜单,在右侧页面找到被监控主机,勾选后即可完成绑定,之后便可查看监控数据。

如图所示,已经成功监控用户登录数。

基于自定义监控,我们也可以实现:创建触发器实现监控报警,如内存不足、CPU负载过高等等操作。

下图是对monitor login模板设置警告监控,当用户数量大于5时发出警告!

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐