[openstack-dev] [Nova] [Ironic] Get power and temperature via IPMI

Gao, Fengqian fengqian.gao at intel.com
Thu Dec 19 03:16:36 UTC 2013

Hi, Devananda,
I agree with you that new features should be towards Ironic.
As you asked why use Ironic instead of lm-sensors, actually I just want to use IPMI instead of lm-sensors. I think it is reasonable to put the IPMI part into Ironic and we already did:).

To get the sensors' information, I think IPMI is much more powerful than lm-sensors.
Firstly, IPMI is flexible.  Generally speaking, it provides two kinds of connections, in-bind and out-of-band.
Out-of-band connection allows us to get sensors' status even without OS and CPU.
In-band connection is quite similar to lm-sensors, It needs the OS kernel to get sensor data.
Secondly,  IPMI can gather more sensors' information that lm-sensors and it is easy to use. From my own experience, using IPMI can get all the sensor information that lm-sensors could get, such as temperature/voltage/fan. Besides that, IPMI can get power data and some OEM specific sensor data.
Thirdly, I think IPMI is a common spec for most of OEMs.  And most of servers are integrated with IPMI interface.

As you sais, nova-compute is already supplying information to the scheduler and power/temperature should be gathered locally.  IPMI can be used locally, the in-band connection. And there is a lot of open source library, such as OpenIPMI, FreeIPMI, which provide the interfaces to OS, just like lm-sensors.
So, I prefer to use IPMI than lm-sensors. Please leave your comments if you disagree:).

Best wishes


From: Devananda van der Veen [mailto:devananda.vdv at gmail.com]
Sent: Thursday, December 19, 2013 3:00 AM
To: OpenStack Development Mailing List (not for usage questions)
Subject: Re: [openstack-dev] [Nova] [Ironic] Get power and temperature via IPMI

On Tue, Dec 17, 2013 at 10:00 PM, Gao, Fengqian <fengqian.gao at intel.com<mailto:fengqian.gao at intel.com>> wrote:
Hi, all,
I am planning to extend bp https://blueprints.launchpad.net/nova/+spec/utilization-aware-scheduling with power and temperature. In other words, power and temperature can be collected and used for nova-scheduler just as CPU utilization.
I have a question here. As you know, IPMI is used to get power and temperature and baremetal implements IPMI functions in Nova. But baremetal driver is being split out of nova, so if I want to change something to the IPMI, which part should I choose now? Nova or Ironic?


A few thoughts... Firstly, new features should be geared towards Ironic, not the nova baremetal driver as it will be deprecated soon (https://blueprints.launchpad.net/nova/+spec/deprecate-baremetal-driver). That being said, I actually don't think you want to use IPMI for what you're describing at all, but maybe I'm wrong.

When scheduling VMs with Nova, in many cases there is already an agent running locally, eg. nova-compute, and this agent is already supplying information to the scheduler. I think this is where the facilities for gathering power/temperature/etc (eg, via lm-sensors) should be placed, and it can reported back to the scheduler along with other usage statistics.

If you think there's a compelling reason to use Ironic for this instead of lm-sensors, please clarify.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20131219/9cab19ce/attachment.html>

More information about the OpenStack-dev mailing list