Add support for setting extra networking configuration options.
Add support for generically setting arguments for OpenStack Networking for both the server and agent. This is done using Q_SRV_EXTRA_OPTS for the server, which let you place settings in the "OVS" or "LINUX_BRIDGE" sections of the plugin configuration file. For the agent, two variables are defined: Q_AGENT_EXTRA_AGENT_OPTS lets you set items in the "AGENT" section of the plugin configuration file, and Q_AGENT_EXTRA_SRV_OPTS lets you set things in the "OVS" or "LINUX_BRIDGE" sections of the plugin configuration file. Implements blueprint devstack-quantum-config. Change-Id: I9ba44b21231f88cda1bcc5e3389c7875f03d8145
This commit is contained in:
parent
c9b0f1abaa
commit
ebfac64d2a
13
README.md
13
README.md
@ -122,6 +122,19 @@ In order to enable Quantum a single node setup, you'll need the following settin
|
||||
|
||||
Then run `stack.sh` as normal.
|
||||
|
||||
devstack supports adding specific Quantum configuration flags to both the Open vSwitch and LinuxBridge plugin configuration files. To make use of this feature, the following variables are defined and can be configured in your `localrc` file:
|
||||
|
||||
Variable Name Plugin Config File Section Modified
|
||||
-------------------------------------------------------------------------------------
|
||||
Q_SRV_EXTRA_OPTS `OVS` (for Open Vswitch) or `LINUX_BRIDGE` (for LinuxBridge)
|
||||
Q_AGENT_EXTRA_AGENT_OPTS AGENT
|
||||
Q_AGENT_EXTRA_SRV_OPTS `OVS` (for Open Vswitch) or `LINUX_BRIDGE` (for LinuxBridge)
|
||||
|
||||
An example of using the variables in your `localrc` is below:
|
||||
|
||||
Q_AGENT_EXTRA_AGENT_OPTS=(tunnel_type=vxlan vxlan_udp_port=8472)
|
||||
Q_SRV_EXTRA_OPTS=(tenant_network_type=vxlan)
|
||||
|
||||
# Tempest
|
||||
|
||||
If tempest has been successfully configured, a basic set of smoke tests can be run as follows:
|
||||
|
@ -52,6 +52,10 @@
|
||||
# Quantum.
|
||||
#
|
||||
# With Quantum networking the NETWORK_MANAGER variable is ignored.
|
||||
#
|
||||
# To enable specific configuration options for either the Open vSwitch or
|
||||
# LinuxBridge plugin, please see the top level README file under the
|
||||
# Quantum section.
|
||||
|
||||
# Save trace setting
|
||||
XTRACE=$(set +o | grep xtrace)
|
||||
|
@ -35,6 +35,14 @@ function quantum_plugin_configure_service() {
|
||||
else
|
||||
iniset /$Q_PLUGIN_CONF_FILE SECURITYGROUP firewall_driver quantum.agent.firewall.NoopFirewallDriver
|
||||
fi
|
||||
|
||||
# Define extra "LINUX_BRIDGE" configuration options when q-svc is configured by defining
|
||||
# the array ``Q_SRV_EXTRA_OPTS``.
|
||||
# For Example: ``Q_SRV_EXTRA_OPTS=(foo=true bar=2)``
|
||||
for I in "${Q_SRV_EXTRA_OPTS[@]}"; do
|
||||
# Replace the first '=' with ' ' for iniset syntax
|
||||
iniset /$Q_PLUGIN_CONF_FILE LINUX_BRIDGE ${I/=/ }
|
||||
done
|
||||
}
|
||||
|
||||
function has_quantum_plugin_security_group() {
|
||||
|
@ -47,6 +47,20 @@ function quantum_plugin_configure_plugin_agent() {
|
||||
iniset /$Q_PLUGIN_CONF_FILE SECURITYGROUP firewall_driver quantum.agent.firewall.NoopFirewallDriver
|
||||
fi
|
||||
AGENT_BINARY="$QUANTUM_DIR/bin/quantum-linuxbridge-agent"
|
||||
# Define extra "AGENT" configuration options when q-agt is configured by defining
|
||||
# the array ``Q_AGENT_EXTRA_AGENT_OPTS``.
|
||||
# For Example: ``Q_AGENT_EXTRA_AGENT_OPTS=(foo=true bar=2)``
|
||||
for I in "${Q_AGENT_EXTRA_AGENT_OPTS[@]}"; do
|
||||
# Replace the first '=' with ' ' for iniset syntax
|
||||
iniset /$Q_PLUGIN_CONF_FILE AGENT ${I/=/ }
|
||||
done
|
||||
# Define extra "LINUX_BRIDGE" configuration options when q-agt is configured by defining
|
||||
# the array ``Q_AGENT_EXTRA_SRV_OPTS``.
|
||||
# For Example: ``Q_AGENT_EXTRA_SRV_OPTS=(foo=true bar=2)``
|
||||
for I in "${Q_AGENT_EXTRA_SRV_OPTS[@]}"; do
|
||||
# Replace the first '=' with ' ' for iniset syntax
|
||||
iniset /$Q_PLUGIN_CONF_FILE LINUX_BRIDGE ${I/=/ }
|
||||
done
|
||||
}
|
||||
|
||||
function quantum_plugin_setup_interface_driver() {
|
||||
|
@ -42,6 +42,14 @@ function quantum_plugin_configure_service() {
|
||||
fi
|
||||
|
||||
_quantum_ovs_base_configure_firewall_driver
|
||||
|
||||
# Define extra "OVS" configuration options when q-svc is configured by defining
|
||||
# the array ``Q_SRV_EXTRA_OPTS``.
|
||||
# For Example: ``Q_SRV_EXTRA_OPTS=(foo=true bar=2)``
|
||||
for I in "${Q_SRV_EXTRA_OPTS[@]}"; do
|
||||
# Replace the first '=' with ' ' for iniset syntax
|
||||
iniset /$Q_PLUGIN_CONF_FILE OVS ${I/=/ }
|
||||
done
|
||||
}
|
||||
|
||||
function has_quantum_plugin_security_group() {
|
||||
|
@ -102,6 +102,20 @@ function quantum_plugin_configure_plugin_agent() {
|
||||
# Set root wrap
|
||||
iniset "/$Q_PLUGIN_CONF_FILE.domU" AGENT root_helper "$Q_RR_COMMAND"
|
||||
fi
|
||||
# Define extra "AGENT" configuration options when q-agt is configured by defining
|
||||
# defining the array ``Q_AGENT_EXTRA_AGENT_OPTS``.
|
||||
# For Example: ``Q_AGENT_EXTRA_AGENT_OPTS=(foo=true bar=2)``
|
||||
for I in "${Q_AGENT_EXTRA_AGENT_OPTS[@]}"; do
|
||||
# Replace the first '=' with ' ' for iniset syntax
|
||||
iniset /$Q_PLUGIN_CONF_FILE AGENT ${I/=/ }
|
||||
done
|
||||
# Define extra "OVS" configuration options when q-agt is configured by defining
|
||||
# defining the array ``Q_AGENT_EXTRA_SRV_OPTS``.
|
||||
# For Example: ``Q_AGENT_EXTRA_SRV_OPTS=(foo=true bar=2)``
|
||||
for I in "${Q_AGENT_EXTRA_SRV_OPTS[@]}"; do
|
||||
# Replace the first '=' with ' ' for iniset syntax
|
||||
iniset /$Q_PLUGIN_CONF_FILE OVS ${I/=/ }
|
||||
done
|
||||
}
|
||||
|
||||
function quantum_plugin_setup_interface_driver() {
|
||||
|
Loading…
Reference in New Issue
Block a user