顺德区葬花

使用Zabbix 5.4.3监控IPMI的方法

2026-03-27 14:51:01 浏览次数:0
详细信息

方法一:使用Zabbix Agent 2(推荐)

1. 准备工作

2. 安装IPMI工具

# RHEL/CentOS
yum install ipmitool OpenIPMI OpenIPMI-libs -y

# Ubuntu/Debian
apt-get install ipmitool freeipmi-tools -y

# 验证安装
ipmitool chassis status

3. 配置Zabbix Agent 2

编辑 /etc/zabbix/zabbix_agent2.conf

# 启用IPMI监控
Plugins.Ipmi.Enabled=true
Plugins.Ipmi.Timeout=30

# 可选:如果使用sudo运行ipmitool
Plugins.Ipmi.Sudo=true

4. 配置监控项

方法A:通过模板 在Zabbix Web控制台 → 模板 → 搜索"IPMI" 使用官方模板:"Template IPMI by Zabbix agent 2" 将模板链接到主机 方法B:手动创建监控项

创建IPMI传感器监控项:

Key: ipmi.get[sensor,{$IPMI.SENSOR}]
Type: Zabbix agent 2

5. 配置IPMI连接参数

在主机级别的宏中设置:

{$IPMI.USERNAME} = admin
{$IPMI.PASSWORD} = your_password
{$IPMI.INTERFACE} = lanplus  # 或lan

或使用主机级别的宏:

User macros:
{$IPMI.USERNAME} = admin
{$IPMI.PASSWORD} = password
{$IPMI.IP} = 192.168.1.100
{$IPMI.PORT} = 623

方法二:使用Zabbix Agent 1.x

1. 配置UserParameter

编辑 /etc/zabbix/zabbix_agentd.conf

UserParameter=ipmi.sensor[*],ipmitool -H $1 -U $2 -P $3 -I lanplus sdr get "$4" | grep "$5" | awk '{print $$NF}'

UserParameter=ipmi.chassis.status[*],ipmitool -H $1 -U $2 -P $3 -I lanplus chassis status | grep "$4" | awk '{print $$NF}'

UserParameter=ipmi.power.status,ipmitool -H $1 -U $2 -P $3 -I lanplus chassis power status | awk '{print $$4}'

2. 重启Agent

systemctl restart zabbix-agent

3. 创建监控项

在Zabbix中创建监控项:

Key: ipmi.sensor[{$IPMI.IP},{$IPMI.USER},{$IPMI.PASSWORD},"CPU Temp","degrees C"]

方法三:使用IPMI检查(无需Agent)

1. 在Zabbix Server安装IPMI工具

# 在Zabbix Server上安装
yum install ipmitool OpenIPMI -y

# 配置sudo(如果需要)
visudo -f /etc/sudoers.d/zabbix
# 添加:
zabbix ALL=(ALL) NOPASSWD: /usr/bin/ipmitool

2. 创建IPMI主机

创建新主机,选择"IPMI"作为监控方式 配置IPMI参数:

3. 添加IPMI监控项

创建监控项时选择"IPMI agent" 配置传感器:
Key: ipmi.get[<sensor_type>,<sensor_name>]

例如:ipmi.get[Temperature,CPU]

常用监控项示例

温度监控

Key: ipmi.get[sensor,Ambient Temp]
Name: Ambient Temperature
Units: °C

风扇转速

Key: ipmi.get[sensor,FAN1 RPM]
Name: Fan 1 Speed
Units: RPM

电源状态

Key: ipmi.get[chassis,power]
Name: Chassis Power Status

电压监控

Key: ipmi.get[sensor,12V]
Name: 12V Voltage
Units: V

模板配置建议

创建IPMI模板

发现规则:创建传感器自动发现

Name: IPMI Sensor Discovery
Type: IPMI agent
Key: ipmi.sensor.discovery

监控项原型

Name: {#SENSOR_NAME} {#SENSOR_TYPE}
Key: ipmi.get[{#SENSOR_TYPE},{#SENSOR_NAME}]

触发器原型

故障排除

1. 测试IPMI连接

# 本地测试
ipmitool -H <BMC_IP> -U <username> -P <password> -I lanplus sdr

# 带详细输出
ipmitool -H <BMC_IP> -U <username> -P <password> -I lanplus -v sdr

2. 常见问题

3. 日志查看

# Zabbix Agent日志
tail -f /var/log/zabbix/zabbix_agent2.log

# IPMI调试
ipmitool -H <BMC_IP> -U <username> -P <password> -I lanplus -vvvv sdr

安全建议

使用专用监控账户

网络隔离

加密通信

最佳实践

批量部署:使用模板统一管理所有服务器的IPMI监控 阈值设置:根据硬件规格设置合理的报警阈值 定期检查:定期验证监控数据的准确性 文档记录:记录各服务器的BMC信息和凭据

选择哪种方法取决于您的环境需求。Zabbix Agent 2提供了更现代和集成的解决方案,而IPMI agent方法适合无法安装Agent的环境。

相关推荐