I completed an experiment on ESXi 4.0 to confirm what many people have known about guest startup and vmotion since vsphere 3.x which is that the two features don’t work together.
Guest A set to 1 on host X
Guest B set to 1 on host Y
Migrate B from Y to X
B appears in “Any Order”
migrate B back to to Y from X
B appears in “Any Order”
It seems the startup feature is host based and doesn’t know what to do if a guest arrives at or leaves. I will do a bit of digging and see where the startup data is stored: probably on the host somewhere (as opposed to in the guest config).
I think to provide a solution where all the guests in a given datacentre have a defined startup sequence will require a virtualcenter plug-in which stores that information in the database. It will need a “startup resolution” algorithm and a human interface to manage it. As far as I know, no-one as written such a thing but it could be worthwhile.