[libvirt] staggered guest startup / startup order

Thomas Sjolshagen thomas at sjolshagen.net
Tue May 26 14:11:52 UTC 2009

Quoting Michael Ansel <libvir at anselcomputers.com>:


> How hard would something like this (staggered boot order) be to
> add/integrate with an optional, external config file (or as a

Disclaimer: I have no clue as to how difficult it would be to add
or integrate.

However, considering that the boot order is most likely dependent
on a higher level application (the app hosted in the guest) and
it's dependencies, does it really make sense to add that integration
to libvirt/libvirtd? To truly get a staggered order, it should really
know something about the application preferences etc. I'd
argue that this level of capability is something that should be
handled by, for instance a cluster resource manager?

> [true|false|1|2|3|..]. style directive in the main XML)? I'd be
> interested in putting something together if it is a feasible addition
> and someone can point me to the general area of the code that needs to
> be changed. Also, is there an indicator in libvirt for when a domain
> has finished booting, or would this boot staggering need to be time

Time based seems way too simplistic since there, in a production
environment could be a number of issues determining the time it takes
for a specific guest to boot, including the load on the host system.

Also, the fact that the guest is done booting in by no means an
indication that the application its hosting is ready to be interacted
with by one of the dependent guests (example: database recovery for
some of the commercial database vendors occurs asynchronously to
the completion of the boot process, yet the DB isn't ready for
transactions until the recovery is complete, which could be long
after the boot process is "complete" from an OS perspective.)

// Thomas

This message was sent using IMP, the Internet Messaging Program.

More information about the libvir-list mailing list