Hi, right now, as far as I can see, the Xen live migration doesn't work together with Xen.
The problem described in short words: - with xen memory management enabled, the available memory on all hosts is distributed equally on all running domU's on a physical node. - with live migration, there must be enough resources available on the node where the domU will migrate to. - as there is all memory used, due to the memory management, the live migration will fail. - a resource script on one node, e.g. the Xen script, is not really able to manipulate sth. on other hosts in the cluster To solve the problem I thought about the following: 1. create a XenMigrationHelperResource, that can do the following: - figure out the amount of running domU's - figure out the amount of maximum available memory per host - post both values into the CIB, using attrd_updater - resize memory on the domU's running on the same host as where the XenMigrationHelperResource runs on 2. using this resource, in e.g. a two node cluster: - create a group, ordered but not collocated - first add the XenMigrationHelperResource - then the corresponding Xen resource add a colocation constraint with -INFINITY, to keep the Xen resource always on a different host than the XenMigrationHelperResource 3. migrate the Xen resource, due to the order, the XenMigrationHelperResource starts its work: - count running xen domains, and figure out maximum available memory, and updated the CIB with attrd_updater - shrink the memory on the running domU's equally, to make memory available for the new domU to be migrated to that host - then it migrates away on the other host - then the Xen resource starts migration, it will read the values for the target node posted via attrd_updater, and it will shrink the memory, so that it will fit on the other machine. - then it will start the migration of the domU, which now has good chances to end successfully - at the end io migration, the Xen resource will raise the memory on the host where it migrated from Is this something that could work out, or maybe I think too complicated, and I overlooked sth. to solve the problem much more easier? any input is highly appreciated. regards Sebastian _______________________________________________________ Linux-HA-Dev: [email protected] http://lists.linux-ha.org/mailman/listinfo/linux-ha-dev Home Page: http://linux-ha.org/
