Remote server access is an important feature for data centers with off-site computing. Server vendors offer remote management platforms such as Hewlett-Packard's Integrated Lights-Out (iLO) or Dell's Remote Access Card (DRAC) that work well, but each platform has its own management interface which makes it difficult to standardize in a data center environment. That's why IPMI was developed.
The Intelligent Platform Management Interface (IPMI) is a generic interface that administrators can use to monitor the server’s hardware locally or remotely. The generic interface also allows vendors of third-party management tools to develop products that interoperate with IPMI, allowing a fair level of heterogeneous monitoring and management across data centers.
IPMI or proprietary?
If your servers have integrated management platforms like iLO or DRAC, you need an interface to manage them. If you’re happy just opening a telnet session to your server and working with the proprietary commands offered by your chosen brand of server management card, you don’t need IPMI. If you just occasionally open the management console program to monitor your server, IPMI doesn’t really add anything to your environment either. But if you’re using third-party tools that interface with the management card, IPMI can help, even if all your servers are from the same vendor.
In a Linux High Availability (HA) cluster that I installed recently, IPMI really was the only way to get the job done. An essential part of any HA cluster is fencing, using a Linux utility known as STONITH. The fencing mechanism allows the cluster to shut down a failing node so it doesn’t keep running the cluster services before another node takes over. To fence a failing node, server management cards such as ILO or DRAC are frequently used solutions.
The problem with these cards is that the instructions that work for one firmware or hardware version don’t necessarily work for the next version as well. In this particular case, it meant that it was impossible to communicate properly from the cluster to the HP iLO management card. Because IPMI is a standardized way of communicating that works across different brands of hardware, it was the remedy I needed. In environments like HA clusters where not all options of the embedded management card are necessary, IPMI is a much better solution than using the proprietary interface.
There are, of course, examples in which the proprietary interface may be better. This is especially true if you need specific features that aren’t in the IPMI standard yet. The fact that hardware vendors offer an IPMI-type interface to their management cards doesn’t mean that all features on the management cards are also standardized. For a competitive edge, vendors continually add new features that might attract new customers and convince them to switch to their servers from the brand they've been using. Since IPMI is a generic interface to access generic (often basic or low-level) features that you’ll commonly encounter on most management cards, it won’t support the latest and greatest features offered by your server vendor.
For general purposes, IPMI works well and allows you to manage and monitor most of the common parameters. These include parameters like system temperatures, voltages, fans, chassis intrusion, hardware logs and many more. A wide range of manageable parameters is available. These parameters can also be monitored with a network management tools using protocols like Simple Network Management Protocol (SNMP), a standard that is integrated in many data center monitoring and management packages. Even without using SNMP, IPMI can be used by many monitoring and management solutions, which allows you to perform IPMI tasks from the application that you’re already using.
To use IPMI, in general you don’t have to do much. It’s a common feature that’s already available on enterprise-class servers. Some management cards have IPMI support enabled by default so they can access IPMI data out of the box. Other management cards use a firmware setting on the card that needs to be enabled - this is the case for the Dell DRAC, where you just have to switch on the feature in order to use it.
ABOUT THE AUTHOR: Sander van Vugt is an independent trainer and consultant living in the Netherlands. Van Vugt is an expert in Linux high availability, virtualization and performance and has completed several projects that implement all three. Sander is also a regular speaker on many Linux conferences all over the world. He is also the writer of various Linux-related books, such as Beginning the Linux Command Line, Beginning Ubuntu Server Administration and Pro Ubuntu Server Administration.