Ready for prime time was how Andrew Geissler, an IBM senior software engineer, was describing OpenBMC’s development at this year’s 2018 Open Compute Project Summit. Essentially, a lot of work has been put into fixing bugs and the project is now ready for general use. To this end it has been already deployed by multiple companies in datacentres worldwide.
For those who don’t know, OpenBMC is a Linux Foundation open-source project written in C++ and Python. It has a goal to produce a baseboard management controller which is open source and can operate in heterogeneous deployments. Deployments ranging from enterprise, HPC, telco to cloud. Well actually it’s official goal, as taken from the readme, is “to create a highly extensible framework for BMC software and implement for data-center computer systems.” The founding members of the project are Microsoft, Intel, IBM, Google and, of course, Facebook.
BMCs in general are controllers that monitor the state of hardware and are typically found in the main circuit board of the device. It is often in the form of a SoC and they enable monitoring and management of your hardware eg health (like temperature/fan speeds), event logs, and remote management capabilities. These are essential for today’s remotely deployed servers.
OpenBMC is welcome news as, until now, you were essentially locked into your hardware vendor of choice and hope they created good enough BMC firmware. Either way, you probably had to maintain a few different variants. At the OCP Summit it was clear that if you want to run Project Olympus hardware you need OpenBMC to run the board. This is because currently Microsoft licenses firmware from Intel that it can not open source along with the hardware.
On a customer level, some of the functions that have recently received some love are:
- Moving from yaml to json
- Ipmi – now has it 2.0 compliant
- Full dcmi support
- Web interface
The coming soon list is as follows:
- VGA mirroring
- KVM over ip
- Adv user management – eg ldap
- Remote media
- SNMP / telemetry
- inboard firmware update
- Se Linux / security enhancements