@[toc]
点击用户头像,打开用户基本资料,选择开启“正在发送消息”来开启此功能。如果有警告,系统会发出警告声:
查看系统自带的触发器:
下面测试“Linux用户密码文件发生改变”的触发器:
首先设置采集的时间间隔,将原来默认1小时修改为10s:
查看最新数据,可以看到最新数据是:3356102413
在10.0.0.3监控主机上使密码文件发生变化:
[root@agent ~]# md5sum /etc/passwd
41a16f7241d08a7246b8999a0fab90c5 /etc/passwd
# 得到的最新数据和Web界面上显示的一样
[root@agent ~]# cksum /etc/passwd
3356102413 1002 /etc/passwd
# 添加新用户来改变/etc/passwd文件
[root@agent ~]# useradd thanlon
# 再查看最新数据,这时候这个Web页面上最新数据应该发生改变为4061271438
[root@agent ~]# cksum /etc/passwd
4061271438 1041 /etc/passwd
可能Web界面上的最新数据没有发生改变,也没有产生警报。这是因为在Web界面作的操作都会提交到数据库, 添加一条主机后,数据库就会多一条记录。zabbix-server默认60s查寻一次数据库,才会知道任务目标是什么,然后再监控。如果值没有改变,可以重启zabbix server,让它提前查询数据库。这里可以看到值已经变成了4061271438:
进入图形,可以图形、值和最近500个值三种视图展示数据的改变:
数据发生改变后,系统会发出两声警报:
下面创建一个“当前系统用户登录超过2个报警”的触发器。选择创建触发器:
添加触发器名称和表达式,选择“添加”即可:
在触发器页面可以看到设置的触发器:
默认的更新间隔是10min,测试的时候,可以改为10s:
下面再创建2个登录终端,可以通过
w
命令查看当前登录的终端:
[root@agent ~]# w
12:10:21 up 53 min, 3 users, load average: 0.00, 0.03, 0.05
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 10.0.0.1 11:19 3:49 0.28s 0.28s -bash
root pts/1 10.0.0.1 12:06 5.00s 0.02s 0.01s w
root pts/2 10.0.0.1 12:07 2:57 0.01s 0.01s -bash
此时当前的用户数为3,超过了我们自定的2,触发了我们自定义的当前系统用户数量登录数:
当我们关掉一个登录连接,可以发现登录数已经变成了2,系统响了一声在页面上发出提示,问题已解决:
系统的触发器一般监控CPU、内存、硬盘、网络、进程
等常用的监控项。触发器之间还可以设置依赖关系
,可以设置被依赖的触发器如果被触发了,依赖它的触发器可以不触发。
还不熟悉自己写表达式的时候,可以自定义生成触发器:
可以设置大于4个报警,小于3个恢复:
接下来就是改变当前系统(10.0.0.3)用户登录数,当设置为5个连接数时,系统报出现问题,当关闭两个连接设置为2个连接时,恢复:
可以在zabbix server上找到报警声音的文件:
[root@Zabbix-server ~]# cd /usr/share/zabbix/audio/
[root@Zabbix-server audio]# ls
alarm_average.mp3 alarm_high.mp3 alarm_ok.mp3 no_sound.mp3
alarm_disaster.mp3 alarm_information.mp3 alarm_warning.mp3