[libvirt] staggered guest startup / startup order

Daniel P. Berrange berrange at redhat.com
Tue May 26 14:17:31 UTC 2009


On Tue, May 26, 2009 at 10:11:52AM -0400, Thomas Sjolshagen wrote:
> 
> Quoting Michael Ansel <libvir at anselcomputers.com>:
> 
> >[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.)

Yeah, this is what makes ordered startup of guests a 'feature' that
is doomed to fail. It is essentially impossible to determine 'finished
booing' from the host OS, and time delays are inevitably going to fail
on some percentage of boot attempts. The only reliable way is to have
the applications which depend on resources from other guests automatically
retry connections, or have something in the guest which probes to see if
the external resource is ready before attempting to start the app in
question. 

Daniel
-- 
|: Red Hat, Engineering, London   -o-   http://people.redhat.com/berrange/ :|
|: http://libvirt.org  -o-  http://virt-manager.org  -o-  http://ovirt.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505  -o-  F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|




More information about the libvir-list mailing list