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.
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.
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.
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.
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.
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.
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.
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.
Let’s describe the most useful ipmicfg commands:
ipmicfg -help
– get helpipmicfg -m
– shows the current IP and MAC address for the IPMI LAN interfaceipmicfg -k
— shows the subnet maskipmicfg -g
– shows gateway IP addressipmicfg -fd
— resets IPMI to the factory default settingsipmicfg -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
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 interfaceipmicfg -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.
You can view the CPU, memory and fans state in Server Health -> Sensor Readings.
To make it more convenient, you can change sensor categories, e. g., select temperature sensors:
Or voltage sensors:
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
To check the CPU temperature:
# ipmicfg -nm oemgettemp
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
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
To get the information about all sensors: ipmicfg -sdr
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.