1. A system for dynamic relocation of virtual machines in a domain, comprising: a domain management module configured to execute on a computer processor, the system configured to: receive a request to add a new hypervisor to a domain, the new hypervisor comprising a singleton architecture description (ARD); and generate a new canonical ARD for the domain, the new canonical ARD comprising an indicator of resources available to one or more virtual machines executing in the domain; wherein a virtual machine executing on any hypervisor in the domain is moved to any other hypervisor in the domain without losing resources.