Live Migration Guest Network Stops Responding
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
libvirt |
Expired
|
Medium
|
|||
libvirt (Ubuntu) |
Invalid
|
Low
|
Unassigned |
Bug Description
After configuring 2 identical servers with KVM and then trying to migrate an image using bridged networking from one to the other, the guest loses network connectivity after the migration completes.
A tcpdump shows the bridged network is passing packets /from/ the guest (a test ping run in the guest via the VNC console) and reply packets are received and bridged back onto the guest network interface without the guest seeing the packet (i.e. packets come from vnet0, sent out on br0, reply comes back from br0, is forwarded onto vnet0 but the guest never sees the reply).
tcpdump -n -i vnet0
18:19:47.072378 IP 192.168.35.49 > 192.168.35.4: ICMP echo request, id 512, seq 2816, length 40
This is the echo packet sent by the guest
18:19:47.073119 IP 192.168.35.4 > 192.168.35.49: ICMP echo reply, id 512, seq 2816, length 40
This is the reply coming back except the actual guest does not ever see the reply.
# lsb_release -rd
Description: Ubuntu 10.04.1 LTS
Release: 10.04
The packet forwarding seems to go amiss on the bridge or in qemu or libvirt - there are a number of posts online with people finding similar problems but nothing ever seems to answer why or how to fix it that I've found.
brctl show
# brctl show
bridge name bridge id STP enabled interfaces
br0 8000.001517c8ef5e no eth1
eth2
vnet0
brctl showstp br0
br0
bridge id 8000.001517c8ef5e
designated root 8000.001517c8ef5e
root port 0 path cost 0
max age 20.00 bridge max age 20.00
hello time 2.00 bridge hello time 2.00
forward delay 0.00 bridge forward delay 0.00
ageing time 300.00
hello timer 1.64 tcn timer 0.00
topology change timer 0.00 gc timer 0.64
flags
eth1 (1)
port id 8001 state disabled
designated root 8000.001517c8ef5e path cost 100
designated bridge 8000.001517c8ef5e message age timer 0.00
designated port 8001 forward delay timer 0.00
designated cost 0 hold timer 0.00
flags
eth2 (2)
port id 8002 state forwarding
designated root 8000.001517c8ef5e path cost 4
designated bridge 8000.001517c8ef5e message age timer 0.00
designated port 8002 forward delay timer 0.00
designated cost 0 hold timer 0.64
flags
vnet0 (3) <-- the guest nic
port id 8003 state forwarding
designated root 8000.001517c8ef5e path cost 100
designated bridge 8000.001517c8ef5e message age timer 0.00
designated port 8003 forward delay timer 0.00
designated cost 0 hold timer 0.64
flags
Changed in libvirt (Ubuntu): | |
importance: | Undecided → Low |
Changed in libvirt (Ubuntu): | |
status: | Incomplete → Invalid |
Changed in libvirt: | |
importance: | Unknown → Medium |
status: | Unknown → Expired |
Description of problem: /fedoraproject. org/wiki/ QA:Testcase_ Live_Migration_ using_libvirt/ virsh, the migration does work, but the pinging to the guest OS was interrupted just after the migration succeeded, and network doesn't work even if I restart the NetworkManager in guest OS.
I'm testing live migration feature following instructions in https:/
This happens both on Fedora 12 and Windows XP SP3 I've tested, maybe it's a bug.
BTW, I'm using bridge network on both source and dest machines, and the interface names are all the same("br0").
Version-Release number of selected component (if applicable): 2.6.33. 1-19.fc13 0.7.7-1. fc13 virtinst- 0.500.2- 3.fc13 0.5.1-1. fc13 0.8.3-2. fc13
* kernel-
* libvirt-
* python-
* qemu-0.12.3-6.fc13
* seabios-
* virt-manager-
How reproducible:
Always.
Steps to Reproduce: //10.66. 65.51/system"
1. Share the image with dest host via NFS.
2. Start Guest OS, and ping it.
3. Run "virsh migrate --live testxp qemu+ssh:
Actual results:
Ping returns nothing after Guest OS in source host closes, re-ping it, and outputs:
From 10.66.65.190 icmp_seq=2611 Destination Host Unreachable
From 10.66.65.190 icmp_seq=2612 Destination Host Unreachable
From 10.66.65.190 icmp_seq=2613 Destination Host Unreachable
The same when pinging from Guest OS to Host OS.
Expected results:
Ping continue uninterrupted.
Additional info: