- Virtualization environment: KVM
- Source host: CentOS 5.9/64
- Target host: CentOS 6.4/64
As proof of concept before migrating a production machine, I created a small VM & put a minimal Linux install on it. This machine works well, as accessed from the virt-manager. Its 80 GB virtual disk is file-based.
Now I want to migrate it to the target server. WHile the VM is up & running, the Migrate option in virt-manager on the source host is enabled so I click on it. The following error pops up:
Unable to migrate guest:
Traceback (most recent call last):
File "/usr/share/virt-manager/virtManager/migrate.py", line 449, in _async_migrate
vm.migrate(dstconn, migrate_uri, rate, live, secure)
File "/usr/share/virt-manager/virtManager/domain.py", line 1445, in migrate
self.vm.migrate(destconn.vmm, flags, newname, interface, rate)
File "/usr/lib64/python2.4/site-packages/libvirt.py", line 518, in migrate
if ret is None:raise libvirtError('virDomainMigrate() failed', dom=self)
libvirtError: cannot open file '/export/kvm/v_holmestest/vholmes': No such file or directory
I am positive that the "vholmes" file is there, and has (all its path) read/execute permissions for world:
[root@centos5server /export/kvm/v_holmestest]$ l
total 8200020
4 drwxr-xr-x 2 root root 4096 Sep 30 17:51 .
4 drwxr-xr-x 3 root root 4096 Sep 30 17:49 ..
8200012 -rwxr-xr-x 1 root root 8388608000 Sep 30 17:52 vholmes
What can be going on here ?
Thanks
It requires the VM image file can be accessed from both source and target hosts. see KVM migration
So you should make sure it can access
/export/kvm/v_holmestest/vholmes
from target host as well. If it is a shared volume that is mounted on both source and target hosts, you must make sure it's mounted on the same path.Besides requiring a shared storage (not really a limitation since a while ago actually - you can do SLM nowadays) you also need close enough versions of KVM/QEMU/Libvirt - in your case, you have centos 5 and 6, not a supported configuration.
And you need to have a similar CPU arch, (meaning migrations between AMD based hosts and Intel based hosts will not work).