[libvirt-users] P2P live migration with non-shared storage: fails to connect to remote libvirt URI qemu+ssh

Kashyap Chamarthy kchamart at redhat.com
Fri Apr 3 08:08:21 UTC 2015


Migration without --p2p works just fine, ie. the below works:


    $ virsh migrate --verbose --copy-storage-all \
        --live cvm1 qemu+ssh://kashyapc@devstack3/system
    Migration: [100 %]

    Result:
        - On the source host, the guest is shut off
        - On the destination host, the guest is live migratied successfully


Migration with "--p2p" fails, a simple test below:

First, I should note, I didn't modify any settings in
/etc/libvirt/libvirtd.conf on both source and destination hosts, except for
libvirt logging filters.

(0) On source and destination hosts, SSH keys are setup so that passwordless
    auth works:

    $ ssh-keygen -t 
    $ eval `ssh-agent`
    $ ssh-add .ssh/id_rsa
    $ ssh-copy-id root at devstack3


(1) Check if the connection to the remote host works w/o a prompt for
    user credentials (the below works as user and root):

    $ virsh -c qemu+ssh://kashyapc@devstack3/system
    Welcome to virsh, the virtualization interactive terminal.
    
    Type:  'help' for help with commands
           'quit' to quit
    
    virsh # 


(2) Perform peer to peer live migration (as root):

    $ virsh migrate --verbose --p2p --copy-storage-all \
        --live cvm1 qemu+ssh://kashyapc@devstack3/system
  
    error: operation failed: Failed to connect to remote libvirt URI qemu+ssh://kashyapc@devstack3/system: Cannot recv data: Permission denied, please try again.
    Permission denied, please try again.
    Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).: Connection reset by peer


>From libvirtd debug log:

[. . .]
2015-04-03 06:04:16.221+0000: 31009: debug : virCommandRunAsync:2408 : About to run LC_ALL=C PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin ssh -l kashyapc devstack3 sh -c ''\''if '\
''nc'\'' -q 2>&1 | grep "requires an argument" >/dev/null 2>&1; then ARG=-q0;else ARG=;fi;'\''nc'\'' $ARG -U /var/run/libvirt/libvirt-sock'\'''
2015-04-03 06:04:16.223+0000: 31009: debug : virCommandRunAsync:2411 : Command result 0, with PID 11204
2015-04-03 06:04:16.300+0000: 31009: error : virNetSocketReadWire:1564 : Cannot recv data: Permission denied, please try again.
Permission denied, please try again.
Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).: Connection reset by peer
2015-04-03 06:04:16.300+0000: 31009: debug : do_open:1194 : driver 6 remote returned ERROR
2015-04-03 06:04:16.300+0000: 31009: debug : qemuDomainObjExitRemote:1695 : Exited remote (vm=0x7f727c005f80 name=cvm1)
2015-04-03 06:04:16.300+0000: 31009: error : doPeer2PeerMigrate:4711 : operation failed: Failed to connect to remote libvirt URI qemu+ssh://kashyapc@devstack3/system: Cannot recv data: Permission denied, please try again.
Permission denied, please try again.
Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).: Connection reset by peer
2015-04-03 06:04:16.300+0000: 31009: debug : qemuMigrationRestoreDomainState:1429 : driver=0x7f728c160980, vm=0x7f727c005f80, pre-mig-state=1, state=1
2015-04-03 06:04:16.300+0000: 31009: debug : qemuDomainObjEndAsyncJob:1497 : Stopping async job: migration out (vm=0x7f727c005f80 name=cvm1)
2015-04-03 06:04:16.301+0000: 31007: debug : virProcessAbort:167 : aborting child process 11204
2015-04-03 06:04:16.301+0000: 31007: debug : virProcessAbort:175 : trying SIGTERM to child process 11204
[. . .]


What else am I missing?


-- 
/kashyap




More information about the libvirt-users mailing list