zabbix监控物理机
- 物理机
- 2025-08-05
- 4
是关于使用Zabbix监控物理机的详细指南,涵盖从部署到实践的全流程:
Zabbix核心架构解析
Zabbix采用分布式架构,主要包含以下组件:
| 组件名称 | 功能描述 |
|——————–|—————————————————————————–|
| Zabbix Server | 接收并处理所有监控数据,存储至数据库;负责告警触发和配置管理 |
| Zabbix Agent | 安装在被监控物理机上,主动采集硬件/系统指标并通过加密通道传输至Server |
| Zabbix Web界面 | 基于PHP开发的可视化平台,用于配置监控策略、查看实时图表及历史趋势 |
| 数据库(如MySQL) | 持久化存储配置信息、性能指标统计数据和事件日志 |
| IPMI接口 | 通过基板管理控制器获取服务器内部传感器数据(温度、电压等物理参数) |
部署前的准备与环境搭建
安装依赖包与数据库配置
在CentOS系统中执行以下命令初始化环境:
yum install -y mariadb-server # 安装数据库服务 systemctl start mariadb # 启动MySQL服务 mysql -uroot -ppassword # 登录数据库创建专属库表结构 CREATE DATABASE zabbixdb CHARACTER SET utf8mb4 COLLATE utf8mb4_bin; CREATE USER 'zbxuser'@'%' IDENTIFIED BY 'zabbix'; GRANT ALL PRIVILEGES ON zabbixdb. TO 'zbxuser'@'%'; FLUSH PRIVILEGES; zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql zabbixdb # 导入初始架构
注意:建议为监控场景单独分配数据库实例,避免与其他业务混用资源。
部署Zabbix服务端
通过官方仓库安装最新稳定版:
rpm -Uvh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm yum clean all && yum makecache fast yum install -y zabbix-server-mysql zabbix-web zabbix-agent
编辑配置文件/etc/zabbix/zabbix_server.conf
关键参数:
DBHost=192.168.88.50 # 数据库IP地址 DBName=zabbixdb # 之前创建的数据库名 DBUser=zbxuser # 对应的用户名 DBPassword=zabbix # 设置的密码 ListenPort=10051 # 服务监听端口 StartIPMIPollers=3 # 启用IPMI轮询功能(物理机监控必备)
启动服务并设置开机自启:
systemctl enable zabbix-server --now systemctl restart zabbix-server
被监控端Agent配置
在目标物理机执行安装命令后修改守则文件:
vim /etc/zabbix/zabbix_agentd.conf Server=192.168.88.50 # Zabbix Server所在IP ServerActive=192.168.88.50 # 主动模式备用地址(高可用场景使用) Hostname=PhysicalServer01 # 唯一标识主机的名称
重启Agent使配置生效:
systemctl enable zabbix-agent --now systemctl restart zabbix-agent
物理机专项监控实现方案
IPMI集成配置流程
对于支持带外管理(BMC)的设备,需完成以下步骤激活硬件级监控:
| 步骤序号 | | 示例命令/界面路径 |
|————–|—————————————————————————–|——————————————|
| ① | 进入BIOS设置启用iLO虚拟介质功能 | F11→System Configuration→iLO 4 Settings |
| ② | 关闭DHCP改为静态IP分配 | Network Options→Set Static IP Address |
| ③ | 浏览器访问https://
| ④ | 允许Zabbix通过LAN Plus协议访问传感器 | Security→Remote Management→Enable IPMI Over LAN |
| ⑤ | 在Zabbix Web界面添加主机时关联IPMI模板 | Configuration→Hosts→Create Host→Select “Template IPMI” |
关键监控指标说明
通过IPMI可采集到以下核心物理参数:
| 传感器类型 | 监控意义 | 阈值建议 |
|———————|——————————————————————–|————————-|
| CPU温度 | 反映处理器负载情况,异常升高可能导致降频或死机 | >70℃触发警告 |
| 机箱进风温度 | 判断冷却系统效率,高温会影响电子元器件寿命 | >45℃预警 |
| 电源输入电压 | 检测供电稳定性,波动过大可能损坏硬件组件 | ±5%浮动范围外报警 |
| 风扇转速 | 确保散热系统正常运行,低速可能导致局部过热 | <2000 RPM触发检查 |
自定义脚本扩展监控能力
当内置模板无法满足需求时,可通过UserParameter机制添加自定义指标,例如监控特定进程内存占用:
# 在/etc/zabbix/zabbix_agentd.d/custom.conf中添加 UserParameter=myapp_mem_usage,ps aux | grep myapp | awk '{print $4}' | cut -d. -f1
此配置将每分钟执行一次命令并返回整型数值供图形展示。
最佳实践建议
- 网络隔离设计:为监控通信建立专用VLAN,避免与生产业务争抢带宽
- 数据采集频率优化:根据指标重要性分级设置更新间隔(如CPU使用率设为30秒,磁盘空间设为5分钟)
- 安全加固措施:限制Zabbix Server仅允许特定IP段连接,启用TLS加密传输敏感数据
- 容量规划参考:单台Server可支撑约500台物理机的监控压力,超过该规模建议引入Proxy代理层
FAQs
Q1: Zabbix无法获取IPMI传感器数据怎么办?
A: 请按顺序排查:①确认BMC固件版本是否支持LAN访问;②检查防火墙是否放行664端口;③验证Zabbix用户是否有只读权限;④使用ipmitool工具手动测试连通性(如ipmitool -I lanplus -H <IP> -U admin -P password sensor list
)。
Q2: 物理机监控项突然全部失效如何处理?
A: 优先检查Agent进程状态(systemctl status zabbix-agent),若正常运行则查看日志文件/var/log/zabbix/zabbix_agentd.log是否有错误记录,常见原因包括配置文件语法错误、Server端IP变更未同步、网络中断导致数据积压等,建议逐步排查网络连通性→配置文件正确