function set_system_ids {
if [ -f /etc/xensource-inventory ]; then
action "Configuring Open vSwitch system IDs" true
- $vsctl --no-wait set Open_vSwitch . \
+ $vsctl --no-wait --timeout=5 set Open_vSwitch . \
external-ids:system-type="$PRODUCT_BRAND" \
external-ids:system-version="$PRODUCT_VERSION-$BUILD_NUMBER" \
- external-ids:system-uuid="$INSTALLATION_UUID"
+ external-ids:system-id="$INSTALLATION_UUID" \
+ external-ids:xs-system-uuid="$INSTALLATION_UUID"
else
action "Configuring Open vSwitch system IDs" false
fi
fi
start_ovsdb_server
- $vsctl --no-wait init
+ $vsctl --no-wait --timeout=5 init
if [ ! -e /var/run/openvswitch.booted ]; then
touch /var/run/openvswitch.booted
for bridge in $($vsctl list-br); do
- $vsctl --no-wait del-br $bridge
+ $vsctl --no-wait --timeout=5 del-br $bridge
done
fi
if [ "${ENABLE_BRCOMPAT}" = "y" ] ; then
start_brcompatd
fi
+
+ # Start daemon to monitor external ids
+ PYTHONPATH=/usr/share/openvswitch/python \
+ /usr/share/openvswitch/scripts/monitor-external-ids \
+ --pidfile --detach "$VSWITCHD_OVSDB_SERVER"
+
touch /var/lock/subsys/openvswitch
}
stop_daemon BRCOMPATD "$brcompatd"
stop_daemon VSWITCHD "$vswitchd"
stop_daemon OVSDB_SERVER "$ovsdb_server"
+ if [ -e /var/run/openvswitch/monitor-external-ids.pid ]; then
+ kill `cat /var/run/openvswitch/monitor-external-ids.pid`
+ fi
rm -f /var/lock/subsys/openvswitch
}