nova-network deletes default route

Bug #859587 reported by Ante Karamatić
12
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
Fix Released
High
Vish Ishaya
Diablo
Fix Released
Undecided
Unassigned
nova (Ubuntu)
Fix Released
Undecided
Chuck Short

Bug Description

With flatDHCP, nova-network deletes default route, then deletes the ip, puts the ip on bridge and adds default route. But then it deletes the IP on the bridge interface and re-adds the same IP to the same interface. Problem is that once this IP is deleted, route is deleted too. By just adding the IP back again, default route isn't recovered. Example:

2011-09-26 13:50:06,787 DEBUG nova.linux_net [-] Starting Bridge interface for eth0 from (pid=909) ensure_bridge /usr/lib/python2.7/dist-packages/nova/network/linux_net.py:919
2011-09-26 13:50:06,787 DEBUG nova.utils [-] Running cmd (subprocess): sudo brctl addbr br100 from (pid=909) execute /usr/lib/python2.7/dist-packages/nova/utils.py:165
2011-09-26 13:50:06,854 DEBUG nova.utils [-] Running cmd (subprocess): sudo brctl setfd br100 0 from (pid=909) execute /usr/lib/python2.7/dist-packages/nova/utils.py:165
2011-09-26 13:50:06,903 DEBUG nova.utils [-] Running cmd (subprocess): sudo brctl stp br100 off from (pid=909) execute /usr/lib/python2.7/dist-packages/nova/utils.py:165
2011-09-26 13:50:06,960 DEBUG nova.utils [-] Running cmd (subprocess): sudo ip link set br100 up from (pid=909) execute /usr/lib/python2.7/dist-packages/nova/utils.py:165
2011-09-26 13:50:06,989 DEBUG nova.utils [-] Running cmd (subprocess): sudo brctl addif br100 eth0 from (pid=909) execute /usr/lib/python2.7/dist-packages/nova/utils.py:165
2011-09-26 13:50:07,010 DEBUG nova.utils [-] Running cmd (subprocess): sudo route -n from (pid=909) execute /usr/lib/python2.7/dist-packages/nova/utils.py:165
2011-09-26 13:50:07,029 DEBUG nova.utils [-] Running cmd (subprocess): sudo route del default gw 192.168.69.1 dev eth0 from (pid=909) execute /usr/lib/python2.7/dist-packages/nova/utils.py:165
2011-09-26 13:50:07,060 DEBUG nova.utils [-] Running cmd (subprocess): sudo ip addr show dev eth0 scope global from (pid=909) execute /usr/lib/python2.7/dist-packages/nova/utils.py:165
2011-09-26 13:50:07,081 DEBUG nova.utils [-] Running cmd (subprocess): sudo ip addr del 192.168.69.107/24 brd 192.168.69.255 scope global dev eth0 from (pid=909) execute /usr/lib/python2.7/dist-packages/nova/utils.py:165
2011-09-26 13:50:07,102 DEBUG nova.utils [-] Running cmd (subprocess): sudo ip addr add 192.168.69.107/24 brd 192.168.69.255 scope global dev br100 from (pid=909) execute /usr/lib/python2.7/dist-packages/nova/utils.py:165
2011-09-26 13:50:07,122 DEBUG nova.utils [-] Running cmd (subprocess): sudo route add default gw 192.168.69.1 from (pid=909) execute /usr/lib/python2.7/dist-packages/nova/utils.py:165
2011-09-26 13:50:07,134 DEBUG nova.utils [-] Running cmd (subprocess): sudo ip addr show dev br100 scope global from (pid=909) execute /usr/lib/python2.7/dist-packages/nova/utils.py:165
2011-09-26 13:50:07,156 DEBUG nova.utils [-] Running cmd (subprocess): sudo ip addr del 192.168.69.107/24 brd 192.168.69.255 scope global dev br100 from (pid=909) execute /usr/lib/python2.7/dist-packages/nova/utils.py:165
2011-09-26 13:50:07,166 DEBUG nova.utils [-] Running cmd (subprocess): sudo ip addr add 10.10.0.1/24 brd 10.10.0.255 dev br100 from (pid=909) execute /usr/lib/python2.7/dist-packages/nova/utils.py:165
2011-09-26 13:50:07,191 DEBUG nova.utils [-] Running cmd (subprocess): sudo ip addr add 192.168.69.107/24 brd 192.168.69.255 scope global dev br100 from (pid=909) execute /usr/lib/python2.7/dist-packages/nova/utils.py:165

Look at the last five lines.

Changed in nova:
assignee: nobody → Vish Ishaya (vishvananda)
importance: Undecided → High
status: New → In Progress
Revision history for this message
Ante Karamatić (ivoks) wrote :
Download full text (3.6 KiB)

I can confirm that proposed fix solves the problem for me:

2011-09-26 14:05:24,098 DEBUG nova.linux_net [-] Starting Bridge interface for eth0 from (pid=890) ensure_bridge /usr/lib/python2.7/dist-packages/nova/network/linux_net.py:931
2011-09-26 14:05:24,098 DEBUG nova.utils [-] Running cmd (subprocess): sudo brctl addbr br100 from (pid=890) execute /usr/lib/python2.7/dist-packages/nova/utils.py:165
2011-09-26 14:05:24,108 DEBUG nova.utils [-] Running cmd (subprocess): sudo brctl setfd br100 0 from (pid=890) execute /usr/lib/python2.7/dist-packages/nova/utils.py:165
2011-09-26 14:05:24,138 DEBUG nova.utils [-] Running cmd (subprocess): sudo brctl stp br100 off from (pid=890) execute /usr/lib/python2.7/dist-packages/nova/utils.py:165
2011-09-26 14:05:24,169 DEBUG nova.utils [-] Running cmd (subprocess): sudo ip link set br100 up from (pid=890) execute /usr/lib/python2.7/dist-packages/nova/utils.py:165
2011-09-26 14:05:24,191 DEBUG nova.utils [-] Running cmd (subprocess): sudo brctl addif br100 eth0 from (pid=890) execute /usr/lib/python2.7/dist-packages/nova/utils.py:165
2011-09-26 14:05:24,203 DEBUG nova.utils [-] Running cmd (subprocess): sudo route -n from (pid=890) execute /usr/lib/python2.7/dist-packages/nova/utils.py:165
2011-09-26 14:05:24,214 DEBUG nova.utils [-] Running cmd (subprocess): sudo route del default gw 192.168.69.1 dev eth0 from (pid=890) execute /usr/lib/python2.7/dist-packages/nova/utils.py:165
2011-09-26 14:05:24,229 DEBUG nova.utils [-] Running cmd (subprocess): sudo ip addr show dev eth0 scope global from (pid=890) execute /usr/lib/python2.7/dist-packages/nova/utils.py:165
2011-09-26 14:05:24,243 DEBUG nova.utils [-] Running cmd (subprocess): sudo ip addr del 192.168.69.107/24 brd 192.168.69.255 scope global dev eth0 from (pid=890) execute /usr/lib/python2.7/dist-p
ackages/nova/utils.py:165
2011-09-26 14:05:24,282 DEBUG nova.utils [-] Running cmd (subprocess): sudo ip addr add 192.168.69.107/24 brd 192.168.69.255 scope global dev br100 from (pid=890) execute /usr/lib/python2.7/dist-
packages/nova/utils.py:165
2011-09-26 14:05:24,292 DEBUG nova.utils [-] Running cmd (subprocess): sudo route add default gw 192.168.69.1 from (pid=890) execute /usr/lib/python2.7/dist-packages/nova/utils.py:165
2011-09-26 14:05:24,302 DEBUG nova.utils [-] Running cmd (subprocess): sudo ip addr show dev br100 scope global from (pid=890) execute /usr/lib/python2.7/dist-packages/nova/utils.py:165
2011-09-26 14:05:24,313 DEBUG nova.utils [-] Running cmd (subprocess): sudo route -n from (pid=890) execute /usr/lib/python2.7/dist-packages/nova/utils.py:165
2011-09-26 14:05:24,325 DEBUG nova.utils [-] Running cmd (subprocess): sudo route del default gw 192.168.69.1 dev br100 from (pid=890) execute /usr/lib/python2.7/dist-packages/nova/utils.py:165
2011-09-26 14:05:24,353 DEBUG nova.utils [-] Running cmd (subprocess): sudo ip addr del 192.168.69.107/24 brd 192.168.69.255 scope global dev br100 from (pid=890) execute /usr/lib/python2.7/dist-
packages/nova/utils.py:165
2011-09-26 14:05:24,374 DEBUG nova.utils [-] Running cmd (subprocess): sudo ip addr add 10.10.0.1/24 brd 10.10.0.255 dev br100 from (pid=890) execute /usr/lib/python2.7/dist-packages/n...

Read more...

Revision history for this message
Openstack Gerrit (openstack-gerrit) wrote : A change has been merged to openstack/nova

Reviewed: https://review.openstack.org/647
Committed: http://github.com/openstack/nova/commit/569b310b003c1c96151a3e3d448ddf5fe4e9299a
Submitter: Jenkins
Branch: master

 status fixcommitted
 done

commit 569b310b003c1c96151a3e3d448ddf5fe4e9299a
Author: Vishvananda Ishaya <email address hidden>
Date: Mon Sep 26 05:14:39 2011 -0700

    Makes sure to recreate gateway for moved ip

    If nova moves an ip when setting up dhcp, make sure to reset
    the default gateway. Fixes bug 859587

    Change-Id: I9f2b7bc5ede142717df6cb1653043b4f5c09959a

tags: added: diablo-backport
Ante Karamatić (ivoks)
Changed in nova (Ubuntu):
status: New → Confirmed
Changed in nova:
status: In Progress → Fix Committed
Dave Walker (davewalker)
Changed in nova (Ubuntu):
assignee: nobody → Chuck Short (zulcss)
status: Confirmed → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package nova - 2011.3-0ubuntu3

---------------
nova (2011.3-0ubuntu3) oneiric; urgency=low

  [Adam Gandelman]
  * debian/nova-common.postinst: Create 'nova' group, add user to it
    (LP: #856530)
  * debian/nova.conf, debian/nova-compute.upstart.in: Move reference of
    nova-compute.conf from nova.conf to nova-compute's argv. (LP: #839796)

  [Chuck Short]
  * debian/patches/backport-recreate-gateway-using-dhcp.patch:
    Makes sure to recreate gateway for moved ip. (LP: #859587)
  * debian/control: Update Vcs info.

  [ Scott Moser ]
  * debian/patches/fqdn-in-local-hostname-of-ec2-metadata.patch
    Make the 'local-hostname' in the EC2 Metadata service contain
    the domainname also. (LP: #854614)
 -- Chuck Short <email address hidden> Tue, 27 Sep 2011 14:56:59 -0400

Changed in nova (Ubuntu):
status: Fix Committed → Fix Released
Scott Moser (smoser)
Changed in nova (Ubuntu):
milestone: none → ubuntu-11.10
Revision history for this message
Openstack Gerrit (openstack-gerrit) wrote :

Reviewed: https://review.openstack.org/933
Committed: http://github.com/openstack/nova/commit/1c8fedc82c4b388b0a3a876a54c7f14d3c2a8342
Submitter: Jenkins
Branch: stable/diablo

 status fixcommitted
 done

commit 1c8fedc82c4b388b0a3a876a54c7f14d3c2a8342
Author: Vishvananda Ishaya <email address hidden>
Date: Mon Sep 26 05:14:39 2011 -0700

    Makes sure to recreate gateway for moved ip

    If nova moves an ip when setting up dhcp, make sure to reset
    the default gateway. Fixes bug 859587

    (cherry picked from commit 569b310b003c1c96151a3e3d448ddf5fe4e9299a)

    Change-Id: I6dd1fb9d80c9635a8a721e77386938684cdd8f53

Thierry Carrez (ttx)
Changed in nova:
milestone: none → essex-1
Mark McLoughlin (markmc)
tags: removed: diablo-backport
Thierry Carrez (ttx)
Changed in nova:
status: Fix Committed → Fix Released
Revision history for this message
Martin Pitt (pitti) wrote : Please test proposed package

Hello Ante, or anyone else affected,

Accepted nova into oneiric-proposed, the package will build now and be available in a few hours. Please test and give feedback here. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you in advance!

tags: added: verification-needed
Dave Walker (davewalker)
tags: added: verification-done
removed: verification-needed
Thierry Carrez (ttx)
Changed in nova:
milestone: essex-1 → 2012.1
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.