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:
committed by
Andrew Evans
parent
54f16a10f5
commit
34edeccfd8
@@ -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"
|
||||
|
@@ -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
|
||||
|
@@ -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
|
||||
|
@@ -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
|
||||
|
@@ -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
|
||||
}
|
||||
|
@@ -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"
|
||||
}
|
||||
|
@@ -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
|
||||
}
|
||||
|
@@ -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]
|
||||
|
@@ -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)
|
||||
|
@@ -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")
|
||||
|
@@ -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]*')
|
||||
|
@@ -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):
|
||||
|
@@ -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=""
|
||||
|
Reference in New Issue
Block a user