ipmi_exporter icon indicating copy to clipboard operation
ipmi_exporter copied to clipboard

Evaluate FreeIPMI alternatives

Open zjkyz8 opened this issue 3 years ago • 6 comments

Hi guys, I have a question about why we use FreeIPMI instead of ipmiutil, as I test, ipmiutil compatibility is better than FreeIPMI, is there any plan to switch from FreeIPMI to ipmiutil, or you can accept a MR about ipmiutil replacement? Thank you very much.

zjkyz8 avatar Mar 16 '21 11:03 zjkyz8

Hi there!

To be honest, I had never heard of ipmiutil before. It is not included in my distro (Arch Linux), the AUR package is apparently broken and unmaintained, so I cannot currently properly test it without putting some more effort into it.

However, the decision for FreeIPMI over e.g. ipmitool was made due to FreeIPMI providing easily machine-readable output. Taking a quick look at the example output at http://ipmiutil.sourceforge.net/man.htm#isensor for example makes me think that ipmiutil does not do very well on that front either.

That said, allowing for different IPMI implementation is something I once considered, so if you can convince me that the ipmiutil can provide at least most of the metrics that are currently supported in a stable, easily-to-parse format then it is something I would consider...

bitfehler avatar Mar 16 '21 16:03 bitfehler

I'm the AUR package maintainer for prometheus-ipmi-exporter and freeipmi and I currently use them both in production, so I have a bit of a vested interest in ensuring that a change like this wouldn't break my current setup.

I would assume that any MRs would just provide the ability to switch between different IPMI backends?

grawlinson avatar Apr 04 '21 10:04 grawlinson

There are also a couple of pure go IPMI client implementation libraries out there now.

SuperQ avatar Apr 04 '21 11:04 SuperQ

There are also a couple of pure go IPMI client implementation libraries out there now.

A quick search turned up https://github.com/k-sone/ipmigo, https://github.com/vmware/goipmi, and https://github.com/shibingli/ipmigod, all which seem to be unmaintained. As IPMI has a lot of quirks, I doubt any of these are a suitable replacement at the moment, but if you think otherwise or know of other implementations I'd be interested.

I would assume that any MRs would just provide the ability to switch between different IPMI backends?

Yes, I don't intend to replace FreeIPMI. Offering choice might be nice, but also only if the effort makes sense.

bitfehler avatar Apr 09 '21 15:04 bitfehler