服务器BMC(Baseboard Management Controller)是安装在服务器主板上的独立管理芯片,通过IPMI(Intelligent Platform Management Interface)协议提供带外管理能力。即使服务器操作系统崩溃或关机,只要BMC有供电,管理员就能通过网线远程监控硬件状态、查看日志、控制电源开关。在高可用集群和IDC数据中心运维中,BMC是服务器故障排查的第一道防线。
BMC与IPMI协议基础概念
IPMI是由Intel、Dell、HP等厂商联合制定的硬件管理接口标准,当前广泛使用的是IPMI 2.0版本。BMC作为IPMI的硬件载体,拥有独立网口(或共享网口的NC-SI功能)、独立MAC地址和独立IP地址。它通过传感器监控温度、电压、风扇转速等硬件指标,通过SEL(System Event Log)记录硬件事件,通过SOL(Serial over LAN)提供串口重定向,通过KVM over IP提供远程虚拟控制台。
主流服务器厂商对BMC有不同的品牌命名:Dell称为iDRAC,HP称为iLO,联想/IBM称为XCC(XClarity Controller),超微称为BMC。底层协议均兼容IPMI标准,但各厂商会在标准之上扩展私有功能。
IPMI网络配置与用户管理
BMC的初始配置通常需要在服务器启动时进入BIOS设置IP地址,或通过操作系统内的ipmitool工具在线配置。生产环境建议为BMC分配独立管理VLAN,与业务网络物理隔离。
# 查看BMC网络配置
ipmitool lan print 1
# 设置BMC静态IP
ipmitool lan set 1 ipsrc static
ipmitool lan set 1 ipaddr 192.168.10.100
ipmitool lan set 1 netmask 255.255.255.0
ipmitool lan set 1 defgw ipaddr 192.168.10.1
# 创建管理员用户
ipmitool user set name 3 ops_admin
ipmitool user set password 3 "Str0ngP@ssw0rd"
ipmitool user enable 3
ipmitool channel setaccess 1 3 callin=on ipmi=on link=on privilege=4
privilege参数取值1-4,4对应管理员权限(ADMINISTRATOR)。创建用户后务必测试远程访问。BMC默认账户(如root/calvin)应在初始配置后禁用或修改密码,避免安全风险。
传感器监控与SEL事件日志查询
BMC通过板载传感器实时采集温度、电压、风扇转速、电源功耗等数据。这些数据无需安装额外agent即可通过IPMI读取,是服务器硬件故障排查的核心信息源。
# 查看所有传感器读数
ipmitool -I lanplus -H 192.168.10.100 -U ops_admin -P password sensor list
# 过滤温度传感器
ipmitool -I lanplus -H 192.168.10.100 -U ops_admin -P password sensor list | grep -i temp
# 查看SEL事件日志
ipmitool -I lanplus -H 192.168.10.100 -U ops_admin -P password sel list
# 查看SEL详细事件信息
ipmitool -I lanplus -H 192.168.10.100 -U ops_admin -P password sel elist
# 清除SEL日志
ipmitool -I lanplus -H 192.168.10.100 -U ops_admin -P password sel clear
SEL日志记录了所有硬件级别的事件,包括内存ECC错误、风扇故障、电源异常、温度告警等。运维实践中,应定期巡检SEL日志,重点关注非正常关机记录、内存纠正错误(Corrected Error)频率上升等趋势性指标。大量ECC纠正错误往往预示内存条即将彻底故障,提前更换可避免业务中断。
SOL串口重定向与远程KVM配置
SOL(Serial over LAN)将服务器串口输出重定向到网络,在操作系统无法启动时可通过串口看到内核启动日志和GRUB菜单,是排查启动故障的有效手段。
# 启用SOL
ipmitool -I lanplus -H 192.168.10.100 -U ops_admin -P password sol enable
# 激活SOL会话
ipmitool -I lanplus -H 192.168.10.100 -U ops_admin -P password sol activate
# 退出SOL会话:按 ~. (波浪号+点)
KVM over IP功能需要通过各厂商的Web管理界面访问,提供完整的图形化远程控制台。Dell iDRAC的虚拟控制台支持HTML5访问,无需安装Java插件。联想XCC支持远程挂载ISO镜像实现无人值守安装。生产环境应确保BMC管理网口带宽充足,KVM会话对网络延迟敏感。
BMC安全加固与固件更新实践
BMC直接控制服务器硬件,一旦被入侵可远程开关机、刷写固件,危害极大。安全加固是服务器安全加固中不可忽视的环节。
网络安全层面:BMC管理网络应使用独立VLAN,配置ACL限制访问源IP,仅在管理网段可达。BMC不应暴露在公网。有条件的环境可使用带外管理交换机,物理隔离管理流量。
访问控制层面:禁用默认账户,为每位管理员创建独立账户,收集操作审计日志。BMC密码长度不低于16位,包含大小写字母、数字和特殊字符。SSH和Web服务应禁用不安全的加密算法。
固件更新层面:BMC固件更新可修复安全漏洞和硬件兼容性问题,但更新过程存在变砖风险。更新前务必备份当前配置,确保电源稳定(接双路市电),在维护窗口执行。各厂商固件更新方式不同,Dell iDRAC支持通过Web界面在线更新,联想XCC支持通过CLI工具更新。
# 查看BMC固件版本
ipmitool -I lanplus -H 192.168.10.100 -U ops_admin -P password mc info
# 重启BMC(非重启服务器)
ipmitool -I lanplus -H 192.168.10.100 -U ops_admin -P password mc reset cold
mc reset cold会重启BMC芯片本身,期间带外管理暂时中断,但不影响服务器业务运行。当BMC响应异常或Web界面卡死时,冷重置是常用恢复手段。冷重置后需要等待1-2分钟BMC重新初始化完成。
在大规模IDC数据中心场景下,逐台手动配置BMC效率低下。可通过脚本批量巡检:遍历BMC IP列表,定期采集传感器数据和SEL日志,异常项自动告警推送到运维群。配合Ansible等配置管理工具,可批量执行固件更新和配置基线检查,将服务器带外管理自动化。
原创文章,作者:小编,如若转载,请注明出处:https://www.yunthe.com/fu-wu-qi-bmc-ji-ban-guan-li-kong-zhi-qi-pei-zhi-yu-ipmi-dai/