[Bug 1314887] Re: ifupdown hook is missing in upstart script
Mathew Hodson
mathew.hodson at gmail.com
Thu Dec 10 02:02:22 UTC 2015
** Description changed:
- ifupdown hook is present in /etc/init.d/openvswitch-switch, but not in
- /etc/init/openvswitch-switch.conf which is the default.
+ [Impact]
- === modified file 'debian/openvswitch-switch.upstart'
- --- debian/openvswitch-switch.upstart 2013-08-23 11:18:52 +0000
- +++ debian/openvswitch-switch.upstart 2014-05-01 04:26:00 +0000
- @@ -32,11 +32,13 @@
- fi
- set "$@" $OVS_CTL_OPTS
- "$@"
- + ifup --allow ovs `ifquery --allow ovs --list`
- end script
+ The documentation included in both upstream Open vSwitch (ovs) 2.0.2 and
+ the version distributed by Ubuntu states that it supports configuring
+ ovs using /etc/network/interfaces (see /usr/share/doc/openvswitch-
+ switch/README.Debian). Moreover, /etc/init.d/openvswitch-switch contains
+ the necessary logic to support parsing /etc/network/interfaces but that
+ logic is completely missing in the Upstart /etc/init/openvswitch-
+ switch.conf script.
- post-stop script
- . /usr/share/openvswitch/scripts/ovs-lib
- test -e /etc/default/openvswitch-switch && . /etc/default/openvswitch-switch
+ The result of this issue is a user can properly configure their network
+ in /etc/network/interfaces, test it with ifup/ifdown, reboot, and have
+ no network configured with the machine comes back up. If the user is
+ unaware that Upstart is being used and not classic init.d scripts, a
+ manual call using /etc/init.d/openvswitch-switch works as expected.
+ Without boot integration, users can't easily use Open vSwitch to
+ configure their "main" interface and have a system work on boot.
- + ifdown --allow ovs `ifquery --allow ovs --list`
- ovs_ctl stop
- end script
+ The fix in this thread basically adds support for using the normal
+ config files (/etc/network/interfaces and /etc/network/interfaces.d/*)
+ to configure the network on boot.
+
+ [Test Case]
+
+ After running `apt-get install -y openvswitch-switch`, add a stanza to
+ /etc/network/interfaces like the following:
+
+ allow-ovs br0
+ iface br0 inet static
+ ovs_type OVSBridge
+ address 172.16.0.1
+ network 255.255.255.0
+
+ Try `ifup br0` and `ifdown br0` and notice how the interface is
+ correctly controlled. Try `/etc/init.d/openvswitch-switch restart` and
+ note how the interface comes up. Reboot the machine and note how br0 is
+ not correctly configured.
+
+ [Regression Potential]
+
+ This problem is recognized by the user community (see
+ http://www.opencloudblog.com/?p=240,
+ http://blog.scottlowe.org/2012/08/17/installing-kvm-and-open-vswitch-on-
+ ubuntu/, etc) and people have been manually patching their systems for
+ years to get the desired capability. It's conceivable people's odd ways
+ of fixing this problem could conflict with the potential patch. Double
+ ifup'ing or ifdown'ing an interface shouldn't break any systems but
+ error messages may be emitted.
+
+ The other unlikely issue is that users have interfaces correctly
+ configured in /etc/network/interfaces and are deliberately depending on
+ the interfaces *not* coming up on boot. This patch would cause these
+ boot-dormant interfaces to come up unexpectedly but, again, I think this
+ problem unlikely.
+
+ [Other Info]
+
+ This patch aligns the boot behavior both with what's expected and what
+ the documentation states.
--
You received this bug notification because you are a member of Ubuntu
Server Team, which is subscribed to openvswitch in Ubuntu.
https://bugs.launchpad.net/bugs/1314887
Title:
ifupdown hook is missing in upstart script
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/openvswitch/+bug/1314887/+subscriptions
More information about the Ubuntu-server-bugs
mailing list