Description of problem: To migrate to the specified hostname (of ip address), it's needed that --migrateuri option is specified as below. # virsh migrate --live su21k003 qemu+ssh://sk010002-hb/system tcp:sk010002-hb But, this doesn't work because the post number is not specified. The upstream has a fix for this problem. I will attach a backported patch. This is tesed by a customer and it worked well. As a backgrand of this issue, Live Migration of KVMs uses wrong interface in cluster even when migration_mapping cluster option is used. It always uses the interface on the public network, though this customer expected that the interface on the private network was used. This cause is that rgmanager doesn't use --migrateuri option for that. A new bugzilla should be created for this rgmanager's bug. On the other hand, I think that it's not good idea that rgmanager always uses a same port number. Rather than it, the port number should be assigned dynamically by the fix of this bugzilla. So, to fix this customer's problem, we need to fix libvirt and rgmanager. This bugzilla was created for the libvirt issue. Version-Release number of selected component (if applicable): libvirt-0.6.3-33 How reproducible: Always Steps to Reproduce: Assuming that the destination hostname is 'sk010002-hb' and the kvm guest name is 'su21k003': 1. Run virsh migrate --live su21k003 qemu+ssh://sk010002-hb/system tcp:sk010002-hb Actual results: The migration failed with "error: invalid argument in URI did not have ':port' at the end" Expected results: The migration finishes without any errors.
Created attachment 416658 [details] backported patch This was tested by a customer, and it worked well.
Yeah, this looks reasonable. I'll take a look. Chris Lalancette
Created attachment 417291 [details] Update backport of upstream patch Here's a slightly updated version of the same patch. It's exactly the same as the previous except it has a minor bugfix in the case that uri_out is NULL. Chris Lalancette
Verified this bug with and PASSED. Reproduced on old version libvirt package: # rpm -q libvirt libvirt-0.6.3-33.el5 # virsh migrate --live test qemu+ssh://10.66.70.86/system tcp:dhcp-66-70-86.nay.redhat.com root.70.86's password: error: invalid argument in URI did not have ':port' at the end Verified this bug with the latest version: # rpm -q libvirt libvirt-0.6.3-34.el5 # virsh migrate --live test qemu+ssh://10.66.70.86/system tcp:dhcp-66-70-86.nay.redhat.com root.70.86's password: Migration is done successfully
Fixed in libvirt-0.8.2-1.el5
tested with RHEL5u6-Server-x86_64-kvm kernel-2.6.18-227.el5 kvm-83-205.el5 libvirt-0.8.2-7.el5 Steps to VERIFY # virsh migrate --live test qemu+ssh://10.66.70.86/system tcp:dhcp-66-70-86.nay.redhat.com root.70.86's password: Migration is done successfully So set bug status to VERIFIED
An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on therefore solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHEA-2011-0060.html