openUBMC是一款架构领先、开发友好、遵循开放标准的算力设备开源管理软件,面向全场景、全连接、全智能的时代需求。openUBMC致力于通过开源模式,打造开放、易用的管理软件开发平台,推动算力设备管理产业的繁荣与创新。
什么是BMC?
BMC(Baseboard Management Controller,基板管理控制器)作为独立运行的嵌入式管理控制器,通过带外管理机制实现对硬件设备的全生命周期监控与管理。即使主系统处于宕机、休眠或故障状态,BMC仍可持续执行硬件状态监测、远程配置、故障诊断及应急处理等核心功能,为运维人员提供硬件层的深度管控能力,是构建智能化、高可靠数据中心基础设施的关键组件。
在服务器及硬件设备的架构中,BMC扮演着“独立于主系统的硬件管理中枢”的角色,其定位主要体现在以下几个层面:
独立于主系统的“离线管理核心”
BMC具备独立的处理器、内存、网络接口及电源模块(部分设备通过主板供电,但仍独立于主系统电源控制),不依赖主CPU、操作系统或内存运行。
- 即使主系统未安装操作系统、操作系统崩溃或主CPU故障,BMC依然可以正常工作,管理员仍能通过BMC对设备进行监控和基础操作(如查看硬件状态、重启设备)。
- 在设备部署阶段,无需等待主系统启动,通过BMC即可完成硬件配置、固件升级和操作系统远程安装,缩短设备部署周期。
连接管理员与硬件的“桥梁”
传统硬件管理模式通常要求管理员现场操作,效率低且受地域限制。BMC则通过网络接口(通常为独立的管理网口),为管理员提供了远程访问硬件的通道,成为连接管理员与硬件设备的“桥梁”:
- 管理员可通过 Web 界面、命令行工具或第三方管理平台与BMC通信,实现对硬件的远程管理,无需现场操作。
- 对于大规模数据中心,通过BMC可实现多台设备的集中化管理,管理员在统一的管理界面即可监控所有设备的硬件状态、批量执行操作(如批量固件升级),大幅提升管理效率。
保障硬件稳定运行的 “守护者”
硬件故障是影响设备可用性的关键因素,而BMC通过实时监控、及时告警和故障预处理,成为保障硬件稳定运行的“守护者”:
- 实时监控硬件状态,提前发现潜在故障(如风扇转速下降、硬盘坏道预警),并通过告警通知管理员,实现的“早发现、早处理”,减少硬件故障对业务的影响。
- 部分BMC支持故障自动处理功能,例如当检测到某一风扇故障时,自动调高其他风扇的转速以维持设备散热平衡;当检测到电源冗余故障时,自动切换到备用电源,保障设备持续运行。
硬件全生命周期管理的 “支撑者”
从设备出厂到报废,BMC贯穿了硬件的全生命周期,为各个阶段的管理提供支撑:
- 出厂阶段:厂商通过BMC对硬件进行出厂检测、固件预配置,确保设备出厂时硬件状态正常、固件版本合规。
- 部署阶段:管理员通过BMC完成硬件参数配置、固件升级和操作系统远程安装,快速完成设备部署。
- 运行阶段:BMC实时监控硬件状态、记录日志、发送告警,保障设备稳定运行,同时支持远程维护操作(如远程重启、远程修复)。
- 报废阶段:通过BMC可清除设备的硬件配置信息和敏感数据,确保数据安全,满足设备报废的合规要求。
openUBMC的优势
微组件架构
openUBMC采用先进的微组件架构,组件通过总线互联,具备组件、插件、配置化多重扩展能力,一套代码兼容多种算力平台,开发效率高,大幅缩短交付周期。
通过标准化接口与微组件架构,openUBMC将管理软件业务拆分为多个独立协作单元,用户可以通过实际的业务诉求进行灵活搭配。同时也可以基于标准化接口进行增值开发。
社区友好
openUBMC提供了标准SDK套件供社区使用并兼容D-Bus总线协议,支持组件快速开发并接入系统;提供设计、开发、仿真、测试、发布的一站式平台,带来DevOps式的高效开发体验。
社区开发者可面向接口、硬件及管理功能进行研发,openUBMC提供开源能力与开发工具链,支持社区开发者开展差异化定制,围绕开放能力联合社区开展联创和技术合作。
openUBMC提供全流程工具链和软件工程能力支持,通过规范化流程大幅度简化BMC软件开发难度。openUBMC社区同时提供自动化测试能力,协助提升质量标准。
开放标准
openUBMC打造南向部件接口标准,与社区共建南向硬件标准生态,实现天池部件自适配,非天池组件快速接入适配,最终实现硬件自适配即插即用。
开始openUBMC定制之旅
openUBMC依赖具体的开发环境设置,进行开发环境搭建请参考《环境准备》。
了解openUBMC的设计理念,并开始openUBMC之旅,请参考《构建你的BMC》。
已经对openUBMC有一定的了解?
《开发指南》中提供了细化的场景文档供参考和学习,请根据具体的业务场景进行选择性阅读。
《参考指南》中更加深入地介绍了openUBMC特性的设计思路和具体使用细节,适合进阶开发者进行学习和参考,以便更好地利用openUBMC平台创造价值。
《工具指南》中提供了openUBMC社区工具的使用指南,如果需要了解工具的具体使用方法,请在这里进行查询。
《API文档》中拥有全量的内部接口介绍,如果需要查找具体的接口使用方法,请在这里进行查询。
《测试指南》中提供了openUBMC社区测试相关方案设计指导,如果需要了解如何编写测试相关方案设计,请在这里查询。
《常见问题》中提供了openUBMC社区常见问题解答,如果需要查询具体的问题,请在这里进行查询。