BMC management with bmc-toolbox
2019-09-21, 12:25–13:05 (Europe/Berlin), Cage

This talk is about the bmc-toolbox, an open-source project that leverages the Baseboard Management Controller (iLOs iDracs and similar) to help manage a large fleet (>50K) of bare metal servers at Booking.com

bmc-toolbox.github.io

Its goal is to provide vendor agnostic tooling to manage the lifecycle of bare metal servers,
this talk describes the tools part of bmc-toolbox and various aspects of managing a large fleet of bare metal servers.


The bmc-toolbox leverages the Baseboard Management Controller to help manage the lifecycle of datacenter bare metal. It provides vendor agnostic tools and a library in Go lang to inventorize, configure, manage, update a large fleet of bare metal assets with the help of the BMC.

  • bmclib - A Go lang library that provides a consistent set of methods to interface with BMCs.
  • dora - tool to inventorize a fleet of bare metal servers and chassis assets.
  • bmcbutler - tool to handle configuration management for a fleet of bare metal server and chassis BMCs.
  • actor - A single API webservice endpoint to interact with a fleet of bare metal BMCs.
  • bmcldap - LDAP based authentication/authorization service/proxy for BMCs.
  • bmcfwupd - tool to update the BMC firmware.

This talk covers,
- The challenges managing the provisioning and lifecycle of a not yet hyperscale size set of bare metal servers.
- The purpose of the tools included of bmc-toolbox, how they help make our lives easier
- How the tooling interacts with the BMCs (vendor specific APIs, Redfish)
- The current state of Redfish in the wild

See also: Slides

I'm a Systems Engineer who loves to play with software and hardware at scale. I'm currently working at Booking.com where I have fun working on bmc-toolbox and helping to develop and improve our bare-metal provisioning system.

I'm a Site Reliability Engineer at Booking.com,
where I help build tooling to automate lifecycle management for our fleet of bare metal servers,
the bmc-toolbox project was the result of our attempt to break free from vendor specific hardware.