Zabbix 监控 CPU 使用率

本文详细介绍了如何使用Zabbix监控CPU的各项指标,包括空闲、用户使用等状态,并通过示例展示了如何设置触发器来监控CPU空闲时间低于10%的情况,即使用率超过90%时的监控配置。
system.cpu.util[<cpu>,<type>,<mode>]


# cpu  具体编号就是CPU的具体核心,为空就代表CPU所有核心

# type 就是CPU的不同状态值
idle, nice, user (default), system (default for Windows), 
iowait, interrupt, softirq, steal,其中idle表示空闲,user表示用户使用

# mode avg1  表示平均1分钟的值,avg5,avg15 同理,为空表示当前时间

# example
system.cpu.util[,user,avg1]

下面的监控项为系统自带,如下图 

system.cpu.util[,idle]	

监控项键值 system.cpu.util[,idle]     监控cpu的空闲时间,单位%

只需要创建触发器就行了

{192.168.1.72:system.cpu.util[,idle].avg(1m)}<10

cpu空闲时间小于10%,也就是使用率大于90%

avg(1m):1分钟平均值

### 配置 Zabbix 6.4 监控 CPU 使用率并设置超过 90% 的告警 在 Zabbix监控 CPU 使用率并设置触发器以在 CPU 使用率超过 90% 时发送告警,是一个常见的系统监控需求。以下是详细的配置步骤: #### 1. 创建监控项(Items) 首先需要在目标主机上创建一个监控项来获取 CPU 使用率Zabbix 提供了内置的监控项类型来获取 CPU 利用率。 - **监控项名称**:`CPU usage` - **键值**:`system.cpu.util[,idle]` - **间隔**:`1m` - **历史数据保留周期**:根据需求设定 - **监控项类型**:`Zabbix agent` 该监控项将返回 CPU 处于空闲状态的百分比,因此需要在触发器中进行逻辑反转来判断 CPU 是否过载。 #### 2. 创建触发器(Triggers) 在创建触发器时,需要设置表达式来判断 CPU 空闲时间是否低于 10%,即 CPU 使用率是否高于 90%。 - **触发器名称**:`CPU usage is above 90%` - **表达式**:`{Template OS Linux:system.cpu.util[,idle].avg(1m)}<10` - **严重性**:`High` 或 `Average` - **描述**:可选,用于说明触发器用途 该表达式使用了 `avg(1m)` 来计算过去 1 分钟的平均空闲时间,当该值小于 10% 时触发告警。 #### 3. 创建媒介(Media Types) 如果希望在触发器触发时通过邮件发送告警信息,需要先配置媒介类型。Zabbix 支持多种媒介类型,包括电子邮件、短信、Webhook 等。 - **媒介类型名称**:`Email` - **类型**:`Email` - **SMTP 服务器**:填写邮件服务器地址 - **SMTP 服务器端口**:通常为 `25` 或 `587` - **SMTP HELO**:填写主机名 - **SMTP 电子邮件**:填写发件人邮箱地址 - **认证**:启用 SMTP 认证(如需要) - **用户名和密码**:填写邮箱账号和密码 确保 Zabbix 服务器上已安装邮件客户端(如 `mailx` 或 `sendmail`),并且可以正常发送邮件[^2]。 #### 4. 配置用户媒介 在“管理 > 用户”中选择需要接收告警的用户,进入“媒介”选项卡,添加新的媒介。 - **媒介类型**:选择之前创建的 `Email` - **收件人**:填写接收告警邮件的邮箱地址 - **其他选项**:如启用、发送时间段等 #### 5. 创建动作(Actions) 在“配置 > 动作”中创建新的动作,用于定义在触发器触发时执行的操作。 - **操作名称**:`Send Email to Admin on CPU Overload` - **事件源**:选择 `触发器` - **操作类型**:选择 `发送消息` - **用户组**:选择需要通知的用户组 - **消息内容**:自定义告警通知内容,支持宏变量,如 `{TRIGGER.NAME}`, `{HOST.NAME}`, `{ITEM.VALUE}` 等 - **媒介类型**:选择 `Email` 同时可以配置恢复操作,在触发器恢复时发送恢复通知。 #### 6. 验证配置 完成上述配置后,可以通过以下方式验证: - 使用 `stress` 工具模拟高 CPU 使用率: ```bash stress --cpu 4 --timeout 60s ``` - 等待 Zabbix 收集数据并触发告警 - 检查是否收到告警邮件 #### 7. 脚本权限与路径配置 如果使用自定义脚本发送邮件,需确保: - 脚本文件(如 `mail.sh`)位于 Zabbix 配置文件中指定的 `AlertScriptsPath` 目录下 - 脚本具有可执行权限: ```bash chmod +x /usr/local/etc/alertscripts/mail.sh ``` - Zabbix 服务已重启以加载新配置: ```bash systemctl restart zabbix-server ``` #### 8. 常见问题排查 - **未收到邮件**: - 检查邮件服务器是否正常工作 - 确认 Zabbix 用户媒介配置正确 - 查看 Zabbix 日志(`/var/log/zabbix/zabbix_server.log`)是否有错误信息 - **触发器未触发**: - 检查监控项是否正常收集数据 - 验证触发器表达式是否正确 - 确认触发器处于启用状态 ---
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值