KVM live migration problems and performace

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello,

I'm playing around with KVM for my university and I have some strange problems with live migration. I hope this is the right place to ask and maybe somebody can explain why I'm having these problems:

I have a VM running ubuntu and I'm trying to live migrate it. This works fine if I have just one vcpu for the VM. On the other hand, with 2 vcpus after the VM migrated to its new host it stops reacting and uses 100% CPU until killed.

So, first question: Does live migration work with 2 vcpus and just not on my setup, or is it a bug? Is there anything i can do?




Also, I'm having a performace problem when i try to migrate the VM between subnets: It takes a very long time before i can use the new ip ( >1.5 sec inside the VM, which are 8 sec wall clock ).

Basically the diagram below is my setup. The VM is using a bridge to connect to Host A or B.

        +---------- Router -------------- Client
        |            |                    10.0.3.2
        |            |
        |            |
      Host A       Host B
     10.0.1.2     10.0.2.2
        |            |
        | (bridged)  |
        VM   <-->   VM'              `<-->` := live-miration
    10.0.1.100     10.0.2.100


When Host A and B are in the same subnet, live migration works great and downtime of the VM is < 0.4 sec. I've written a daemon, running on the VM, that recieves messages from the new host and sets a new IP address right away (no dhcp, just one udp message). The script does something like this after receiving a message with $NEWIP and $ROUTERIP.

    ip addr change $NEWIP dev eth0;
    ip route change default via $ROUTERIP;
    ping -I $NEWIP $CLIENT # -I explicitly sets the src ip

But this gives a error from ping: There is no device with $NEWIP - I have to do `sleep 1.5` between the ifconfig and the ping to make this work. To repeat, the problem is that it takes very long until the new IP is *usable*, after the time everything works fine.

When i do something similar on a real linux machine i can't find the same problem. But real machines are much faster, so im not sure if this is a problem of the VM, or just how linux works. Maybe someone can enlighten me?

thanks in advance,

Jochen
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux