[openstack-dev] [Nova] Power/temperature monitors for scheduler

2014-01-22 Thread Gao, Fengqian
Hi, all,

I would like to propose adding power/temperature monitors in Nova for the 
scheduler. I builded a wiki to record the design notes,
https://wiki.openstack.org/wiki/User_talk:Fengqian#Why_and_how_to_use_Intel_Node_Manager_in_Openstack
Please help to review the following patches if you are interested.

Add node manager to read power/temperature of compute node
https://review.openstack.org/#/c/65631/

Added temperature monitor for compute node
https://review.openstack.org/#/c/64403/

Added power monitor for compute node
https://review.openstack.org/#/c/64404/


Many thanks for considering my request.

Thanks

--fengqian
___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [Nova] Power/temperature monitors for scheduler

2014-01-22 Thread Gao, Fengqian
For the ceilometer part, it seems have overlap, but I am not sure about Nova 
part. IIUC, Nova doesn't collect power/temperature for now.

Thanks

--fengqian
-Original Message-
From: Tim Bell [mailto:tim.b...@cern.ch] 
Sent: Thursday, January 23, 2014 2:21 PM
To: OpenStack Development Mailing List (not for usage questions)
Subject: Re: [openstack-dev] [Nova] Power/temperature monitors for scheduler

Is there overlap with https://launchpad.net/kwapi and 
https://blueprints.launchpad.net/ironic/+spec/send-data-to-ceilometer ?

Tim

From: Gao, Fengqian [mailto:fengqian@intel.com]
Sent: 23 January 2014 06:25
To: openstack-dev@lists.openstack.org
Subject: [openstack-dev] [Nova] Power/temperature monitors for scheduler

Hi, all,

I would like to propose adding power/temperature monitors in Nova for the 
scheduler. I builded a wiki to record the design notes, 
https://wiki.openstack.org/wiki/User_talk:Fengqian#Why_and_how_to_use_Intel_Node_Manager_in_Openstack
Please help to review the following patches if you are interested.

Add node manager to read power/temperature of compute node 
https://review.openstack.org/#/c/65631/

Added temperature monitor for compute node 
https://review.openstack.org/#/c/64403/

Added power monitor for compute node
https://review.openstack.org/#/c/64404/


Many thanks for considering my request.

Thanks

--fengqian

___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [ ceilometer] The Pagination patches

2014-01-16 Thread Gao, Fengqian
Hi, Jay,

Thanks for your reply.
According to you review comments, I rebase my code, please see my comments for 
your questions.
For the issue that ensure there is at least one unique column in the sort keys 
if pagination is used, I have an idea.
How about add the primary key at the end of sort keys list passed from users?

Thanks

--fengqian

-Original Message-
From: Jay Pipes [mailto:jaypi...@gmail.com] 
Sent: Monday, January 13, 2014 5:10 AM
To: Gao, Fengqian
Cc: Julien Danjou (jul...@danjou.info); Doug Hellmann 
(doug.hellm...@dreamhost.com); Lu, Lianhao; chu...@ca.ibm.com; 
dper...@linux.vnet.ibm.com; akornie...@mirantis.com; 
openstack-dev@lists.openstack.org
Subject: Re: [openstack-dev][ ceilometer] The Pagination patches

On Fri, 2014-01-10 at 03:31 +, Gao, Fengqian wrote:
 Since we still have no new conclusion for pagination for now, shall we 
 still go on with the current pagination solution?
 
 Please help to review patches:
 
 https://review.openstack.org/#/c/41869/
 https://review.openstack.org/#/c/35454/

Hi Fengqian,

Please see my review on the first of the above patches. You need to ensure that 
there is at least one unique column in the sort keys if pagination is used.

There is a similar issue in the second patch (reviewing it now) that uses the 
sqlalchemy_utils (oslo.db) paginate_query() method...

The sqlalchemy_utils.paginate_query() method **requires** that sort_keys 
contains a unique column [1]. The docstring for that method says:

Pagination works by requiring a unique sort_key, specified by sort_keys. (If 
sort_keys is not unique, then we risk looping through values.)

So, care must be taken to pass sort_keys parameter to paginate_query() that 
already contains at least one unique column in the sort keys.

Best,
-jay

[1]
https://github.com/openstack/oslo-incubator/blob/master/openstack/common/db/sqlalchemy/utils.py#L66


___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


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

2013-12-22 Thread Gao, Fengqian
Hi, Pradipta,
From personal experience,  I think lm-sensors is not good as IPMI. I have to 
configure it manually and the sensor data it could get also less than IPMI.
So, I prefer to use IPMI. Did you use it before? Maybe you can share your 
experience.

Best wishes

--fengqian

From: Pradipta Banerjee [mailto:bprad...@yahoo.com]
Sent: Friday, December 20, 2013 10:52 PM
To: openstack-dev@lists.openstack.org
Subject: Re: [openstack-dev] [Nova] [Ironic] Get power and temperature via IPMI

On 12/19/2013 12:30 AM, Devananda van der Veen wrote:
On Tue, Dec 17, 2013 at 10:00 PM, Gao, Fengqian 
fengqian@intel.commailto:fengqian@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.
This is a good idea and have definite use cases where one might want to 
optimize provisioning based on power consumption

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?


Hi!

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.
+1

Using lm-sensors or equivalent seems better.
Have a look at the following blueprint
https://blueprints.launchpad.net/nova/+spec/extensible-resource-tracking


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

Cheers,
Devananda





___

OpenStack-dev mailing list

OpenStack-dev@lists.openstack.orgmailto:OpenStack-dev@lists.openstack.org

http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev




--

Regards,

Pradipta
___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


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

2013-12-19 Thread Gao, Fengqian
Hi, Devananda,
Thanks for your reply.
I totally agree with your thought, nova-compute could gathering such 
information locally. And I think IPMI, using in-band connection, might be more 
suitable to be used to collect these sensor data.
At the beginning, I thought it would better to put all IPMI part together in 
Ironic while there is part of code over there.  Now, it looks like that  I 
thought too much:).

In all, power and temperature could be collected by IPMI locally in 
nova-compute.


Best wishes
--fengqian
From: Devananda van der Veen [mailto:devananda@gmail.com]
Sent: Friday, December 20, 2013 3:42 AM
To: OpenStack Development Mailing List (not for usage questions)
Subject: Re: [openstack-dev] [Nova] [Ironic] Get power and temperature via IPMI

On Wed, Dec 18, 2013 at 7:16 PM, Gao, Fengqian 
fengqian@intel.commailto:fengqian@intel.com wrote:
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:).


I see nothing wrong with nova-compute gathering such information locally. 
Whether you use lm-sensors or in-band IPMI is an implementation detail of how 
nova-compute would gather the information.

However, I don't see how this has anything to do with Ironic or the 
nova-baremetal driver. These would gather information remotely (using 
out-of-band IPMI) for hardware controlled and deployed by these services. In 
most cases, nova-compute is not deployed by nova-compute (exception: if you're 
running TripleO).

Hope that helps,
-Deva
___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


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

2013-12-19 Thread Gao, Fengqian
Yes, Alan, you got me.
Providing power/temperature to scheduler, set threshold or different weight, 
then the scheduler can boot VM on the most suitable node.

Thanks

--fengqian

From: Alan Kavanagh [mailto:alan.kavan...@ericsson.com]
Sent: Friday, December 20, 2013 11:58 AM
To: OpenStack Development Mailing List (not for usage questions)
Subject: Re: [openstack-dev] [Nova] [Ironic] Get power and temperature via IPMI

Cheers Gao

It definitely makes sense to collect additional metrics such as power and 
temperature, and make that available for selective decisions you would want to 
take. However, I am just wondering if you could realistically feed those 
metrics as variables for scheduling, this is the main part I feel is 
questionable. I assume then you would use temperature || power etc to gauge if 
you want to schedule another VM on a given node when a given temperature 
threshold is reached. Is this the main case you are thinking of Gao?

Alan

From: Gao, Fengqian [mailto:fengqian@intel.com]
Sent: December-18-13 10:23 PM
To: OpenStack Development Mailing List (not for usage questions)
Subject: Re: [openstack-dev] [Nova] [Ironic] Get power and temperature via IPMI

Hi, Alan,
I think, for nova-scheduler it is better if we gather more information.  And In 
today's DC, power and temperature are very important facts to considering.
CPU/Memory utilization is not enough to describe nodes' status. Power/inlet 
temperature should be noticed.

Best Wishes

--fengqian

From: Alan Kavanagh [mailto:alan.kavan...@ericsson.com]
Sent: Thursday, December 19, 2013 2:14 AM
To: OpenStack Development Mailing List (not for usage questions)
Subject: Re: [openstack-dev] [Nova] [Ironic] Get power and temperature via IPMI

Hi Gao

What is the reason why you see it would be important to have these two 
additional metrics power and temperature for Nova to base scheduling on?

Alan

From: Gao, Fengqian [mailto:fengqian@intel.com]
Sent: December-18-13 1:00 AM
To: openstack-dev@lists.openstack.orgmailto:openstack-dev@lists.openstack.org
Subject: [openstack-dev] [Nova] [Ironic] Get power and temperature via IPMI

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?


Best wishes

--fengqian

___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


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

2013-12-18 Thread Gao, Fengqian
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

--fengqian


From: Devananda van der Veen [mailto:devananda@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@intel.commailto:fengqian@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?


Hi!

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.

Cheers,
Devananda

___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


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

2013-12-18 Thread Gao, Fengqian
Hi, Alan,
I think, for nova-scheduler it is better if we gather more information.  And In 
today's DC, power and temperature are very important facts to considering.
CPU/Memory utilization is not enough to describe nodes' status. Power/inlet 
temperature should be noticed.

Best Wishes

--fengqian

From: Alan Kavanagh [mailto:alan.kavan...@ericsson.com]
Sent: Thursday, December 19, 2013 2:14 AM
To: OpenStack Development Mailing List (not for usage questions)
Subject: Re: [openstack-dev] [Nova] [Ironic] Get power and temperature via IPMI

Hi Gao

What is the reason why you see it would be important to have these two 
additional metrics power and temperature for Nova to base scheduling on?

Alan

From: Gao, Fengqian [mailto:fengqian@intel.com]
Sent: December-18-13 1:00 AM
To: openstack-dev@lists.openstack.orgmailto:openstack-dev@lists.openstack.org
Subject: [openstack-dev] [Nova] [Ironic] Get power and temperature via IPMI

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?


Best wishes

--fengqian

___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


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

2013-12-17 Thread Gao, Fengqian
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?


Best wishes

--fengqian

___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [Ironic] A question about getting IPMI data

2013-11-19 Thread Gao, Fengqian
Re-send again because been rejected by system.

Best Regards,

-fengqian

From: Gao, Fengqian
Sent: Tuesday, November 19, 2013 2:06 PM
To: openstack-dev@lists.openstack.org
Cc: 'Devananda van der Veen'; 'jbjoh...@us.ibm.com'; Lu, Lianhao; Wang, Shane
Subject: [Ironic] A question about getting IPMI data

Hi, all,
As the summit session 
https://etherpad.openstack.org/p/icehouse-summit-ceilometer-hardware-sensors 
said, ironic will expose IPMI data to ceilometer, but I have a couple questions 
here.

1.   What kind of IPMI data will be collected? I assume that power, 
temperature or other sensor data is needed, right?



2.   How do we get all these data?

IIUC, ironic did not involve too much about IPMI for now, only used ipmitool 
and pyghmi module.
Using IPMItool to execute command and parsing the output is easy to understand. 
But seems not a good way for me. The pyghmi only supports 
out-of-band(net-payload) now. So, I am wondering if we can extend the function 
of pyghmi to provide more interfaces?
Be specifically, I think pyghmi can provide in-band IPMI interface including 
IPMB or system interface etc. and allowed to get IPMI data in the OS.

Is all this make sense to you?

Thanks for your response


Best Regards,

-fengqian
___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev