IPMI light is a free version of IPMI touch. IPMI light is an ideal choice if you only need to monitor a single server or if you are considering IPMI touch and would like to evaluate how it works with your hardware.
|Monitor IPMI-enabled devices remotely via industry standard IPMI-over-LAN protocol right from your iPhone or iPod touch
View Temperature, Fan, Voltage, Current, Power Supply, Battery, Processor, Drive, Interconnect and Security sensor groups
Compatible with IPMI v1.5 and IPMI v2.0 protocols
IPMI v2.0 SHA1 and SHA1/SHA1-96 ciphers for authentication and integrity
IPMI SDR cache for fast sensor status refresh
Configurable network retry and timeout settings
Free application with no ads
Download now from the iPhone App Store
IPMI light is designed to monitor a single server only. For multiple server support, power control functions and ability to see detailed information about the chassis and individual sensors check out IPMI touch.
IPMI light requires devices equipped with
IPMI-compliant management controllers like
DELL DRAC, HP iLO2, IBM RSA, SUN ILOM, Xserve LOM
or similar for proper operation.
i have IMPI light on my iphone 4S (and i’m french). I don’t arrive to use it. Can you explain how to put it on. When i refresh it say: unable to establish LAN session.
Thanks for your help.
I have downloaded and used your app. Well designed and easy to navigate; I like it. This is a great idea, to use IPMI 2.0, which will accommodate many vendors’ servers and provide good security. As sort of a developer myself who is starting to dabble in iphone apps and xcode, I’m curious how difficult it was for you to get the ipmitool c code compiled and working in the xcode environment. I have tried to do this previously, but had a heck of a time with it. Any insight you would be willing to provide on that front would be appreciated. Thanks!!
Thank you for your comment! Making ipmitool work on iPhone was not exactly the easiest thing ever but it was pretty straightforward. There were four major areas of concern that I can think of.
1) Converting ipmitool into Xcode project
Original ipmitool relies on autoconf’s configure script to setup proper compilation variables. This needed to be replicated to get it to compile under xcode. We have looked at several options like calling configure from a custom xcode build step. In the end the simplest way was to execute the configure one time outside of xcode and include the generated config.h in the project.
2) Crypto functions
IPMI protocol needs a variety of crypto functions (from MD5 to AES128 in V2.0). By default ipmitool uses OpenSSL which is not an ideal choice if your target is an iPhone like device. At first, we have got OpenSSL recompiled for ARM. However, vanilla OpenSLL happened to be too CPU intensive on iPhone (not to mention that getting an app approved with OpenSSL included is a big challenge). The solution was to redo the crypto support with Apple’s CommonCrypto framework. As far as I know, many CommonCrypto functions are hardware accelerated on newer i-devices. After the change the app could do 16 simultaneous AES encrypted IPMI V2.0 sessions with no perceivable slowdown.
A big unexpected discovery was that as a command line utility ipmitool was not designed to run ‘clean’ repeatedly without exiting. There are numerous places in the code that use uninitialized variables. A lot of down/close functions do not provide complete clean up. There is a concept of plugins but the implementation uses static variables all over the place so forget running on multiple threads. Time wise this was a big hit. Combing though code looking for statics was not fun at all :).
4) Race conditions
The code had several obscure bugs that were only triggered on a slower platform or when operating on a slow network like GPRS (not a joke, the app is tested and is fully usable even on GPRS network :)). Not a lot of issues but definitely the hardest to deal with. I think we ended up fixing about five different bugs.
Hopefully this can give you a good starting point… Best of luck with your iPhone development, it is a brave new world :)!