Libvirtd setting with KVM

We recently setup OpenNebula using KVM on CentOS 7. According to this page:

we should enable libvirtd to listen over TCP so that migration and communication with the nodes works as expected. However, we’ve been running without that setting (because I didn’t notice that instruction at the onset), and as far as I can tell, everything seems to be working fine. I’m trying to understand why that is and if we’re missing any functionality by not enabling it. In case it matters, please note that we’re using a NFS mounted shared filesystem for our storage. Thanks.

You should be ok, without enabling TCP socket; livemigration is done using
qemu+ssh. There are plans to use TCP to talk to libvirt, see


Thanks so much for clarifying. I just wanted to point out that the
documentation in the link I provided seems to indicate that it’s already
using TCP to talk to libvirt, in case someone wants to correct the

Again, thanks for the info.

For the records, I’ve created the issue to review the documentation


I just configured my ONE nodes to use TCP+TLS to enable multiple VMs actions in parallel:

  • configure libvirtd with certificates as described in, make sure to use default pathes for certificates and private keys

  • modify /var/lib/one/remotes/vmm/kvm/kvmrc with LIBVIRT_URI=qemu+tls://$(hostname -s)/system (my certificates is not valid for localhost) and QEMU_PROTOCOL=qemu+tls

  • synchronize the hosts onehost -f sync

  • enable the -p option in kvm VM_MAD in /etc/one/oned.conf and restart opennebula service:

    VM_MAD = [
    name = “kvm”,
    executable = “one_vmm_exec”,
    arguments = “-p -t 15 -r 0 -i kvm”,
    default = “vmm_exec/vmm_exec_kvm.conf”,
    type = “kvm” ]

1 Like