Red Hat Bugzilla – Bug 517548
virt-manager migration failure - destination URI, not hostname, should be passed to vm.prepare()
Last modified: 2009-10-07 08:28:06 EDT
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en; rv:184.108.40.206) Gecko/20080528 Epiphany/2.22 (Debian/2.26.1-1)
virt-manager prevents migration of KVM guest over SSH connection with following error:
Error migrating domain: invalid argument in only tcp URIs are supported for KVM migrations
This is wrong, because I can successfully migrate manually with:
virsh migrate --live guest qemu+ssh://host2/system
Steps to Reproduce:
1. fire up virt-manager on a host with the guest
2. define connection to a second host using SSH
3. attempt migration of guest to the second host
Traceback (most recent call last):
File "/usr/share/virt-manager/virtManager/engine.py", line 556, in migrate_domain
File "/usr/share/virt-manager/virtManager/domain.py", line 1357, in migrate
self.vm.migrate(self.connection.vmm, flags, None, dictcon.get_short_hostname(), 0)
File "/usr/lib64/python2.6/site-packages/libvirt.py", line 378, in migrate
if ret is None:raise libvirtError('virDomainMigrate() failed', dom=self)
libvirtError: invalid argument in only tcp URIs are supported for KVM migrations
Successfull migration of the guest.
What versions of virt-manager, libvirt and qemu-system-86 is this?
Could you include ~/.virt-manager/virt-manager.log? Also, /var/log/libvirt/qemu/$guest.log from both the source and destination hosts?
The error message is coming from the libvirt qemu driver, and it refers not to the qemu+ssh:// URI but the optional <migrateuri> which you're not passing to virsh
It looks to me like virt-manager is passing the destination hostname (i.e. not a URI) as this parameter which is totally bogus
libvirt.log contains the usual stuff + only the backtrace above, $guest.log is empty (except for the qemu-kvm... command)
It's very reproducible, you may want to try it yourself.
We were invoking the migrate command incorrectly in virt-manager 0.7.0. We should just copy the migrate routine out of domain.py in current upstream and backport it to F11.
virt-manager-0.7.0-6.fc11 has been submitted as an update for Fedora 11.
virt-manager-0.7.0-6.fc11 has been pushed to the Fedora 11 testing repository. If problems still persist, please make note of it in this bug report.
If you want to test the update, you can install it with
su -c 'yum --enablerepo=updates-testing update virt-manager'. You can provide feedback for this update here: http://admin.fedoraproject.org/updates/F11/FEDORA-2009-9871
This should be fixed by virt-manager-0.7.0-7.fc11 now in stable. Closing.