freeipmi
FREEIPMI(7) Overview FREEIPMI(7)
NAME
FreeIPMI - FreeIPMI overview
Introduction
FreeIPMI provides in-band and out-of-band IPMI software based on the
IPMI v1.5/2.0 specification.
What is IPMI?
The IPMI specification defines a set of interfaces for platform manage-
ment and is implemented by a number vendors for system management. The
features of IPMI that most users will be interested in are sensor moni-
toring, system event monitoring, power control, and serial-over-LAN
(SOL). The FreeIPMI tools and libraries listed below should provide
users with the ability to access and utilize these and many other fea-
tures of IPMI.
Getting Started with IPMI
IPMI can be used in-band (i.e. running on a machine locally) or out-of-
band (i.e. connecting remotely).
Most FreeIPMI tools can operate in-band by using one of the in-band
drivers included. These in-band drivers include a userspace KCS inter-
face driver, a SSIF driver through the Linux SSIF device (i.e.
/dev/i2c-0), the OpenIPMI Linux kernel driver (i.e. /dev/ipmi0), the
Sun/Solaris BMC driver (i.e. /dev/bmc), and the Intel DCMI/MEI driver
(i.e. /dev/dcmi). If your system requires the use of installed drivers,
those appropriate modules must be installed ahead of time. However,
most systems should automatically load these drivers when appropriate.
Under most scenarios, the FreeIPMI tools should automatically discover
which in-band interface to use and the proper settings to use. Users
may execute the tools on the command line to begin using them. Some
motherboards may require you to determine driver type, addresses,
paths, etc. on your own and pass them as command line options to the
tools. You may use ipmi-locate(8) to help determine this information.
Other tools such as dmidecode(8) may also provide this information.
To use IPMI out-of-band with tools such as ipmipower(8) or ipmi-sen-
sors(8), the remote machine's BMC must first be configured for out of
band communication. Typically, this involves setting a username, pass-
word, IP address, MAC address, and a few other parameters. This can be
done using the tool ipmi-config(8). Additional information on how to
configure with ipmi-config(8) can be found in the ipmi-config.conf(5)
manpage. Some vendors may pre-configure their motherboards with default
values so that ipmi-config(8) can be used remotely to configure the ma-
chine. However, most of the time, the BMC must be configured in-band
before out-of-band access can be allowed (for example, the correct IP
address and MAC address must be configured).
In order to remotely connect to a machine, you typically must specify
the host, username, and password for the tool in order to connect. De-
pending on configuration settings, a K_g key, privilege level, authen-
tication type, cipher suite id, or protocol version may need to be
specified.
Some vendors may have not implemented IPMI properly and a workaround
must be specified into FreeIPMI to ensure the tool can execute prop-
erly. For example, a fair number of vendors have populated their FRU
records with invalid checksums. To properly ignore these set of check-
sums a skipchecks workaround has been added to ipmi-fru(8). Please see
each of the tool manpages to see a list of available workarounds.
Additional information, examples, and general trouble-shooting can be
found in each of the tool manpages.
General Use
The primary tools that most users of FreeIPMI will be interested in for
system management are the following:
ipmi-sensors
A tool to read IPMI sensor readings to aid in system monitoring.
ipmi-sel
A tool to read and manage IPMI System Event Log (SEL) records to aid in
system debugging.
ipmipower
A tool for remote power control.
ipmiconsole
A tool for Serial-over-Lan (SOL) console access.
Many other tools and libraries are listed below that cover additional
features and areas of IPMI.
Additional information, examples, and general trouble-shooting can be
found in each of the tool manpages.
Configuration
In order to avoid typing in a long list of command line options to
specify IPMI communication requirements everytime a command is executed
(e.g. driver paths, usernames, passwords, etc.), an alternate set of
default values can be set for most FreeIPMI tools in the FreeIPMI con-
figuration file. See freeipmi.conf(5) for more information.
HPC Support
Much of FreeIPMI was written with HPC support in mind. Ipmi-config(8)
comes with file input/output support so that configuration can be
copied and verified across nodes in a cluster. Most tools (like ip-
mipower(8) and ipmi-sensors(8) ) come with hostrange support so multi-
ple hosts can be specified on the command line at the same time and
IPMI can be executed against the hosts in parallel. See tool manpages
for more information. Also see the document freeipmi-hostrange.txt for
detailed usage and explanation. Ipmi-sensors(8) and the libipmimoni-
toring(3) library support the ability to interpret sensor readings as
well as just reporting them. By mapping sensor readings into NOMINAL,
WARNING, or CRITICAL states, it makes monitoring sensors easier across
large numbers of nodes.
Development
For information on the libraries that can be used to program IPMI ap-
plications with, please see libfreeipmi(3), libipmiconsole(3), libipmi-
monitoring(3), and libipmidetect(3). Or see the document freeipmi-li-
braries.txt.
Project Tools
The following tools are distributed and supported by FreeIPMI.
bmc-info
A tool to read information about a BMC such as device version numbers,
device support, and globally unique IDs (guids).
bmc-watchdog
A tool/daemon to manage a BMC Watchdog. This tool is typically used for
system timeout management and automatic system restarts in the event of
a system crash.
ipmi-chassis
A tool to manage/monitor a chassis, such as chassis power, identifica-
tion (i.e. LED control), and status.
ipmi-fru
A tool to read field replaceable unit (FRU) information from a mother-
board/machine.
ipmi-sel
A tool to read and manage IPMI System Event Log (SEL) records. SEL
records store system event information and may be useful for debugging
problems.
ipmi-sensors
A tool to read IPMI sensor readings and sensor data repository (SDR)
information.
ipmipower
A tool for remote power control.
ipmiconsole
A tool for Serial-over-Lan (SOL) console access.
ipmi-config
A tool to configure BMC and IPMI information. In can be used to config-
ured usernames, passwords, networking information, security, Serial-
over-LAN (SOL), Platform Event Filtering (PEF), boot devices, power
restoration policy, sensor thresholds, sensor events, and many more
configuration options.
ipmi-raw
A tool that provides hex input/output of IPMI commands.
ipmi-locate
A tool that can probe for information about the location of a BMC de-
vice, such as device addresses.
ipmi-pet
A tool to parse and interpret Platform Event Traps (PET).
ipmi-dcmi
A tool to perform Data Center Manageability Interface (DCMI) IPMI ex-
tension commands. Supports extensions for asset management and power
usage management.
bmc-device
A tool to perform advanced BMC commands, such as resetting the BMC,
configuring ACPI, configuring SDR/SEL time, manually generating events,
re-arming sensors, and configuring manufacturer settings.
ipmiping
An IPMI ping tool for debugging.
rmcpping
A RMCP ping tool for debugging.
ipmi-oem
An IPMI tool for OEM specific commands.
ipmidetect/ipmidetectd
A tool and daemon for IPMI node detection.
ipmiseld
A daemon that regularly polls the SEL and stores the events to the lo-
cal syslog.
Additional information, examples, and general trouble-shooting can be
found in each of the tool manpages.
Project Libraries
The following libraries are distributed and supported by FreeIPMI.
libfreeipmi
A C library that includes KCS, SSIF, and OpenIPMI Linux, and Solaris
BMC drivers, IPMI 1.5 and IPMI 2.0 LAN communication interfaces, IPMI
packet building utilities, IPMI command utilities, and utilities for
reading/interpreting/managing IPMI. This library is for programmers in-
timately familiar with the IPMI protocol and IPMI specification. Most
users may wish to use the libraries listed below.
libipmiconsole
A library for Serial-over-Lan (SOL) console access. SOL console access
is abstracted into a file descriptor interface, so users may read and
write console data through a file descriptor.
libipmimonitoring
A library for sensor and system event log (SEL) monitoring that ab-
stracts away most IPMI details. Interpretation of those sensors and
events is abstracted into an API with an iterator interface.
libipmidetect
A library for IPMI node detection.
REPORTING BUGS
Report bugs to <freeipmi-users@gnu.org> or <freeipmi-devel@gnu.org>.
COPYRIGHT
Copyright (C) 2003-2015 FreeIPMI Core Team.
FreeIPMI is free software; you can redistribute it and/or modify it un-
der the terms of the GNU General Public License as published by the
Free Software Foundation; either version 3 of the License, or (at your
option) any later version.
SEE ALSO
libfreeipmi(3), libipmiconsole(3), libipmidetect(3), libipmimonitor-
ing(3), freeipmi.conf(5), bmc-device(8), bmc-info(8), bmc-watchdog(8),
ipmi-chassis(8), ipmi-config(8), ipmi-fru(8), ipmi-locate(8), ipmi-
oem(8), ipmi-pet(8), ipmi-raw(8), ipmi-sel(8), ipmi-sensors(8), ipmi-
console(8), ipmidetect(8), ipmiping(8), ipmipower(8), rmcpping(8)
http://www.gnu.org/software/freeipmi/
FreeIPMI 1.6.4 2019-08-21 FREEIPMI(7)
Man Pages Copyright Respective Owners. Site Copyright (C) 1994 - 2024
Hurricane Electric.
All Rights Reserved.