On Tue, May 26, 2009 at 10:11:52AM -0400, Thomas Sjolshagen wrote: > > Quoting Michael Ansel <lib...@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 :| -- Libvir-list mailing list Libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list