Supermicro IPMI Device Configuration Using IPMICFG

(Is your server not living up to its potential? Order a server from us with promo code PACKETS for 15% off your first invoice)
 
The Intelligent Platform Management Interface (IPMI) is a standard that requires its own processor, besides the main one the system uses, because it works independently in monitoring and maintaining the platform. In most cases, IPMI can continue running even when the main processor is turned off. Do note though that software management is outside IPMI’s scope.

Essentially, IPMI serves as a bridge that relays system information mostly for monitoring purposes. Its maintenance or management functionality is secondary and quite minor. In an effort to expand IPMI capabilities, many companies and organizations have built more extensive management control into IPMI using OEM extensions.

On Supermicro servers, IPMI can be configured either by using an open-source utility called IPMItool or by using BIOS through a VGA console or by using IPMICFG (Supermicro proprietary tool). This article focuses on using IPMICFG. A CLI-based, command-line utility, IPMICFG can be executed on DOS, Windows, and Linux. It provides both standard IPMI and Supermicro proprietary OEM commands for BMC or Filed Replaceable Unit (FRU) configuration. From this tool, you can do the following actions:
  • Set up IPMI IP Address
  • Set up IPMI Configuration
  • Configure IPMI User Management
  • Configure IPMI FRU
  • Manage System Event Log (SEL)


Getting Started

To start, download the latest version of IPMICFG from the SuperMicro site. As of this writing, the latest version can be found HERE.

Unzip the compressed IPMICFG in your environment and add the execution rights for the file:

# chmod +x ipmicfg-linux.x86_64.static

 We recommend creating a symbolic link to make access easier:

 # ln -s $(pwd)/ipmicfg-linux.x86_64.static /usr/local/sbin/ipmicfg

If IPMICFG does not work properly, install the IPMI driver and load it into the kernel. On Linux CentOS, you can do this using the following commands:

# yum -y install OpenIPMI

# service ipmi start

# chkconfig ipmi on


Configuration

 

Configure your network settings so your IPMI device can be managed with a local IPMICFG. You can do using the following steps:

1. Display your current network settings:

# ipmicfg -m

IP=10.10.10.154 MAC=00:25:90:CF:44:7F

# ipmicfg -k

Subnet Mask=255.255.255.0

# ipmicfg -g

Gateway=10.10.10.5

 

2. Configure your IPMI network settings:

# ipmicfg -dhcp off

# ipmicfg -k <NETMASK>

# ipmicfg -m <IP>

# ipmicfg -g <GATEWAY>

 Notes:

    • Disabling DHCP will make the IP address static.
    • In most cases, IPMI network settings should already be pre-configured by your hosting provider.
    • Changing these settings can render your IPMI controller inaccessible.

To check for basic network connectivity to the interface, you can ping the IP address using ping <ipaddr>.

 

IPMI Management Functions

You can use IPMICFG to reset IPMI to the factory default with the following command:

 # ipmicfg -fd

 Note: While this command restores IPMI to factory default, the IPMI network settings will not be changed.

You can also reset IPMI to a factory default that specifically cleans both FRU and local area network (LAN) settings:

# ipmicfg -fde

 

IPMI User Management Functions

With IPMICFG, you can add a new user with the highest level of privilege without touching the main settings. Any user can have administrator rights, but do remember that this is assigned to ‘user 2’ by default.


Begin by accessing the list of pre-configured users:

# ipmicfg -user list

You should see something like this:

Maximum number of Users           : 10
Count of currently enabled Users  : 3

User ID | User Name | Privilege Level | Enable ------- | ----------- | --------------- | ------ 2 | ADMIN | Administrator | Yes 3 | user | Operator | Yes

 

To add a new user, use the following command:

ipmicfg -user add <user id> <user name> <password> <privilege>

Example
# ipmicfg -user add 5 user2 tbu6LrZqp2lqQvZj 4
# ipmicfg -user list


The output user list will be something like this:

Maximum number of Users          : 10
Count of currently enabled Users : 4

User ID | User Name | Privilege Level | Enable ------- | ----------- | --------------- | ------ 2 | ADMIN | Administrator | Yes 3 | user | Operator | Yes 5 | user2 | Administrator | Yes

To set a new password for the ADMIN user, use the following command:

ipmicfg –user setpw <user id> <password>

 Example

# ipmicfg –user setpwd 2 <password>

 You can also opt to delete an unused user place with the following command:

ipmicfg -user del <user id>

 Example 

# ipmicfg -user del 5

Notes:

    • Use another ID instead of 5 for a different user.
    • The Supermicro default login and password is ‘ADMIN’.

 

IPMI Sensor & System Event Management

To monitor SEL in order to spot possible issues like a RAM ECC error, you can use the following command:

# ipmicfg -sel list

Below is an example of the output of said command:

1 | 06/06/2014 | 18:26:16 | Memory | Correctable ECC | Asserted | CPU 0 DIMM 8

Note: This output shows memory modules #8 triggered a correctable ECC error. As the output is a stdout text, a good practice is to use it in a script to monitor overall machine health with words like “error” or “critical” programmed to trigger an alert.

You can monitor hardware components in the sensor list like CPU temperature and fan speed using the following command:

# ipmicfg –sdr

The output will be something like this:

Status | (#)Sensor                       |  Reading   | Low Limit   | High Limit
----- | ---------                     | --------  | --------- | ---------
     OK | (4) CPU1 Temp               |   31C/88F |    0C/32F  |   79C/174F
     OK | (71) CPU2 Temp             |   25C/77F |    0C/32F  |   79C/174F
     OK | (138) System Temp        |   25C/77F |   -5C/23F  |   80C/176F
     OK | (205) Peripheral Temp    |   34C/93F |   -5C/23F  |   80C/176F

 

FRU Management

The FRU contains a serial number and the specifications of the motherboard.

To show the FRU inventory, use the following command:

# ipmicfg -fru help

The inventory will bring up the following FRU fields:

Chassis information

    • CT  ;Chassis Type
    • CP  ;Chassis Part number
    • CS  ;Chassis Serial number

 

Board information

    • BDT ;Board Mfg. Date/Time (YYYYMMDDhhmm)
    • BM  ;Board Manufacturer
    • BPN ;Board Product Name
    • BS  ;Board Serial Name
    • BP  ;Board Part Number

 

Product information

    • PM  ;Product Manufacturer
    • PN  ;Product Name
    • PPM ;Product Part/Model Number
    • PV  ;Product Version
    • PS  ;Product Serial Number
    • PAT ;Asset Tag

 See the examples below on how to pull up specific FRU information:

To get product serial number

# ipmicfg -fru PS

To write product serial number

# ipmicfg -fru PS 123456789

 To setting board manufacturing date and time

# ipmicfg –fru BDT 201211121631

Chassis Type (CT) = Unknown(02h)

Chassis Part number (CP) =

Chassis Serial number (CS) = 0123456789

Board Mfg. Date/Time(BDT) = 2012/11/12 16:31:00 (DF 5D 87)

Board Manufacturer (BM) = Supermicro

Board Product Name (BPN) = X9DRD-iF

Board Serial number (BS) = 0123456789

Board Part number (BP) =

Product Manufacturer (PM) = Supermicro

Product Name (PN) = X9DRD-iF

Product Part/Model number (PPM) =

Product Version (PV) =

Product Serial number (PS) = 0123456789

Product Asset Tag (PAT) =

 

NOTE: We highly discouraging changing the chassis, board, and product serial numbers as they should already be pre-configured by your hosting provider.

 

Troubleshooting

If the IPMI controller hangs, run the following command:

# ipmicfg -r

 You should get this message:

BMC cold reset successfully completed!

Running this command reboots the IPMI controller without rebooting the OS.

If the IPMI controller becomes unreachable, do a full AC cycle by removing the server power cords and reconnecting them back in after one minute. Doi

  • 106 Users Found This Useful
Was this answer helpful?

Related Articles

Advanced Network Troubleshooting: Using traceroute

(Is your server's network not living up to its potential? Order a server from us with promo code...

Advanced Network Troubleshooting: Using Telnet

(Is your server's network not living up to its potential? Order a server from us with promo code...

Advanced Network Troubleshooting: Using My Traceroute (MTR)

(Is your server's network not living up to its potential? Order a server from us with promo code...

Basic Network Troubleshooting

(Is your server's network not living up to its potential? Order a server from us with promo code...

Basic Performance Analysis

(Is your server not living up to its potential? Order a server from us with promo code PACKETS...