C H A P T E R 10

Server Management Using IPMI

Topics
Description | Links
--- | ---
Learn about IPMI | About Intelligent Platform Management Interface IPMItool IPMI Alerts IPMI Administrator and Operator Roles
Learn how to configure the IPMI state and how to use IPMItool | Configuring the IPMI State Performing ILOM Tasks Using IPMItool
Learn about the IPMI commands | IPMI Commands

Related Topics
For ILOM | Section | Guide
--- | --- | ---
Concepts | ILOM Overview | Oracle Integrated Lights Out Manager (ILOM) 3.0 Concepts Guide (820-6410)
CLI | CLI Overview | Oracle Integrated Lights Out Manager (ILOM) 3.0 CLI Procedures Guide (820-6412)
Web interface | Web Interface Overview | Oracle Integrated Lights Out Manager (ILOM) 3.0 Web Interface Procedures Guide (820-6411)
SNMP | SNMP Overview | Oracle Integrated Lights Out Manager (ILOM) 3.0 Management Protocols Reference Guide (820-6413)
The ILOM 3.0 Documentation Collection is available at: `http://docs.sun.com/app/docs/prod/int.lights.mgr30#hic`

##

About Intelligent Platform Management Interface

ILOM supports the Intelligent Platform Management Interface (IPMI), which enables you to monitor and control your server platform, as well as to retrieve information about your server platform.

IPMI is an open, industry-standard interface that was designed for the management of server systems over a number of different types of networks. IPMI functionality includes field-replaceable unit (FRU) inventory reporting, system monitoring, logging of system events, system recovery (including system resets and power on and power off capabilities), and alerting.

The monitoring, logging, system recovery, and alerting functions available through IPMI provide access to the manageability that is built into the platform hardware.

ILOM is compliant with IPMI v1.5 and v2.0.

An Oracle-provided Windows port of IPMItool is available at `http://www.sun.com/system-management/tools.jsp`

Additional information, including detailed specifications about IPMI, is available at the following sites:

- `http://www.intel.com/design/servers/ipmi/spec.htm`

- `http://openipmi.sourceforge.net`

The service processors (SPs) on your servers and server modules (blades) are IPMI v2.0 compliant. You can access IPMI functionality through the command line using the `IPMItool` utility either in-band (using the host operating system running on the server) or out-of-band (using a remote system). Additionally, you can generate IPMI-specific traps from the ILOM web interface, or manage the SP’s IPMI functions from any external management solution that is IPMI v1.5 or v2.0 compliant.

### `IPMItool`

`IPMItool` is an open-source, simple command-line interface (CLI) utility for managing and configuring IPMI-enabled devices. `IPMItool` can be used to manage the IPMI functions of either the local system or a remote system. You can use the `IPMItool` utility to perform IPMI functions with a kernel device driver or over a LAN interface. You can download `IPMItool` from this site:

`http://ipmitool.sourceforge.net/`

You can do the following with `IPMItool`:

- Read the Sensor Data Record (SDR) repository.

- Print sensor values.

- Display the contents of the system event log (SEL).

- Print field-replaceable unit (FRU) inventory information.

- Read and set LAN configuration parameters.

- Perform remote chassis power control.

Detailed information about `IPMItool` is provided in a man page that is available from this site:

`http://ipmitool.sourceforge.net/manpage.html`

`IPMItool` supports a feature that enables you to enter ILOM command-line interface (CLI) commands just as though you were using the ILOM CLI directly. CLI commands can be scripted and then the script can be run on multiple service processor (SP) instances.

### IPMI Alerts

ILOM supports alerts in the form of IPMI Platform Event Trap (PET) alerts. Alerts provide advance warning of possible system failures. Alert configuration is available from the ILOM SP on your server or server module .IPMI PET alerts are supported on all Oracle Sun server platforms and modules, with the exception of the chassis monitoring module (CMM). For more information about the types of IPMI alerts, see “Alert Management” in the Oracle Integrated Lights Out Manager (ILOM) 3.0 Concepts Guide.

### IPMI Administrator and Operator Roles

The IPMI Administrator role maps to these user roles in ILOM: `aucro`. The IPMI Operator role maps to these user roles in ILOM: `cro.` A brief explanation of these ILOM roles appears in TABLE 10-1`.`

TABLE 10-1 IPMI Administrator and Operator Roles in ILOM
IPMI Role | Enabled ILOM Role Privileges | Description
--- | --- | ---
Administrator | Admin (a) User Management (u) Console (c) Reset and Host Console (r) Read-Only (o) | These user roles enable read and write privileges to these management features in ILOM: system management configuration properties, user account properties, remote console management properties, remote power management properties, and reset and host control management properties.
Operator | Console (c) Reset and Host Console (r) Read-Only (o) | These user roles enable read and write privileges to these management features in ILOM: remote console management properties, remote power management properties, and reset and host control management properties. The Read-Only role also provides read-access to system management configuration properties and user management properties.

For more information about ILOM roles and privileges, see the chapter about User Management in the Oracle Integrated Lights Out Manager (ILOM) 3.0 Concepts Guide (820-6410).

##

Configuring the IPMI State

You can enable or disable the IPMI state using either the CLI or the web interface.

Topics |
--- | ---
Description | Links
Enable the IPMI state | Before You Begin Enable IPMI State Using the CLI Enable IPMI State Using the Web Interface

### Before You Begin

- To enable the IPMI state using the ILOM CLI or web interface, you need to have IPMI Administrator privileges enabled in ILOM. For more information, see IPMI Administrator and Operator Roles.

### Enable IPMI State Using the CLI

1. Log in to the ILOM CLI.

2. At the command prompt, type:

-> `set /SP/services/ipmi servicestate=enabled`

    -> set /SP/services/ipmi servicestate=enabled
    Set ‘servicestate’ to ‘enabled’

### Enable IPMI State Using the Web Interface

1. Log in to the ILOM web interface.

2. Select Configuration --> System Management Access --> IPMI.

The IPMI Settings page appears.

3. Click the check box to enable or disable the IPMI state.

##

Using IPMItool to Run ILOM CLI Commands

The IPMItool CLI is a convenient alternative method to executing ILOM CLI commands. It enables you to enter ILOM CLI commands just as if you were using the ILOM CLI directly. Most ILOM CLI commands are supported.

Topics |
--- | ---
Description | Links
Use ipmitool to run CLI commands | Access the ILOM CLI From IPMItool Script ILOM CLI Commands With IPMItool

### Before You Begin

- To use the ILOM CLI through `ipmitool`, you must be using `ipmitool` version 1.8.9.4 or later. To check the version number of `ipmitool`, type `ipmitool -V`.

- Ensure that you have the proper user roles assigned in ILOM when using the IPMItool CLI to execute ILOM commands. For more information, see IPMI Administrator and Operator Roles.

### Access the ILOM CLI From IPMItool

1. To enable the ILOM CLI using IPMItool, type:

`#` `ipmitool -H` hostname`-U` username`-P` userpassword `sunoem cli`

The ILOM CLI prompt appears as follows:

    Connected. Use ^D to exit.
    ->

2. To use the CLI, type CLI commands.

### Script ILOM CLI Commands With IPMItool

A key benefit of using ILOM CLI from IPMItool is that the CLI commands can be scripted and then the script can be run on multiple SP instances. Scripting is possible because the CLI commands can be included on the IPMItool command line where each argument on the command line is treated as a separate ILOM CLI command. Command separation is archived by including quotation marks at the beginning and end of each ILOM CLI command. The following example shows how to include two CLI commands on the `ipmitool` command line. In the example, notice that each ILOM CLI command begins and ends with quotation marks.

    # ipmitool -H hostname -U username -P userpassword sunoem cli “show /SP/services” “show /SP/logs”
    Connected. Use ^D to exit.
    -> show /SP/services
    /SP/services
        Targets:
            http
            https
            servicetag
            snmp
            ssh
            sso

        Properties:

        Commands:
            cd
            show

    -> show /SP/logs
     /SP/logs
        Targets:
            event

        Properties:

        Commands:
            cd
            show

    ->Session closed
    Disconnected

##

Performing ILOM Tasks Using IPMItool

Topics
Description | Links
--- | ---
Perform various ILOM functions using IPMItool | View a List of Sensors and Their Values View Details About a Single Sensor Power On the Host Power Off the Host Power Cycle the Host Set Power-Limit Budget Activation State Get Power-Limit Budget Wattage Set Power-Limit Budget Wattage Shut Down the Host Gracefully Set Power-Limit Budget Activation State Get Power-Limit Budget Wattage Set Power-Limit Budget Wattage View Manufacturing Information for FRUs View the System Event Log

### Before You Begin

- Ensure that you have the proper user roles assigned in ILOM when using the IPMItool CLI to execute ILOM commands. For more information, see IPMI Administrator and Operator Roles.

### View a List of Sensors and Their Values

    $ ipmitool -H 1.2.3.4 -I lanplus -U username -P userpassword sdr list
    /SYS/T_AMB       | 24 degrees C      		 	 	| ok
    /RFM0/FAN1_SPEED | 7110 RPM          | ok
    /RFM0/FAN2_SPEED | 5880 RPM          | ok
    /RFM1/FAN1_SPEED | 5880 RPM          | ok
    /RFM1/FAN2_SPEED | 6360 RPM          | ok
    /RFM2/FAN1_SPEED | 5610 RPM          | ok
    /RFM2/FAN2_SPEED | 6510 RPM          | ok
    /RFM3/FAN1_SPEED | 6000 RPM          | ok
    /RFM3/FAN2_SPEED | 7110 RPM          | ok
    /RFM4/FAN1_SPEED | 6360 RPM          | ok
    /RFM4/FAN2_SPEED | 5610 RPM          | ok
    /RFM5/FAN1_SPEED | 5640 RPM          | ok
    /RFM5/FAN2_SPEED | 6510 RPM          | ok
    /RFM6/FAN1_SPEED | 6180 RPM          | ok
    /RFM6/FAN2_SPEED | 6000 RPM          | ok
    /RFM7/FAN1_SPEED | 6330 RPM          | ok
    /RFM7/FAN2_SPEED | 6330 RPM          | ok
    /RFM8/FAN1_SPEED | 6510 RPM          | ok
    /RFM8/FAN2_SPEED | 5610 RPM          | ok

Note - If `bimetal` is not configured to support the `-P` option, which enables the password to be entered in the command line, you will be prompted to enter the password.

Note - The above output was shortened. The actual output displays 163 sensors.

### View Details About a Single Sensor

    $ ipmitool -H 1.2.3.4 -v -I lanplus -U username -P userpassword sensor get /SYS/T_AMB
    Locating sensor record...
    Sensor ID              : /SYS/T_AMB (0x8)
     Entity ID             : 41.0
     Sensor Type (Analog)  : Temperature
     Sensor Reading        : 24 (+/- 0) degrees C
     Status                : ok
     Lower Non-Recoverable : 0.000
     Lower Critical        : 4.000
     Lower Non-Critical    : 10.000
     Upper Non-Critical    : 35.000
     Upper Critical        : 40.000
     Upper Non-Recoverable : 45.000
     Assertions Enabled    : lnc- lcr- lnr- unc+ ucr+ unr+
     Deassertions Enabled  : lnc- lcr- lnr- unc+ ucr+ unr+

### Power On the Host

    $ipmitool -H 1.2.3.4 -v -I lanplus -U username -P userpassword chassis power on

### Power Off the Host

    $ ipmitool -H 1.2.3.4 -v -I lanplus -U username -P userpassword chassis power off

### Power Cycle the Host

    $ ipmitool -H 1.2.3.4 -v -I lanplus -U username -P userpassword chassis power cycle

### Shut Down the Host Gracefully

    $ ipmitool -H 1.2.3.4 -v -I lanplus -U username -P userpassword chassis power soft

### Set Power-Limit Budget Activation State

Note - The power-limit budget activation state commands described below enable you to set the activation-state for the power management budget interfaces.

- IPMI command to activate the power-limit budget state:

    $ ipmitool -H <localhost|IP address> -U <username> -P <password> raw 0x2e 0x49 0x00 0x01 0xFF 0xFF

    dc

- IPMI command to deactivate the power-limit budget state:

    $ ipmitool -H <localhost|IP address> -U <username> -P <password> raw 0x2e 0x49 0x00 0x00 0xFF 0xFF

    dc

TABLE 10-2 identifies the byte order and the field format that is used to activate or deactivate the state for the power-limit budget property.

TABLE 10-2 Byte Order and Field Format - Power-Limit Budget Activation State
| Byte | Data Fields:
--- | --- | ---
Request Data | 1 | Sun OEM command group number “0x2e”.
2 | Command code “0x49” sets the power-limit activation state.
3 | Group extension identification “0x00”. The value for this field is ignored.
4 | Sub-commands for power-limit activation: 0x00 - Deactivate Power Limit 0x01 - Activate Power Limit
5-6 | Reserved fields: 0xFF. The values for this field are ignored.
Response Data | 1 | Completion code consumed by ipmitool. The system does not display a status for successful completion code. However, if the result of the completion code is anything other than 'successful', a failure message appears.
2 | Group extension identification “`dc”` appears upon command completion.

### Get Power-Limit Budget Wattage

Note - It is recommended to do a Get Power Limit Budget Wattage command prior to setting the power-limit budget wattage property.

    $ ipmitool -H <localhost|IP address> -U <username> -P <password> raw 0x2e 0x4A 0x00 0x00 0x00

    dc 01 b3 00 02 fa 00 00 00 00 01 e9 00 00

TABLE 10-3 identifies the byte order and the field format that is used to obtain the power limit budget wattage property.

TABLE 10-3 Byte Order and Field Format - Get Power Limit Budget Wattage
| Byte | Data Field
--- | --- | ---
Request Data | 1 | SUN OEM command group number “0x2e.”
2 | Command code “0x4A” gets Power Budget settings
3 | Group extension identification: 0x00. The value for this field is ignored.
4-5 | Reserved fields: `0x00`. Values for this field are ignored.
Response Data | 1 | Completion code that is consumed by ipmitool. The system does not display a status for successful completion code. However, if the result of the completion code is anything other than 'successful', a failure message appears.
2 | Group extension identification “`dc”` appears upon command completion.
3 | Activation State. 00 - deactivated 01 - activated
4 | Reserved field: `b3`. The value for this field can be ignored.
5 | Exception action is taken if the power limit is exceeded and is unable to be controlled within the correction time limit. 00 - none 01 - hard power-off
6-7 | Power limit in watts: `02` `fa`
8-11 | Correction timelimit in milliseconds: 00 00 00 00.
12 | A flag to indicate whether the correction timelimit is the system default timelimit. 00 - not default. 01 - default.
| 13 | Reserved field: `e9`. The value for this field can be ignored..
| 14-15 | Reserved fields: "00 00". The value for this field can be ignored.

### Set Power-Limit Budget Wattage

Note - The set power limit commands sets the power limit budget wattage for the system. You should use this command to set the upper limit of system power usage. However, you should not use this command as an interface for dynamic or frequently changing power limit. The power limit set should always be persistent across AC and DC cycles.

    $ ipmitool -H <localhost|IP address> -U <username> -P <password> raw 0x2e 0x4B 0xdc 0xff 0xff 0xff 0x01 0x02 0xaa 0x00 0x00 0x1b 0x58 0x00 0xff 0x00 0x00
    dc

TABLE 10-4 identifies the byte order and the field format that is used to set the power limit budget wattage property.

TABLE 10-4 Byte Order and Field Format - Set Power Limit Budget Wattage
| Byte | Data Field
--- | --- | ---
Request Data | 1 | SUNOEM command group number: `0x2e`
2 | Command code `0x4B` sets power budget settings
3 | Group extension identification: `0xdc.` The value for this field is ignored.
4-6 | Reserved fields: `0xff` `0xff` `0xff`. The values for this field are ignored.
7 | Exception action taken: 00 - none 01 - hard power-off
8-9 | Power limit in watts. For example: `0x2a` `0xaa`
| 10-13 | Correction time limit in milliseconds. For example: "0x00 0x00 0x1b 0x58". This value is ignored if timelimit is set to default, see next byte.
14 | A flag indicating whether to use the system default timelimit. Correction timelimit in bytes 10-13 will be ignored. 0x00 - not default 0x01 - default
15 | Reserved field: `0xff`. The value for this field is ignored.
16-17 | Reserved field: `0x00` `0x00`. The value for this field is ignored.
Response Data | 1 | Completion code that is consumed by ipmitool. The system does not display a status for successful completion code. However, if the result of the completion code is anything other than successful, a failure message appears.
2 | Group extension identification “`dc”` appears upon command completion.

### View Manufacturing Information for FRUs

    $ ipmitool -H 1.2.3.4 -v -I lanplus -U username -P userpassword fru print
    FRU Device Description : Builtin FRU Device (ID 0)
     Board Product         : ASSY,ANDY,4SKT_PCI-E,BLADE
     Board Serial          : 0000000-7001
     Board Part Number     : 501-7738-01
     Board Extra           : AXX_RevE_Blade
     Product Manufacturer  : ORACLE
     Product Name          : ILOM

    FRU Device Description : /SYS (ID 4)
     Chassis Type          : Rack Mount Chassis
     Chassis Part Number   : 541-0251-05
     Chassis Serial        : 00:03:BA:CD:59:6F
     Board Product         : ASSY,ANDY,4SKT_PCI-E,BLADE
     Board Serial          : 0000000-7001
     Board Part Number     : 501-7738-01
     Board Extra           : AXX_RevE_Blade
     Product Manufacturer  : ORACLE
     Product Name          : SUN BLADE X8400 SERVER MODULE
     Product Part Number   : 602-0000-00
     Product Serial        : 0000000000
     Product Extra         : 080020ffffffffffffff0003baf15c5a

    FRU Device Description : /P0 (ID 5)
     Product Manufacturer  : ADVANCED MICRO DEVICES
     Product Part Number   : 0F21
     Product Version       : 2

    FRU Device Description : /P0/D0 (ID 6)
     Product Manufacturer  : MICRON TECHNOLOGY
     Product Name          : 1024MB DDR 400 (PC3200) ECC
     Product Part Number   : 18VDDF12872Y-40BD3
     Product Version       : 0300
     Product Serial        : D50209DA
     Product Extra         : 0190
     Product Extra         : 0400

    FRU Device Description : /P0/D1 (ID 7)
     Product Manufacturer  : MICRON TECHNOLOGY
     Product Name          : 1024MB DDR 400 (PC3200) ECC
     Product Part Number   : 18VDDF12872Y-40BD3
     Product Version       : 0300
     Product Serial        : D50209DE
     Product Extra         : 0190
     Product Extra         : 0400

### View the System Event Log

    $ ipmitool -H 1.2.3.4 -I lanplus -U username -P userpassword sel list
     100 | Pre-Init Time-stamp   | Power Unit #0x78 | State Deasserted
     200 | Pre-Init Time-stamp   | Power Supply #0xa2 | Predictive Failure Asserted
     300 | Pre-Init Time-stamp   | Power Supply #0xba | Predictive Failure Asserted
     400 | Pre-Init Time-stamp   | Power Supply #0xc0 | Predictive Failure Asserted
     500 | Pre-Init Time-stamp   | Power Supply #0xb4 | Predictive Failure Asserted
     600 | 04/05/2007 | 12:03:24 | Power Supply #0xa3 | Predictive Failure Deasserted
     700 | 04/05/2007 | 12:03:25 | Power Supply #0xaa | Predictive Failure Deasserted
     800 | 04/05/2007 | 12:03:25 | Power Supply #0xbc | Predictive Failure Deasserted
     900 | 04/05/2007 | 12:03:26 | Power Supply #0xa2 | Predictive Failure Asserted
     a00 | 04/05/2007 | 12:03:26 | Power Supply #0xa8 | Predictive Failure Deasserted
     b00 | 04/05/2007 | 12:03:26 | Power Supply #0xb6 | Predictive Failure Deasserted
     c00 | 04/05/2007 | 12:03:26 | Power Supply #0xbb | Predictive Failure Deasserted
     d00 | 04/05/2007 | 12:03:26 | Power Supply #0xc2 | Predictive Failure Deasserted
     e00 | 04/05/2007 | 12:03:27 | Power Supply #0xb0 | Predictive Failure Deasserted
     f00 | 04/05/2007 | 12:03:27 | Power Supply #0xb5 | Predictive Failure Deasserted
    1000 | 04/05/2007 | 12:03:27 | Power Supply #0xba | Predictive Failure Asserted
    1100 | 04/05/2007 | 12:03:27 | Power Supply #0xc0 | Predictive Failure Asserted
    1200 | 04/05/2007 | 12:03:28 | Power Supply #0xa9 | Predictive Failure Deasserted
    1300 | 04/05/2007 | 12:03:28 | Power Supply #0xae | Predictive Failure Deasserted
    1400 | 04/05/2007 | 12:03:28 | Power Supply #0xb4 | Predictive Failure Asserted
    1500 | 04/05/2007 | 12:03:28 | Power Supply #0xbe | Predictive Failure Deasserted

##

IPMI Commands

You can download the IPMItool utility at:

`http://ipmitool.sourceforge.net/`

After you install the IPMItool package, you can access detailed information about command usage and syntax from the man page that is installed. The following table summarizes available IPMItool commands.

TABLE 10-5 IPMItool commands
IPMI Command | Function
--- | ---
`sunoem sshkey set` | Configure an SSH key for a remote shell user.
`ipmitool sunoem sshkey del` | Remove an SSH key from a remote shell user.
`ipmitool sunoem led get` | Read LED status.
`ipmitool sunoem led set` | Set LED status.
`ipmitool sunoem cli` | Enter ILOM CLI commands as if you were using the ILOM CLI directly. The LAN/LANplus interface should be used.
ipmitool sunoem CLI force | Available as of ILOM 3.0.10, a force option can be invoked as an argument to the sunoem CLI command.
`ipmitool raw` | Execute raw IPMI commands.
`ipmitool lan print` | Print the current configuration for the given channel.
`ipmitool lan set (1) (2)` | Set the given parameter on the given channel.
`ipmitool chassis status` | Display information regarding the high-level status of the system chassis and main power subsystem.
`ipmitool chassis power` | Perform a chassis control command to view and change the power state.
`ipmitool chassis identify` | Control the front panel identify light. Default is 15. Use 0 to turn off.
`ipmitool chassis restart_cause` | Query the chassis for the cause of the last system restart.
`ipmitool chassis bootdev (1)` | Request the system to boot from an alternate boot device on next reboot.
`ipmitool chassis bootparam (1)` | Set the host boot parameters.
`ipmitool chassis selftest` | Display the BMC Self Test results.
`ipmitool power` | Return the BMC Self Test results.
`ipmitool event` | Send a predefined event to the system event log.
`ipmitool mc (1) (2)` | Instruct the BMC to perform a warm or cold reset.
`ipmitool sdr` | Query the BMC for sensor data records (SDR) and extract sensor information of a given type, then query each sensor and print its name, reading, and status.
`ipmitool sensor` | List sensors and thresholds in a wide table format.
`ipmitool fru print` | Read all field-replaceable unit (FRU) inventory data and extract such information as serial number, part number, asset tags, and short strings describing the chassis, board, or product.
`ipmitool sel` | View the ILOM SP system event log (SEL).
`ipmitool pef info` | Query the BMC and print information about the PEF supported features.
`ipmitool pef status` | Print the current PEF status (the last SEL entry processed by the BMC, etc).
`ipmitool pef list` | Print the current PEF status (the last SEL entry processed by the BMC, etc).
`ipmitool user` | Display a summary of userid information, including maximum number of userids, the number of enabled users, and the number of fixed names defined.
`ipmitool session` | Get information about the specified session(s). You can identify sessions by their ID, by their handle number, by their active status, or by using the keyword “all” to specify all sessions.
`ipmitool firewall (1)` | Enable/disable individual command and command sub-functions; determine which commands and command sub-functions can be configured on a given implementation.
`ipmitool set (1)` | Set the runtime options including session host name, user name, password and privilege level.
`ipmitool exec` | Execute IPMItool commands from file name. Each line is a complete command.

Copyright © 2010, Oracle and/or its affiliates. All rights reserved.