[openstack-dev] [nova] Dynamic scheduling

Henrique Truta henriquecostatruta at gmail.com
Wed Apr 9 14:41:35 UTC 2014


Hello, everyone!

I am currently a graduate student and member of a group of contributors to
OpenStack. We believe that a dynamic scheduler could improve the efficiency
of an OpenStack cloud, either by rebalancing nodes to maximize performance
or to minimize the number of active hosts, in order to minimize energy
costs. Therefore, we would like to propose a dynamic scheduling mechanism
to Nova. The main idea is using the Ceilometer information (e.g. RAM, CPU,
disk usage) through the ceilometer-client and dinamically decide whether a
instance should be live migrated.

This might me done as a Nova periodic task, which will be executed every
once in a given period or as a new independent project. In both cases, the
current Nova scheduler will not be affected, since this new scheduler will
be pluggable. We have done a search and found no such initiative in the
OpenStack BPs. Outside the community, we found only a recent IBM
announcement for a similiar feature in one of its cloud products.

A possible flow is: In the new scheduler, we periodically make a call to
Nova, get the instance list from a specific host and, for each instance, we
make a call to the ceilometer-client (e.g. $ ceilometer statistics -m
cpu_util -q resource=$INSTANCE_ID) and then, according to some specific
parameters configured by the user, analyze the meters and do the proper
migrations.

Do you have any comments or suggestions?

--
Ítalo Henrique Costa Truta
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20140409/56f07658/attachment.html>


More information about the OpenStack-dev mailing list