IPMI on FreeBSD


Doug White <dwhite@freebsd.org>

Introduction

The Intelligent Platform Management Interface (IPMI) is a specification that defines system, network, and system board-level interfaces to an Intelligent Management device (sometimes called a Base Management Controller, or BMC) on or attached to the system board that performs monitoring and control operations. The IPMI specification defines interfaces for such operations as power control, System Event Log management, system sensor readings, event handling, system parts inventory, and more. Currently, Intel's server motherboards implement large portions of the IPMI standard and are used as a reference platform for FreeBSD software development. A sample SCB2-based system is the current guinea pig.

IPMI is a specification currently under development by Dell, HP, Intel, and NEC. Information about IPMI is available on Intel's site. Usage of the IPMI specification and tools is made available under a patent agreement with adopters that discourages patent protection of key portions of the specification by requiring any such patent to be licensed with no royalties to the other adopters.

Work on FreeBSD software for IPMI is sponsored by FreeBSD Systems, Inc.

IPMI Specification Features

IPMI pulls together so much information, it's difficult to enumerate an entire feature list.  A short list of features IPMI supports:

While not IPMI-mandated features per se, some platforms (the Intels in particular) implement these management features which are controllable with IPMI:

Current Progress

Three sets of tools currently exist for interfacing with IPMI-equipped computers.

All of this code is made available under a standard three-clause BSD license.

Download

The Download and Building page has the tarball link and simple build instructions. The main repository for changes to this source is now on sourceforge.

Tested Hardware

The FreeBSD/IPMI software was developed and/or tested on the following machines.  These are just the ones I could get my hands on; it may work with other machines that are of similar specification.  The number in parentheses is the IPMI version the hardware supports.  v1.5 has the multi-channel (LAN/serial) support.

Design Ideas

The following tools or features are currently under consideration.

Please send email if there's particular information that would be useful in a production context.

Future Directions, Ideas, and Unfocused Rambling

Request For Comments

If you have comments, suggestions, or questions, please email me directly at <dwhite@freebsd.org>.