Restarting an IBM BMC without restarting the server itself

I have a few servers with IBM BMC (Baseboard Management Controller). I'd like to power cycle the BMC without restarting the server. Is this possible? How?

Note: On one of them, the web interface is down; so I'd need to either do this by physically restarting the BMC (not sure how to do this - even the power button on the server isn't supposed to recycle the BMC, I believe) or via the UDP or SNMP interface (again, not sure how to do that either)


Solution 1:

The simplest way is if you can log onto the server, run as root:

# ipmitool bmc reset cold

Solution 2:

If you can't connect to the BMC via web, ssh, IPMI, telnet, or other connection mechanism that you have configured, then the only way to reset the BMC for sure is to power the computer down and then pull the power inputs. Many BMCs (or iLO or eLOM or whatever) don't reset themselves when the computer reboots or powers off.

Solution 3:

For anyone with a similar issue, here is the ipmiutil command for issuing a cold reset on the BMC without rebooting the server:

ipmiutil reset -k

I personally use ipmiutil over ipmitool when possible as it can run without IPMI drivers installed. I have had several instances where the Linux IPMI modules locked up due an issue with the BMC. This prevented ipmitool from running but I was still able to use ipmiutil in "driverless mode", which it reverts to automatically. The only downside is that, unlike ipmitool, ipmiutil is most likely not already installed. It should be available to install using the yum/apt-get repos included with most distros though.