Connection to an instance with floating IP breaks during block migration when using DVR
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
Fix Released
|
High
|
Swaminathan Vasudevan | ||
Mitaka |
New
|
Undecided
|
Unassigned | ||
neutron |
Fix Released
|
High
|
Swaminathan Vasudevan |
Bug Description
During migration of an instance, using block migration with a floating IP when the router is DVR the connection to the instance breaks (e.g. Having an SSH connection to the instance).
Reconnect to the instance is successful.
Version
======
RHEL 7.1
python-
python-
How to reproduce
==============
1. Create a distributed router and attach an internal and an external network to it.
# neutron router-create --distributed True router1
# neutron router-
# neutron router-gateway-set <external network id>
2. Launch an instance and associate it with a floating IP.
# nova boot --flavor m1.small --image fedora --nic net-id=<internal network id> vm1
3. SSH into the instance which will be migrated and run a command "while true; do echo "Hello"; sleep 1; done"
4. Migrate the instance using block migration
# nova live-migration --block-migrate <instance id>
5. Verify that the connection to the instance is lost.
tags: | added: l3-dvr-backlog |
Changed in neutron: | |
assignee: | nobody → Swaminathan Vasudevan (swaminathan-vasudevan) |
status: | Confirmed → In Progress |
Changed in nova: | |
status: | Confirmed → In Progress |
assignee: | nobody → Swaminathan Vasudevan (swaminathan-vasudevan) |
Changed in neutron: | |
milestone: | none → mitaka-3 |
tags: | added: live-migration network neutron |
Changed in neutron: | |
milestone: | mitaka-3 → mitaka-rc1 |
tags: | added: mitaka-rc-potential |
Changed in neutron: | |
assignee: | Swaminathan Vasudevan (swaminathan-vasudevan) → Armando Migliaccio (armando-migliaccio) |
Changed in neutron: | |
assignee: | Armando Migliaccio (armando-migliaccio) → Swaminathan Vasudevan (swaminathan-vasudevan) |
tags: | added: newton-rc-potential |
tags: | removed: mitaka-backport-potential newton-rc-potential |
I think the reason is that after a VM live-migration from compute node A to compute node B, the l2 agent in compute node B need a little time to scan this port and get its info from neutron-server through RPC, so the connection will break