[openstack-dev] [Scheduler] New scheduler feature - VM Ensembles

Caitlin Bestler Caitlin.Bestler at nexenta.com
Wed Jan 23 21:34:05 UTC 2013

Gary Kotton [mailto:gkotton at redhat.com] wrote:

> The link https://docs.google.com/document/d/1bAMtkaIFn4ZSMqqsXjs_riXofuRvApa--qo4UTwsmhw/edit introduces the concept
> of a VM ensemble or VM group into Nova. An ensemble will provide the tenant the ability to group together VMs that provide a
> certain service or part of the same application. More specifically it enables configuring scheduling policies per group. This will in turn
> allow for a more robust and resilient service. Specifically, it will allow a tenant to deploy a multi-VM application that is designed for
> VM fault tolerance in a way that application availability is actually resilient to physical host failure. 
> Any inputs and comments will be greatly appreciated.

This involves concepts that want to be at different layers.

An ensemble is most naturally a template that can be applied to multiple instances to create related sets of VMs.
When viewed as a repeatable macro, you would want this to be implemented very high in the stack.

But there is the aspect that your doc focuses on which is the low level impact on scheduling.
Perhaps we need a high layer template that can turn into instance-specific scheduling hints?

Of more specific interest, I would like to suggest that "group" mechanisms specifically include
the ability to support multi-session servers within these groups.

For example, the database backends. Rather than launching a VM for each backend it might
make more sense to just launch a VNIC on an existing server to create support for a specific
set of VMs.

If you are replicating a pattern of servers on a per tenant basis it would be nice to be able to
express that pattern without requiring a per-tenant VM just to isolate the service. Isolating
a VNIC is sufficient.

More information about the OpenStack-dev mailing list