Jump to: navigation, search

Nova/SchedulingBasedOnInstanceResourceQuota

< Nova
Revision as of 09:55, 25 March 2014 by Sahid (talk | contribs) (Created page with "== Problem == Operator wants Nova scheduler take Instances with resource quota enable into account. == Overview == Nova provides the ability to set CPU time consumption perce...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

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 paaggregate_instance_extra_specsrticular flavor and then configuring over-subscription 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 this tiny flavor: host provisioning.
  • Impact of important number of VMs per host: workload density (to be studied with Neutron/Nova).
  • What about other driver? currently only libvirt support this feature.

Add new metric `cpu_used`

  • To be discussed in the community