Jump to: navigation, search

Nova/SchedulingBasedOnInstanceResourceQuota

< Nova
Revision as of 09:58, 25 March 2014 by Sahid (talk | contribs)

Problem

Operator wants Nova scheduler take Instances with resource quota enable into account.

Overview

Nova provides the ability to set CPU time consumption percent for instances https://wiki.openstack.org/wiki/InstanceResourceQuota. For instance, setting Quota/Period with a ratio of 1/6 will result in instances using 1/6 of vcpu. We need to find a way for the scheduler to take this into account during scheduling.

Proposals

Isolated aggregate

A first solution could be to reserve some specific hosts for a particular flavor and then configuring cpu allocation with the desired ratio.

How to use it

  • Work with Havana
  • For a flavor with a resource limited to 1/6 vcpu
  1. Configure the scheduler with filters 'AggregateCoreFilter' and 'AggregateInstanceExtraSpecFilter'
  2. Create a flavor and set the 'aggregate_instance_extra_specs:flavor_type' metadata to 'tiny_flavor' (or another value)
  3. Create an aggregate to isolate a resource limited flavor and set the 'cpu_allocation_ratio' metadata of this aggregate to 6.
  4. Set the 'flavor_type' metadata of this aggregate to 'tiny_flavor'

Problems

  • Dedicated hosts for flavor: host provisioning.
  • Impact of important number of VMs per host: workload density (to be studied with Neutron/Nova).
  • What about other drivers? currently only libvirt support this feature.

Add new metric `cpu_used`

  • To be discussed in the community