Search This Blog

Sunday, May 19, 2013

How do I control vm placement in Openstack cluster

If you have built your owns Openstack cluster than it is up to you as well how do you tune and configure it to meet your requirements.

If you use your cluster primarily to spin up and spin down VM you need often some level of control where the VM are going to be built. In the latest Openstack release there are two options that can help: availability zones and host aggregate filter.

Host aggregates filter

It was introduced in Essex (Release Note, all Essex blueprints)
  • Host aggregates (direct link to blueprint
It was next modified and extended in Folsom as we can see this in the Folsom Release Notes and Folsom blueprints here:
  • General Host Aggregates were implemented, allowing metadata to be set dynamically for hosts and pased to the scheduler general-host-aggregates
  • Lots of improvements were made to the scheduler, Including filters for image architecture and scheduling based on capabilities from aggregates. See doc.
Going through the Grizzly Release note and the Grizzly blueprint I see only these blueprints that are relevant:
Availability zones

I didn't have a chance to investigate where this feature was introduced and how it was implemented fully. For these who are interested in more details this link should give a good starting point: Nova release notes and blueprints

Example

Below are some links to examples with nova commands to show how the two features work.

Controlling volume and instance placement in OpenStack (take 1)
Controlling volume and instance placement in OpenStack (take 2)
Controlling where instances run (Openstack compute administration guide - grizzly)
How do I group compute nodes to control workload placement? (ask openstack forum)
http://devstack.org/exercises/aggregates.sh.html

No comments:

Post a Comment