Computer >> Computer tutorials >  >> System >> Linux

IPMI: Configuring SuperMicro Remote Management Interface

Recently I have had a chance to work with SuperMicro servers that were new to me. SuperMicro servers can be are managed remotely using the IPMI interface. In this article I will try to show basic steps of IPMI configuration and tell about additional tools, commands and methods of SuperMicro server remotely management and monitoring using IPMI.

IPMI (Intelligent Platform Management Interface) provides autonomous monitoring and management interface integrated directly into the server hardware and firmware. IPMI is implemented as a separate server hardware controller independent of an operation system, BIOS or server CPU and allows remote physical hardware management.

SuperMicro IPMI Configuration via BIOS and Web Interface

IPMI configuration starts with setting the IP address of the interface, which must be specified in the BIOS. If the MicroServer is installed on-premise, it may be a private IP address. And if your server is located in public data center, you are likely to use a static public IP address.

On SuperMicro servers, you can access the BIOS by pressing DEL button during the server boot. I will not call any special attention to it. Let’s proceed to the SuperMicro BIOS interface.

IPMI: Configuring SuperMicro Remote Management Interface

As you can see in the screenshot above, I switched to the IPMI menu item and activated LAN configuration for the IPMI interface (Update IPMI Lan Configuration = Yes, Configuration Address Source = Static), specified the IP address, the subnet mask and the gateway IP address.

You can apply the settings by pressing F4, and the server will be restarted.

If you have done it correctly, you will see the authentication window as shown below when you access the IP address specified of your IPMI LAN interface in a browser.

IPMI: Configuring SuperMicro Remote Management Interface

Let’s consider the main IPMI features on SuperMicro server.

When buying a new SuperMicro server, the user ADMIN with the password ADMIN already exists in IPMI configuration, and you can use these credentials to access the IPMI web interface. I always recommend to create a new user and remove the default one or change its password. It is highly insecure to leave the original credentials as they are. You can create a new user or change passwords/privileges of the current users in Configuration -> Users menu.

IPMI: Configuring SuperMicro Remote Management Interface

You can restart the IPMI card in Maintenance -> Unit Reset menu.

You can mount the OS ISO image to install it on your server in Virtual Media -> CD-ROM Image.

IPMI: Configuring SuperMicro Remote Management Interface My ISO images are stored on the Samba server in the same subnet the IPMI server interfaces are located. I specify the Samba server address and a path to the ISO to be mounted, then I mount the ISO and run the installation of the operation system.

You can open the remote graphic Java console of the server (KVM-over-IP) in Remote Control -> Console Redirection.

In general, the IPMI remote console (Java iKVM Viewer) is convenient, but after the OS installation I usually use SSH  access the server. However, there are some situations when it is not possible, for example, if the LAN interface on your server is misconfigured, disabled or there are any problems. Then the Remote Console will help you.

IPMI: Configuring SuperMicro Remote Management Interface

You do not need to set anything in it, but I would like to note that it has an integrated virtual keyboard accessed from Virtual Media -> Virtual Keyboard menu.

IPMI: Configuring SuperMicro Remote Management Interface
Tip. When I have worked with SuperMicro servers for quite a long time, I found one nasty bug. After CentOS 7 and KVM hypervisor installation, you cannot access the Remote Console. While the server is booting, the console responds and you can access the BIOS or see the OS kernel boot messages. But after the operation system has been started, the console view disappears. I managed to fix this bug after a series of experiments. You must add the nomodest option to the Linux kernel boot properties. To do it, run the following command after you have installed your OS:
grubby --args "nomodeset" --update-kernel /boot/vmlinuz-`uname -r`

After that, the Remote Console works correctly.

Using the IPMICFG Tool to Manage a SuperMicro Server

To manage servers via IPMI, SuperMicro has developed its own tool — IPMICFG.

You can download the ipmicfg using the command:

wget ftp://ftp.supermicro.com/utility/IPMICFG/IPMICFG_1.30.0_build.190710.zip

By the time this article had been published, the file had the name specified above, However, I recommend to visit SuperMicro repository here: ftp://ftp.supermicro.com/utility/IPMICFG/ and copy the URL of the actual file version.

Extract the downloaded archive to the current directory:

unzip IPMI*.zip

Then create a symbolic link to run the tool easier:

ln -s /root/IPMI*/Linux/64bit/IPMICFG-Linux.x86_64 /usr/local/sbin/ipmicfg

Now you can start the tool using the ipmicfg command (the symbolic link). Lets consider basic features of ipmicfg.

If you run the ipmicfg -help command, you will see the list of all available switches.

IPMI: Configuring SuperMicro Remote Management Interface

Let’s describe the most useful ipmicfg commands:

  • ipmicfg -help – get help
  • ipmicfg -m – shows the current IP and MAC address for the IPMI LAN interface
  • ipmicfg -k — shows the subnet mask
  • ipmicfg -g – shows gateway IP address
  • ipmicfg -fd — resets IPMI to the factory default settings
  • ipmicfg -user list – shows the created users and their privileges

You can change the IP address, subnet mask and gateway of the IPMI LAN interface:

  • ipmicfg -m 192.168.0.120
  • ipmicfg -k 255.255.255.0
  • ipmicfg -g 192.168.0.1

To create a new IPMI user and set a password:

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

For example:

ipmicfg -user add 6 ipmiusr P@ssw0_d 4

Thus, we have created a user with the name ipmiusr and the password P@ssw0_d having administrator privileges.

You can list IPMI users and their permissions using the commands:

  • ipmicfg -user list
  • ipmicfg -user help

IPMI: Configuring SuperMicro Remote Management Interface

To change (reset) an IPMI user password, use the command:

ipmicfg -user setpwd

Here are some more examples of using the ipmicfg tool:

  • ipmicfg -hostname [value] — sets a hostname for IPMI LAN interface
  • ipmicfg -r — restarts IPMI card

Hardware Monitoring on SuperMicro Servers Using IPMI & IPMICFG

SuperMicro Server Monitoring Using IPMI

It is quite easy to monitor hardware operation of the SuperMicro server using IPMI. You can find full information about your server hardware in System -> Hardware Information.

IPMI: Configuring SuperMicro Remote Management Interface

You can view the CPU, memory and fans state in Server Health -> Sensor Readings.

IPMI: Configuring SuperMicro Remote Management Interface

To make it more convenient, you can change sensor categories, e. g., select temperature sensors:

IPMI: Configuring SuperMicro Remote Management Interface

Or voltage sensors:

IPMI: Configuring SuperMicro Remote Management Interface

Since, there are no hardware issues with our server now, all sensors (temperature, power, etc.) are in the green zone. If the temperature increases or any voltage problems occur, green rectangles will become red and warn you to check your server.

Checking SuperMicro Server Hardware Using IPMICFG

To check the state of power supply units:

# ipmicfg -pminfo

[SlaveAddress = 78h] [Module 1]
Item | Value
---- | -----
Status | [STATUS OK] (00h)
Input Voltage | 217.5 V
Input Current | 1.06 A
Main Output Voltage | 12.28 V
Main Output Current | 17.93 A
Temperature 1 | 22C/73F
Temperature 2 | 23C/70F
Fan 1 | 2064 RPM
Fan 2 | 2032 RPM
Main Output Power | 220 W
Input Power | 228 W
PMBus Revision | 0x22
PWS Serial Number | P2K4FBA022T01321
PWS Module Number | PWS-2K04F-1R
PWS Revision | REV1.0
Current Sharing Control | PEC error
[SlaveAddress = 7Ah] [Module 2]
Item | Value
---- | -----
Status | [STATUS OK] (00h)
Input Voltage | 217.5 V
Input Current | 1.09 A
Main Output Voltage | 12.30 V
Main Output Current | 18.09 A
Temperature 1 | 24C/75F
Temperature 2 | 22C/72F
Fan 1 | 2064 RPM
Fan 2 | 2064 RPM
Main Output Power | 223 W
Input Power | 234 W
PMBus Revision | 0x22
PWS Serial Number | P2K4FBA022T01323
PWS Module Number | PWS-2K04F-1R
PWS Revision | REV1.0
Current Sharing Control | PEC error

IPMI: Configuring SuperMicro Remote Management Interface

To check the CPU temperature:

# ipmicfg -nm oemgettemp

IPMI: Configuring SuperMicro Remote Management Interface

You can also view the fan operation mode and change it if needed. To check the state and configuration of the fan:

# ipmicfg -fan

Current Fan Speed Mode is [ PUE2 Optimal Mode ]
Supported Fan modes:
0:Standard
1:Full
3:PUE2 Optimal
4:Heavy IO

IPMI: Configuring SuperMicro Remote Management Interface

To change the fan operation mode: ipmicfg -fan <mode>

For example: ipmicfg -fan 3

To view the information about IPMI version and firmware:

# ipmicfg -nm deviceid

Device ID = 50h
Firmware Version = 4.1.4.54
IPMI Version = 2.000000
Manufacturer ID = 57 01 00
Product ID Minor Ver = Greenlow platform
Implemented DCMI version = DCMI not implemented/enabled
Firmware implemented version = NM Revision 4.0
Image Flag = operational image 1
raw = 50 01 13 24 02 21 57 12 00 19 0b 34 05 40 01

IPMI: Configuring SuperMicro Remote Management Interface

To get the information about all sensors: ipmicfg -sdr

IPMI: Configuring SuperMicro Remote Management Interface

Here we see some additional columns that display the information on the upper and lower sensor values (limits).

Also, there are a lot of tools you can use for monitoring and make the process automatic, e.g., using Nagios, Zabbix, etc. We won’t describe it here since we consider the main features of IPMI. However, if you are interested in IPMI monitoring, you can leave a comment and perhaps in the future we will cover this topic.