[[PageOutline]] = Live Migration = == 0.Testbed Architecture == == 1.Config Xen == {{{ $ sudo vim /etc/xen/xend-config.sxp (xend-relocation-server yes) (xend-relocation-address '') (xend-relocation-hosts-allow '') }}} == 2.Command == {{{ = xen01 = $ xm migrate --live vm01 xen01 = xen01= $ xm list }}} == 3.Theory of Live Migration == == Reference == * Christopher C., Keir F., Steven H., Jacob G. H., Live migration of virtual machines, 2005 == Error message == {{{ == xen01 == [2008-07-10 11:44:30 xend 6545] ERROR (__init__:1072) Memory reloaded. [2008-07-10 11:44:30 xend 6545] ERROR (__init__:1072) Decreased reservation by 2088 pages [2008-07-10 11:44:30 xend 6545] DEBUG (__init__:1072) store-mfn 16246 [2008-07-10 11:44:30 xend 6545] ERROR (__init__:1072) Domain ready to be built. [2008-07-10 11:44:30 xend 6545] DEBUG (__init__:1072) console-mfn 16245 [2008-07-10 11:44:30 xend 6545] ERROR (__init__:1072) Restore exit with rc=0 [2008-07-10 11:44:32 xend 6545] DEBUG (__init__:1072) Waiting for devices vif. [2008-07-10 11:44:32 xend 6545] DEBUG (__init__:1072) Waiting for 0. [2008-07-10 11:44:32 xend 6545] DEBUG (__init__:1072) hotplugStatusCallback /local/domain/0/backend/vif/2/0/hotpl ug-status. [2008-07-10 11:44:32 xend 6545] DEBUG (__init__:1072) hotplugStatusCallback 1. [2008-07-10 11:44:32 xend 6545] DEBUG (__init__:1072) Waiting for devices usb. [2008-07-10 11:44:32 xend 6545] DEBUG (__init__:1072) Waiting for devices vbd. [2008-07-10 11:44:32 xend 6545] DEBUG (__init__:1072) Waiting for 2049. [2008-07-10 11:44:32 xend 6545] DEBUG (__init__:1072) hotplugStatusCallback /local/domain/0/backend/vbd/2/2049/ho tplug-status. [2008-07-10 11:44:32 xend 6545] DEBUG (__init__:1072) hotplugStatusCallback 2. [2008-07-10 11:44:32 xend.XendDomainInfo 6545] DEBUG (__init__:1072) XendDomainInfo.destroy: domid=2 [2008-07-10 11:44:32 xend.XendDomainInfo 6545] DEBUG (__init__:1072) XendDomainInfo.destroyDomain(2) [2008-07-10 11:44:33 xend 6545] ERROR (__init__:1072) Restore failed Traceback (most recent call last): File "/usr/lib/xen-3.0.3-1/lib/python/xen/xend/XendDomain.py", line 263, in domain_restore_fd return XendCheckpoint.restore(self, fd) File "/usr/lib/xen-3.0.3-1/lib/python/xen/xend/XendCheckpoint.py", line 165, in restore dominfo.waitForDevices() # Wait for backends to set up File "/usr/lib/xen-3.0.3-1/lib/python/xen/xend/XendDomainInfo.py", line 1596, in waitForDevices self.waitForDevices_(c) File "/usr/lib/xen-3.0.3-1/lib/python/xen/xend/XendDomainInfo.py", line 1090, in waitForDevices_ return self.getDeviceController(deviceClass).waitForDevices() File "/usr/lib/xen-3.0.3-1/lib/python/xen/xend/server/DevController.py", line 145, in waitForDevices return map(self.waitForDevice, self.deviceIDs()) File "/usr/lib/xen-3.0.3-1/lib/python/xen/xend/server/DevController.py", line 161, in waitForDevice raise VmError("Device %s (%s) could not be connected. " VmError: Device 2049 (vbd) could not be connected. Backend device not found. }}}