From d7150e9bbce54479028c5c744d5648ae530925ea Mon Sep 17 00:00:00 2001 From: Maru Newby Date: Tue, 23 Apr 2013 06:16:11 +0000 Subject: [PATCH] Add configurable use of veths with Quantum+OVS. * This patch adds the ability to configure use of veths with OVS via the Q_OVS_USE_VETH variable. The use of veths with OVS is required to support namespaces on RHEL. * Supports bug 1171727 Change-Id: I5f557d659684ead99a3e5e2b4df787699d9d3f05 --- lib/quantum | 7 +++++++ lib/quantum_plugins/services/agent_loadbalancer | 5 +++++ 2 files changed, 12 insertions(+) diff --git a/lib/quantum b/lib/quantum index 96ccf206c9..293ef3af3c 100644 --- a/lib/quantum +++ b/lib/quantum @@ -82,6 +82,8 @@ Q_ADMIN_USERNAME=${Q_ADMIN_USERNAME:-quantum} Q_AUTH_STRATEGY=${Q_AUTH_STRATEGY:-keystone} # Use namespace or not Q_USE_NAMESPACE=${Q_USE_NAMESPACE:-True} +# RHEL's support for namespaces requires using veths with ovs +Q_OVS_USE_VETH=${Q_OVS_USE_VETH:-False} Q_USE_ROOTWRAP=${Q_USE_ROOTWRAP:-True} # Meta data IP Q_META_DATA_IP=${Q_META_DATA_IP:-$HOST_IP} @@ -665,6 +667,11 @@ function _quantum_commentout_keystone_authtoken() { } function _quantum_setup_interface_driver() { + + # ovs_use_veth needs to be set before the plugin configuration + # occurs to allow plugins to override the setting. + iniset $1 DEFAULT ovs_use_veth $Q_OVS_USE_VETH + quantum_plugin_setup_interface_driver $1 } diff --git a/lib/quantum_plugins/services/agent_loadbalancer b/lib/quantum_plugins/services/agent_loadbalancer index b6528b0e84..ee3faa5bb0 100644 --- a/lib/quantum_plugins/services/agent_loadbalancer +++ b/lib/quantum_plugins/services/agent_loadbalancer @@ -34,6 +34,11 @@ function quantum_agent_lbaas_configure_agent() { cp $QUANTUM_DIR/etc/lbaas_agent.ini $LBAAS_AGENT_CONF_FILENAME + iniset $LBAAS_AGENT_CONF_FILENAME DEFAULT use_namespaces $Q_USE_NAMESPACE + # ovs_use_veth needs to be set before the plugin configuration + # occurs to allow plugins to override the setting. + iniset $LBAAS_AGENT_CONF_FILENAME DEFAULT ovs_use_veth $Q_OVS_USE_VETH + quantum_plugin_setup_interface_driver $LBAAS_AGENT_CONF_FILENAME if is_fedora; then