在 Zabbix 中,触发器用于监测 Zabbix 监控系统中的各种指标和条件,并在特定条件满足时触发警报。(触发器用于定义监控项的报警阈值)
(1) 主机:与特定主机相关联,检测主机上的问题或异常状况;
(2) 模版:与模版相关联,所有应用该模版的主机组、主机都可以使用触发器。
● 为模版创建触发器图示:
{
: . ( )}
●
●
●
●
●
●
例:{www.baidu .com:system.cpu.load[all,avg1].last(0)}>3
键值:system.cpu.load[all,avg1],用于监测系统的 CPU 负载情况。
● all:这是监控项的第一个参数,用于指定要监测的 CPU 核心或处理器,all 表示监测所有 CPU 核心;
● avg1:这是监控项的第二个参数,用于指定监测的负载平均时间间隔,avg1 表示系统的平均负载时间间隔为 1 分钟。
导航到配置选项,点击模版,在模版中添加触发器
触发器表达式:{temp_aaa_bean:system.cpu.load[all,avg1].last()}>1
dd if=/dev/zero of=/1.txt bs=1M count=8000
创建一个名为 "1.txt" 的4 GB大小的文件,并将其内容全部填充为零,通常用于占用磁盘空间以测试磁盘性能等用途。
配置触发器,查看监控效果:
在 Zabbix 中,动作是自动化响应机制的关键部分,允许自动执行一系列操作,响应监控数据的变化或事件。动作它可以用于触发警报、发送通知、自动维护、执行自定义脚本等。
① 创建告警媒体(邮箱、电话);
② 创建接收告警信息的用户或组;
③ 创建动作 (action),通过定义的媒体将信息发送给用户或组。
在 QQ 邮箱的设置 - 账号里找到 POP3 服务并开启,获取授权码
① 测试 zabbix 服务器与邮箱服务器的连通性:
nc smtp.qq.com -t 25
这个命令是使用 nc 命令(也称为 netcat)连接到 smtp.qq.com 主机的25号端口,与邮件服务器建立 SMTP 连接,用于查看服务器是否处于运行状态以及是否可以与其建立连接。
② zabbix 链接邮箱:
在“管理”菜单项里选择“报警媒介类型”,点击“创建媒体类型”
编辑报警媒介类型:
创建报警媒介后可以点击测试,查看邮箱是否收到zabbix的测试信息:
创建用户,针对 zabbix 进行收发邮件:
为用户添加报警媒介:
将用户的权限授予超管权限:
① 在“配置”菜单项里选择“动作”,点击“创建动作”
动作中添加的条件可以有一个或多个,可以是模版、主机,也可以是触发器
② 添加动作的操作:
收到的邮箱信息:
配置 zabbix 远程执行后,当问题发生时,可以通过远程执行命令的方式对目标主机进行控制。
① 创建告警:
● 禁用之前的告警设置:
● 创建动作和操作细节:
② 开启远程执行功能(zabbix 被监控主机):
● 修改配置文件:
vim /etc/zabbix/zabbix_agentd.conf
EnableRemoteCommands=1
这条命令表示开启远程命令执行功能(参数设为0表示禁用)
systemctl restart zabbix-agent
● 开启权限:
visudo
zabbix ALL=NOPASSWD: /usr/bin/systemctl restart httpd
这条命令授予 zabbix 用户在执行systemctl restart httpd命令时无需输入密码的特权。