2
0
mirror of https://github.com/openvswitch/ovs synced 2025-10-21 14:49:41 +00:00

xenserver: Remove support for XenServer versions older than 5.6 FP1.

Commit 404c169247 breaks compatibility with
XenServers older than 5.6 FP1.  This commit removes the last vestiges of
support for those older XenServer versions.

Signed-off-by: Justin Pettit <jpettit@nicira.com>
This commit is contained in:
Justin Pettit
2011-02-11 12:35:35 -08:00
committed by Andrew Evans
parent 54f16a10f5
commit 34edeccfd8
13 changed files with 21 additions and 304 deletions

View File

@@ -737,7 +737,6 @@ Applying changes to /etc/sysconfig/network-scripts/ifcfg-xapi3 configuration
set Bridge xenbr3 other-config:hwaddr="00:15:17:a0:29:81"
set Bridge xenbr3 fail_mode=standalone
br-set-external-id xenbr3 xs-network-uuids 2902ae1b-8013-897a-b697-0b200ea3aaa5;db7bdc03-074d-42ae-fc73-9b06de1d57f6
--if-exists del-br xapi3
--may-exist add-br xapi3 xenbr3 123
br-set-external-id xapi3 xs-network-uuids 2902ae1b-8013-897a-b697-0b200ea3aaa5;db7bdc03-074d-42ae-fc73-9b06de1d57f6
set Interface xapi3 MAC="00:15:17:a0:29:81"
@@ -909,7 +908,6 @@ Applying changes to /etc/sysconfig/network-scripts/ifcfg-xapi2 configuration
set Bridge xapi1 other-config:hwaddr="00:22:19:22:4b:af"
set Bridge xapi1 fail_mode=standalone
br-set-external-id xapi1 xs-network-uuids 45cbbb43-113d-a712-3231-c6463f253cef;99be2da4-6c33-6f8e-49ea-3bc592fe3c85
--if-exists del-br xapi2
--may-exist add-br xapi2 xapi1 4
br-set-external-id xapi2 xs-network-uuids 45cbbb43-113d-a712-3231-c6463f253cef;99be2da4-6c33-6f8e-49ea-3bc592fe3c85
set Interface xapi2 MAC="00:22:19:22:4b:af"

View File

@@ -51,11 +51,6 @@ files are:
Daemon to monitor the external_ids columns of the Bridge and
Interface OVSDB tables.
usr_share_openvswitch_scripts_refresh-xs-network-uuids
Script to refresh Bridge table external-ids:xs-network-uuids
values, which can get out-of-sync following a pool join.
usr_share_openvswitch_scripts_sysconfig.template
Template for Open vSwitch's /etc/sysconfig/openvswitch

View File

@@ -24,6 +24,5 @@ EXTRA_DIST += \
xenserver/usr_lib_xsconsole_plugins-base_XSFeatureVSwitch.py \
xenserver/usr_sbin_xen-bugtool \
xenserver/usr_share_openvswitch_scripts_ovs-external-ids \
xenserver/usr_share_openvswitch_scripts_refresh-xs-network-uuids \
xenserver/usr_share_openvswitch_scripts_sysconfig.template \
xenserver/uuid.py

View File

@@ -75,21 +75,6 @@ case ${NETWORK_MODE:=openvswitch} in
;;
esac
# General config variables in /etc/sysconfig/openvswitch
if [ -f /etc/xensource-inventory ]; then
if test "$PRODUCT_VERSION" = "5.5.0"; then
# XenServer 5.5.0 needs ovs-brcompatd and /proc/net simulation.
: ${ENABLE_BRCOMPAT:=y}
: ${ENABLE_FAKE_PROC_NET:=y}
else
# Later versions don't need them.
: ${ENABLE_BRCOMPAT:=n}
: ${ENABLE_FAKE_PROC_NET:=n}
fi
else
: ${ENABLE_BRCOMPAT:=y}
: ${ENABLE_FAKE_PROC_NET:=y}
fi
: ${ENABLE_MONITOR:=y}
: ${FORCE_COREFILES:=y}
@@ -124,36 +109,15 @@ fi
: ${VSWITCHD_VALGRIND_LOG:=}
: ${VSWITCHD_VALGRIND_OPT:=}
# Config variables specific to ovs-brcompatd
: ${BRCOMPATD_PIDFILE:=/var/run/openvswitch/ovs-brcompatd.pid}
: ${BRCOMPATD_RUN_DIR:=/var/xen/openvswitch}
: ${BRCOMPATD_PRIORITY:=-10}
: ${BRCOMPATD_LOGFILE:=/var/log/openvswitch/ovs-brcompatd.log}
: ${BRCOMPATD_FILE_LOGLEVEL:=INFO}
: ${BRCOMPATD_SYSLOG_LOGLEVEL:=ERR}
: ${BRCOMPATD_MEMLEAK_LOGFILE:=}
: ${BRCOMPATD_STRACE_LOG:=}
: ${BRCOMPATD_STRACE_OPT:=}
: ${BRCOMPATD_VALGRIND_LOG:=}
: ${BRCOMPATD_VALGRIND_OPT:=}
# Full paths to executables & modules
ovsdb_server="/usr/sbin/ovsdb-server"
ovsdb_tool="/usr/bin/ovsdb-tool"
vswitchd="/usr/sbin/ovs-vswitchd"
brcompatd="/usr/sbin/ovs-brcompatd"
dpctl="/usr/bin/ovs-dpctl"
appctl="/usr/bin/ovs-appctl"
ofctl="/usr/bin/ovs-ofctl"
vsctl="/usr/bin/ovs-vsctl"
if [ "$ENABLE_FAKE_PROC_NET" = "y" ]; then
if [ "$ENABLE_BRCOMPAT" != "y" ]; then
warning "FAKE_PROC_NET required BRCOMPAT which was disabled. Force enabling."
ENABLE_BRCOMPAT="y"
fi
fi
if test "$ENABLE_MONITOR" = "y"; then
monitor_opt="--monitor"
else
@@ -189,15 +153,9 @@ function insert_modules_if_required {
action "Inserting llc module" modprobe llc
action "Inserting openvswitch module" modprobe openvswitch_mod
fi
if [ "$ENABLE_BRCOMPAT" = "y" ] && [ -n "$BRCOMPATD_PIDFILE" ] && ! lsmod | grep -q "brcompat_mod"; then
action "Inserting brcompat module" modprobe brcompat_mod
fi
}
function remove_modules {
if lsmod | grep -q "brcompat_mod"; then
action "Removing brcompat module" rmmod brcompat_mod.ko
fi
if lsmod | grep -q "openvswitch_mod"; then
action "Removing openvswitch module" rmmod openvswitch_mod.ko
fi
@@ -280,26 +238,14 @@ function start_ovsdb_server {
}
function start_vswitchd {
local fake_proc_net_opt=
if [ "$ENABLE_FAKE_PROC_NET" = "y" ]; then
fake_proc_net_opt="--fake-proc-net"
fi
local mlockall_opt=
if [ "$VSWITCHD_MLOCKALL" != "no" ]; then
mlockall_opt="--mlockall"
fi
start_daemon VSWITCHD "$vswitchd" $fake_proc_net_opt $mlockall_opt \
"$VSWITCHD_OVSDB_SERVER"
start_daemon VSWITCHD "$vswitchd" $mlockall_opt "$VSWITCHD_OVSDB_SERVER"
}
function start_brcompatd {
start_daemon BRCOMPATD "$brcompatd" \
--appctl-command="$appctl --target=/var/run/openvswitch/ovs-vswitchd.\`cat $VSWITCHD_PIDFILE\`.ctl %s" \
"$VSWITCHD_OVSDB_SERVER"
}
function stop_daemon {
local DAEMON=$1
local BINARY=$2
@@ -414,9 +360,6 @@ function start {
set_system_ids
start_vswitchd
if [ "${ENABLE_BRCOMPAT}" = "y" ] ; then
start_brcompatd
fi
if [ -f /etc/xensource-inventory ]; then
# Start daemon to monitor external ids
@@ -429,7 +372,6 @@ function start {
}
function stop {
stop_daemon BRCOMPATD "$brcompatd"
stop_daemon VSWITCHD "$vswitchd"
stop_daemon OVSDB_SERVER "$ovsdb_server"
if [ -e /var/run/openvswitch/ovs-external-ids.pid ]; then
@@ -510,20 +452,13 @@ case "$1" in
shift
strace -p $(cat "$VSWITCHD_PIDFILE") "$@"
;;
strace-brcompatd)
shift
strace -p $(cat "$BRCOMPATD_PIDFILE") "$@"
;;
status)
status -p "$OVSDB_SERVER_PIDFILE" ovsdb-server &&
status -p "$VSWITCHD_PIDFILE" ovs-vswitchd &&
(test "$ENABLE_BRCOMPAT" != "y" ||
status -p "$BRCOMPATD_PIDFILE" ovs-brcompatd)
status -p "$VSWITCHD_PIDFILE" ovs-vswitchd
;;
version)
/usr/sbin/ovsdb-server -V
/usr/sbin/ovs-vswitchd -V
/usr/sbin/ovs-brcompatd -V
;;
force-reload-kmod)
force_reload_kmod

View File

@@ -1,4 +1,4 @@
# Copyright (C) 2009, 2010 Nicira Networks, Inc.
# Copyright (C) 2009, 2010, 2011 Nicira Networks, Inc.
#
# Copying and distribution of this file, with or without modification,
# are permitted in any medium without royalty provided the copyright
@@ -16,8 +16,5 @@
if [ -e /var/run/openvswitch/ovsdb-server.pid ]; then
/usr/bin/ovs-appctl -t ovsdb-server vlog/reopen
fi
if [ -e /var/run/openvswitch/ovs-brcompatd.pid ]; then
/usr/bin/ovs-appctl -t ovs-brcompatd vlog/reopen
fi
endscript
}

View File

@@ -1,4 +1,4 @@
# Copyright (C) 2009, 2010 Nicira Networks, Inc.
# Copyright (C) 2009, 2010, 2011 Nicira Networks, Inc.
#
# Copying and distribution of this file, with or without modification,
# are permitted in any medium without royalty provided the copyright
@@ -42,7 +42,7 @@ function monitorlogs {
done
grep="$grep'"
fi
cmd="tail -F /var/log/messages /var/log/openvswitch/ovs-vswitchd.log /var/log/openvswitch/ovs-brcompatd.log /var/log/openvswitch/ovsdb-server /var/log/xensource.log $grep | tee /var/log/monitorlogs.out"
cmd="tail -F /var/log/messages /var/log/openvswitch/ovs-vswitchd.log /var/log/openvswitch/ovsdb-server /var/log/xensource.log $grep | tee /var/log/monitorlogs.out"
printf "cmd: $cmd\n"
eval "$cmd"
}

View File

@@ -145,10 +145,7 @@ remove_from_bridge()
# Nothing to do
;;
openvswitch)
# If ovs-brcompatd is running, it might already have deleted the
# port. Use --if-exists to suppress the error that would otherwise
# arise in that case.
$vsctl --timeout=30 -- --if-exists del-port $dev
$vsctl --timeout=30 -- del-port $dev
;;
esac
}

View File

@@ -75,8 +75,6 @@ install -m 755 xenserver/etc_xensource_scripts_vif \
$RPM_BUILD_ROOT/usr/share/openvswitch/scripts/vif
install -m 755 xenserver/usr_share_openvswitch_scripts_ovs-external-ids \
$RPM_BUILD_ROOT/usr/share/openvswitch/scripts/ovs-external-ids
install -m 755 xenserver/usr_share_openvswitch_scripts_refresh-xs-network-uuids \
$RPM_BUILD_ROOT/usr/share/openvswitch/scripts/refresh-xs-network-uuids
install -m 755 xenserver/usr_sbin_xen-bugtool \
$RPM_BUILD_ROOT/usr/share/openvswitch/scripts/xen-bugtool
install -m 755 xenserver/usr_share_openvswitch_scripts_sysconfig.template \
@@ -111,77 +109,6 @@ install -d -m 755 $RPM_BUILD_ROOT/var/lib/openvswitch
rm -rf $RPM_BUILD_ROOT
%post
if [ ! -f /etc/xensource-inventory ]; then
printf "XenSource inventory not present in /etc/xensource-inventory"
exit 1
fi
. /etc/xensource-inventory
if [ "$1" = "1" ]; then
if md5sum -c --status <<EOF
ca141d60061dcfdade73e75abc6529b5 /usr/sbin/brctl
b8e9835862ef1a9cec2a3f477d26c989 /etc/xensource/scripts/vif
51970ad613a3996d5997e18e44db47da /opt/xensource/libexec/interface-reconfigure
5654c8c36699fcc8744ca9cd5b855414 /usr/sbin/xen-bugtool
EOF
then
printf "\nVerified host scripts from XenServer 5.5.0.\n\n"
elif md5sum -c --status <<EOF
ca141d60061dcfdade73e75abc6529b5 /usr/sbin/brctl
b8e9835862ef1a9cec2a3f477d26c989 /etc/xensource/scripts/vif
51970ad613a3996d5997e18e44db47da /opt/xensource/libexec/interface-reconfigure
f6519085c2fc5f7bc4eccc294ed62000 /usr/sbin/xen-bugtool
EOF
then
printf "\nVerified host scripts from XenServer 5.5.0-24648p (Update 1)\n"
printf "or 5.5.0-25727p (Update 2).\n\n"
elif md5sum -c --status <<EOF
ca141d60061dcfdade73e75abc6529b5 /usr/sbin/brctl
02cf136237ed85fcbcc1efc15ce0591c /opt/xensource/libexec/interface-reconfigure
3a192ee70ebf2153c90051b3af95f331 /opt/xensource/libexec/InterfaceReconfigureBridge.py
f71cadf1464caefa7943de0ab47fdd8a /opt/xensource/libexec/InterfaceReconfigure.py
d70f08f235fb1bfd49a0580e440f15a0 /opt/xensource/libexec/InterfaceReconfigureVswitch.py
f5c85ca825b1e6f5a0845530981cd836 /etc/xensource/scripts/vif
facb851606f82ca2bcc760a4d91bbe33 /usr/sbin/xen-bugtool
EOF
then
printf "\nVerified host scripts from XenServer 5.5.900-29381p.\n\n"
else
cat <<EOF
The original XenServer scripts replaced by this package are not those
of any supported version of XenServer. This could lead to unexpected
behavior of your server. Unless you are sure you know what you are
doing, it is highly recommended that you remove this package
immediately after the install completes, which will restore the
XenServer scripts that you were previously using.
EOF
fi
fi
# On XenServer 5.5.0, we need refresh-xs-network-uuids to run whenever
# XAPI starts or restarts. (On XenServer 5.6.0, XAPI calls the
# "update" method of the vswitch-cfg-update plugin whenever it starts
# or restarts, so this is no longer necessary.)
if test "$PRODUCT_VERSION" = "5.5.0"; then
RNU=/usr/share/openvswitch/scripts/refresh-xs-network-uuids
XSS=/opt/xensource/libexec/xapi-startup-script
if test -e $XSS && (test ! -L $XSS || test "`readlink $XSS`" != $RNU); then
echo "$XSS is already in use, refusing to overwrite"
exit 1
fi
rm -f $XSS
ln -s $RNU $XSS
# If /etc/xensource/network.conf doesn't exist (it was added in 5.6.0),
# then interface-reconfigure will be unhappy when we run it below.
if test ! -e /etc/xensource/network.conf; then
echo bridge > /etc/xensource/network.conf
fi
fi
if test ! -e /var/xapi/network.dbcache; then
if test "$1" = 1; then
printf "Creating xapi database cache... "
@@ -302,12 +229,6 @@ fi
%postun
if [ "$1" = "0" ]; then # $1 = 1 for upgrade
. /etc/xensource-inventory
if test "$PRODUCT_VERSION" = "5.5.0"; then
XSS=/opt/xensource/libexec/xapi-startup-script
rm -f $XSS
fi
rm -f /usr/lib/xsconsole/plugins-base/XSFeatureVSwitch.pyc \
/usr/lib/xsconsole/plugins-base/XSFeatureVSwitch.pyo
@@ -344,13 +265,8 @@ if [ "$1" = "0" ]; then # $1 = 1 for upgrade
rm -f /etc/openvswitch/vswitchd.cacert
rm -f /var/xapi/network.dbcache
if test "$PRODUCT_VERSION" != "5.5.0"; then
# Configure system to use bridge
echo bridge > /etc/xensource/network.conf
else
# Get rid of network.conf entirely, to make the system pristine.
rm -f /etc/xensource/network.conf
fi
# Configure system to use bridge
echo bridge > /etc/xensource/network.conf
printf "\nYou MUST reboot the server now to complete the change to\n"
printf "standard Xen networking. Attempts to modify networking on the\n"
@@ -367,7 +283,6 @@ fi
/etc/logrotate.d/openvswitch
/etc/profile.d/openvswitch.sh
/lib/modules/%{xen_version}/kernel/extra/openvswitch/openvswitch_mod.ko
/lib/modules/%{xen_version}/kernel/extra/openvswitch/brcompat_mod.ko
/usr/share/openvswitch/python/ovs/__init__.py
/usr/share/openvswitch/python/ovs/daemon.py
/usr/share/openvswitch/python/ovs/db/__init__.py
@@ -391,7 +306,6 @@ fi
/usr/share/openvswitch/python/ovs/util.py
/usr/share/openvswitch/python/uuid.py
/usr/share/openvswitch/scripts/ovs-external-ids
/usr/share/openvswitch/scripts/refresh-xs-network-uuids
/usr/share/openvswitch/scripts/interface-reconfigure
/usr/share/openvswitch/scripts/InterfaceReconfigure.py
/usr/share/openvswitch/scripts/InterfaceReconfigureBridge.py
@@ -401,7 +315,6 @@ fi
/usr/share/openvswitch/scripts/sysconfig.template
/usr/share/openvswitch/scripts/ovs-save
/usr/share/openvswitch/vswitch.ovsschema
/usr/sbin/ovs-brcompatd
/usr/sbin/ovs-vswitchd
/usr/sbin/ovsdb-server
/usr/bin/ovs-appctl
@@ -419,7 +332,6 @@ fi
/usr/share/man/man1/ovsdb-tool.1.gz
/usr/share/man/man5/ovs-vswitchd.conf.db.5.gz
/usr/share/man/man8/ovs-appctl.8.gz
/usr/share/man/man8/ovs-brcompatd.8.gz
/usr/share/man/man8/ovs-dpctl.8.gz
/usr/share/man/man8/ovs-ofctl.8.gz
/usr/share/man/man8/ovs-parse-leaks.8.gz
@@ -429,7 +341,10 @@ fi
/usr/share/man/man8/ovs-vsctl.8.gz
/usr/share/man/man8/ovs-vswitchd.8.gz
/var/lib/openvswitch
%exclude /lib/modules/%{xen_version}/kernel/extra/openvswitch/brcompat_mod.ko
%exclude /usr/lib/xsconsole/plugins-base/*.py[co]
%exclude /usr/sbin/ovs-brcompatd
%exclude /usr/share/man/man8/ovs-brcompatd.8.gz
%exclude /usr/share/openvswitch/scripts/*.py[co]
%exclude /usr/share/openvswitch/python/*.py[co]
%exclude /usr/share/openvswitch/python/ovs/*.py[co]

View File

@@ -1,5 +1,5 @@
# Copyright (c) 2008,2009 Citrix Systems, Inc.
# Copyright (c) 2009,2010 Nicira Networks.
# Copyright (c) 2009,2010,2011 Nicira Networks.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License as published
@@ -465,10 +465,6 @@ class DatapathVswitch(Datapath):
dpname = pif_bridge_name(self._dp)
if pif_is_vlan(self._pif):
# XXX this is only needed on XS5.5, because XAPI misguidedly
# creates the fake bridge (via bridge ioctl) before it calls us.
vsctl_argv += ['--', '--if-exists', 'del-br', bridge]
# configure_datapath() set up the underlying datapath bridge.
# Stack a VLAN bridge on top of it.
vsctl_argv += ['--', '--may-exist', 'add-br',
@@ -550,11 +546,6 @@ class DatapathVswitch(Datapath):
bridge = pif_bridge_name(dp)
#nw = db().get_pif_record(self._pif)['network']
#nwrec = db().get_network_record(nw)
#vsctl_argv += ['# deconfigure network-uuids']
#vsctl_argv += ['--del-entry=bridge.%s.network-uuids=%s' % (bridge,nwrec['uuid'])]
log("deconfigure ipdev %s on %s" % (ipdev,bridge))
vsctl_argv += ["# deconfigure ipdev %s" % ipdev]
vsctl_argv += datapath_deconfigure_ipdev(ipdev)

View File

@@ -1,5 +1,5 @@
# Copyright (c) 2007-2010 Citrix Systems Inc.
# Copyright (c) 2009,2010 Nicira Networks.
# Copyright (c) 2009,2010,2011 Nicira Networks.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -109,10 +109,7 @@ class VSwitchControllerDialogue(Dialogue):
self.xs_version = data.host.software_version.product_version('')
pool = data.GetPoolForThisHost()
if pool is not None:
if self.xs_version == "5.5.0":
self.controller = pool.get("other_config", {}).get("vSwitchController", "")
else:
self.controller = pool.get("vswitch_controller", "")
self.controller = pool.get("vswitch_controller", "")
else:
self.controller = ""
@@ -125,8 +122,6 @@ class VSwitchControllerDialogue(Dialogue):
lambda: self.syncController()),
# ChoiceDef(Lang("Restart ovs-vswitchd"),
# lambda: self.restartService("vswitch")),
# ChoiceDef(Lang("Restart ovs-brcompatd"),
# lambda: self.restartService("vswitch-brcompatd"))
]
self.menu = Menu(self, None, Lang("Configure Open vSwitch"), choiceDefs)
@@ -250,13 +245,7 @@ class VSwitchControllerDialogue(Dialogue):
if len(pools) > 1:
XSLogFatal(Lang("More than one pool for host."))
return
if self.xs_version == "5.5.0":
key = "vSwitchController"
session.xenapi.pool.remove_from_other_config(pools[0], key)
if value != None:
session.xenapi.pool.add_to_other_config(pools[0], key, value)
else:
session.xenapi.pool.set_vswitch_controller(value)
session.xenapi.pool.set_vswitch_controller(value)
Data.Inst().Update()
def _updateActiveServers(self, session):
@@ -294,10 +283,7 @@ class XSFeatureVSwitch:
pool = data.GetPoolForThisHost()
if pool is not None:
if (xs_version == "5.5.0"):
dbController = pool.get("other_config", {}).get("vSwitchController", "")
else:
dbController = pool.get("vswitch_controller", "")
dbController = pool.get("vswitch_controller", "")
else:
dbController = ""
@@ -318,11 +304,6 @@ class XSFeatureVSwitch:
inPane.AddStatusField(Lang("ovsdb-server status", 20),
VSwitchService.Inst("openvswitch", "ovsdb-server").status())
# Only XenServer 5.5.0 runs ovs-brcompatd
if (xs_version == "5.5.0"):
inPane.AddStatusField(Lang("ovs-brcompatd status", 20),
VSwitchService.Inst("openvswitch", "ovs-brcompatd").status())
inPane.AddKeyHelpField( {
Lang("<Enter>") : Lang("Reconfigure"),
Lang("<F5>") : Lang("Refresh")

View File

@@ -156,12 +156,11 @@ XENSERVER_LOGS = \
[ VAR_LOG_DIR + x for x in
['xensource.log', 'audit.log', 'xenstored-access.log', 'SMlog', 'VMPRlog', 'xen/xenstored-trace.log',
'xen/xen-hotplug.log', 'xen/domain-builder-ng.log', 'squeezed.log',
'openvswitch/ovs-brcompatd.log', 'openvswitch/ovs-vswitchd.log', 'openvswitch/ovsdb-server.log' ] +
'openvswitch/ovs-vswitchd.log', 'openvswitch/ovsdb-server.log' ] +
[ f % n for n in range(1, 20) \
for f in ['xensource.log.%d', 'xensource.log.%d.gz','SMlog.%d', 'SMlog.%d.gz', 'VMPRlog.%d', 'VMPRlog.%d.gz',
'audit.log.%d', 'audit.log.%d.gz', 'xenstored-access.log.%d', 'xenstored-access.log.%d.gz', \
'xen/xenstored-access.log.%d', 'xen/xenstored-access.log.%d.gz', 'squeezed.log.%d', \
'openvswitch/ovs-brcompatd.log.%d', 'openvswitch/ovs-brcompatd.log.%d.gz', \
'openvswitch/ovs-vswitchd.log.%d', 'openvswitch/ovs-vswitchd.log.%d.gz', \
'openvswitch/ovsdb-server.log.%d', 'openvswitch/ovsdb-server.log.%d.gz']]] \
+ glob.glob('/tmp/qemu.[0-9]*')

View File

@@ -1,5 +1,5 @@
#!/usr/bin/python
# Copyright (c) 2009, 2010 Nicira Networks
# Copyright (c) 2009, 2010, 2011 Nicira Networks
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -17,8 +17,7 @@
# A daemon to monitor the external_ids columns of the Bridge and
# Interface OVSDB tables. Its primary responsibility is to set the
# "bridge-id" and "iface-id" keys in the Bridge and Interface tables,
# respectively. It also looks for the use of "network-uuids" in the
# Bridge table and duplicates its value to the preferred "xs-network-uuids".
# respectively.
import getopt
import logging, logging.handlers
@@ -125,14 +124,6 @@ def set_external_id(table, record, key, value):
col = 'external-ids:"' + key + '"="' + value + '"'
call_vsctl(["set", table, record, col])
# XAPI on XenServer 5.6 uses the external-id "network-uuids" for internal
# networks, but we now prefer "xs-network-uuids". Look for its use and
# write our preferred external-id.
def update_network_uuids(name, ids):
if ids["network-uuids"] and not ids["xs-network-uuids"]:
set_external_id("Bridge", name, "xs-network-uuids",
ids["network-uuids"])
def update_fail_mode(name):
rec = get_network_by_bridge(name)
@@ -271,9 +262,7 @@ def main(argv):
for rec in idl.data["Bridge"].itervalues():
name = rec.name.as_scalar()
xs_network_uuids = rec.external_ids.get("xs-network-uuids")
network_uuids = rec.external_ids.get("network-uuids")
new_bridges[name] = {"xs-network-uuids": xs_network_uuids,
"network-uuids": network_uuids}
new_bridges[name] = {"xs-network-uuids": xs_network_uuids}
new_interfaces = {}
for rec in idl.data["Interface"].itervalues():
@@ -283,10 +272,7 @@ def main(argv):
if bridges != new_bridges:
for name,ids in new_bridges.items():
# Network uuids shouldn't change in the life of a bridge,
# so only check for "network-uuids" on creation.
if name not in bridges:
update_network_uuids(name, ids)
update_fail_mode(name)
if (name not in bridges) or (bridges[name] != ids):

View File

@@ -1,26 +1,12 @@
### Configuration options for openvswitch
# Copyright (C) 2009, 2010 Nicira Networks, Inc.
# Copyright (C) 2009, 2010, 2011 Nicira Networks, Inc.
#
# Copying and distribution of this file, with or without modification,
# are permitted in any medium without royalty provided the copyright
# notice and this notice are preserved. This file is offered as-is,
# without warranty of any kind.
# ENABLE_BRCOMPAT: If 'y' than emulate linux bridging interfaces
# using the brcompat kernel module and ovs-brcompatd daemon
# This is required and enabled by default for XenServer 5.5.0,
# and not required and not enabled by default for later versions.
# ENABLE_BRCOMPAT=?
# ENABLE_FAKE_PROC_NET: If 'y' then emulate linux bonding and vlan
# files in /proc as if the bonding and vlan demultiplexing done in
# ovs-vswitchd were being implemented using existing Linux mechanisms.
# This is useful in some cases when replacing existing solutions.
# This is required and enabled by default for XenServer 5.5.0,
# and not required and not enabled by default for later versions.
# ENABLE_FAKE_PROC_NET=?
# ENABLE_MONITOR: If 'y' then monitor daemon processes and restart them
# if they die due to an error signal.
# ENABLE_MONITOR=y
@@ -174,65 +160,3 @@
# This option's value is honored only when VSWITCHD_VALGRIND_LOG is
# set to a nonempty string.
# VSWITCHD_VALGRIND_OPT=""
# BRCOMPATD_PIDFILE: File in which to store the pid of the running
# ovs-brcompatd (the Linux bridge compatibility daemon for ovs-vswitchd).
# If this is the empty string, ovs-brcompatd will not be started and
# the brcompat_mod kernel module will not be inserted. Note that
# the default is to use brcompat!
# BRCOMPATD_PIDFILE=/var/run/openvswitch/ovs-brcompatd.pid
# BRCOMPATD_RUN_DIR: Set the directory in which ovs-brcompatd should be
# run. This mainly affects where core files will be placed.
# BRCOMPATD_RUN_DIR=/var/xen/openvswitch
# BRCOMPATD_PRIORITY: "nice" priority at which to run ovs-vswitchd and related
# processes.
# BRCOMPATD_PRIORITY=-10
# BRCOMPATD_LOGFILE: File to send the FILE_LOGLEVEL log messages to.
# BRCOMPATD_LOGFILE=/var/log/openvswitch/ovs-brcompatd.log
# BRCOMPATD_FILE_LOGLEVEL: Log level at which to log into the
# BRCOMPATD_LOG file. If this is null or not set the logfile will
# not be created and nothing will be sent to it. This is the
# default. The available options are: EMER, WARN, INFO and DBG.
# BRCOMPATD_FILE_LOGLEVEL=""
# BRCOMPATD_SYSLOG_LOGLEVEL: Log level at which to log into syslog. If
# this is null or not set the default is to log to syslog
# emergency and warning level messages only.
# BRCOMPATD_SYSLOG_LOGLEVEL="WARN"
# BRCOMPATD_MEMLEAK_LOGFILE: File for logging memory leak data.
# Enabling this option will slow ovs-brcompatd significantly. Do not
# enable it except to debug a suspected memory leak. Use the
# ovs-parse-leaks utility included with Open vSwitch to parse the
# log file. For best results, you also need debug symbols.
# BRCOMPATD_MEMLEAK_LOGFILE=""
# BRCOMPATD_STRACE_LOG: File for logging strace output.
# If this is set to a nonempty string, then ovs-brcompatd will run
# under strace, whose output will be logged to the specified file.
# Enabling this option will slow brcompatd significantly.
# BRCOMPATD_STRACE_LOG and BRCOMPATD_VALGRIND_LOG are mutually exclusive.
# BRCOMPATD_STRACE_LOG=""
# BRCOMPATD_STRACE_OPT: Options to pass to strace.
# This option's value is honored only when BRCOMPATD_STRACE_LOG is
# set to a nonempty string.
# BRCOMPATD_STRACE_OPT=""
# BRCOMPATD_VALGRIND_LOG: File for logging valgrind output.
# If this is set to a nonempty string, then ovs-brcompatd will run
# under valgrind, whose output will be logged to the specified file.
# Enabling this option will slow brcompatd by 100X or more.
# valgrind is not installed by default on XenServer systems; you must
# install it by hand to usefully enable this option.
# BRCOMPATD_STRACE_LOG and BRCOMPATD_VALGRIND_LOG are mutually exclusive.
# BRCOMPATD_VALGRIND_LOG=""
# BRCOMPATD_VALGRIND_OPT: Options to pass to valgrind.
# This option's value is honored only when BRCOMPATD_VALGRIND_LOG is
# set to a nonempty string.
# BRCOMPATD_VALGRIND_OPT=""