Skip to content
/ bmclib Public
forked from bmc-toolbox/bmclib

Library to interact with bmcs from different vendors

License

Notifications You must be signed in to change notification settings

nnuss/bmclib

 
 

Repository files navigation

bmclib - board management controller library

Status Go Report Card GoDoc Development/Support

A library to interact with BMCs of different vendors

Data collection support

Hardware Supported Partially Supported
Dell M1000e ✔️
Dell iDRAC8 ✔️
Dell iDRAC9 ✔️
HP c7000 ✔️
HP iLO3 ✔️
HP iLO4 ✔️
HP iLO5 ✔️
Supermicro X10 ✔️
Supermicro X11 ✔️

Firmware update support

Hardware Supported
Dell M1000e ✔️
Dell iDRAC8 ✔️
Dell iDRAC9 ✔️
HP c7000 ✔️
HP iLO2 ✔️
HP iLO3 ✔️
HP iLO4 ✔️
HP iLO5 ✔️
Supermicro X9
Supermicro X10
Supermicro X11

Configuration support

Hardware User accounts Syslog NTP Ldap Ldap groups BIOS HTTPS Cert
Dell M1000e ✔️ ✔️ ✔️ ✔️ ✔️ -
Dell iDRAC8 ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
Dell iDRAC9 ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
HP c7000 ✔️ ✔️ ✔️ ✔️ ✔️ -
HP iLO4 ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
HP iLO5 ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
Supermicro X10 ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
Supermicro X11 ✔️ ✔️ ✔️ ✔️ ✔️ ✔️

Debugging

export BMCLIB_LOG_LEVEL=debug for bmclib to debug log

export BMCLIB_LOG_LEVEL=trace for bmclib to trace log

export BMCLIB_TEST=1 to run on a dummy bmc (dry run).

bmc-toolbox

All of the tooling that uses bmclib is part of the bmc-toolbox

Inventory collection

dora uses bmclib to identify and inventorize assets.

Configuration

bmcbutler uses bmclib to manage configuration on BMCs.

Web API

actor uses bmclib to abstract away various BMCs and expose a consistent web API to interact with them.

Acknowledgment

bmclib was originally developed for Booking.com. With approval from Booking.com, the code and specification were generalized and published as Open Source on github, for which the authors would like to express their gratitude.

Authors

  • Juliano Martinez
  • Joel Rebello
  • Guilherme M. Schroeder
  • Mariano Guezuraga

About

Library to interact with bmcs from different vendors

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 99.9%
  • Makefile 0.1%