From 74010ff9869cb6e1232a4aa1a3b8de971c929040 Mon Sep 17 00:00:00 2001 From: Fang Fenghua <449171342@qq.com> Date: Sun, 10 May 2015 22:45:36 +0800 Subject: Add neutron-openvswitch-agent contianer Implements the neutron-openvswitch-agent plugin container. Co-Authored-By: Sam Yaple Partially Implements blueprint: openvswitch-container Change-Id: Ie0fa318541e16d730b7007d3620c7873e898ed4a --- .../neutron/neutron-openvswitch-agent/check.sh | 13 +++++++ .../neutron/neutron-openvswitch-agent/start.sh | 45 ++++++++++++++++++++++ 2 files changed, 58 insertions(+) create mode 100755 docker/common/neutron/neutron-openvswitch-agent/check.sh create mode 100755 docker/common/neutron/neutron-openvswitch-agent/start.sh (limited to 'docker/common') diff --git a/docker/common/neutron/neutron-openvswitch-agent/check.sh b/docker/common/neutron/neutron-openvswitch-agent/check.sh new file mode 100755 index 000000000..087bf4fdb --- /dev/null +++ b/docker/common/neutron/neutron-openvswitch-agent/check.sh @@ -0,0 +1,13 @@ +#!/bin/bash + +RES=0 + +check=$(/usr/bin/neutron agent-list | awk '/ vSwitch / {print $10}') +error="ERROR: Neutron OpenvSwitch agent is not alive." + +if [[ $check != ":-)" ]]; then + echo $error >&2 + RES=1 +fi + +exit $RES diff --git a/docker/common/neutron/neutron-openvswitch-agent/start.sh b/docker/common/neutron/neutron-openvswitch-agent/start.sh new file mode 100755 index 000000000..8c4d1a037 --- /dev/null +++ b/docker/common/neutron/neutron-openvswitch-agent/start.sh @@ -0,0 +1,45 @@ +#!/bin/bash + +set -e + +. /opt/kolla/config-neutron.sh +. /opt/kolla/config-sudoers.sh + +: ${NEUTRON_FLAT_NETWORK_NAME:=physnet1} +: ${NEUTRON_FLAT_NETWORK_INTERFACE:=eth1} + +check_required_vars PUBLIC_IP NEUTRON_FLAT_NETWORK_NAME \ + NEUTRON_FLAT_NETWORK_INTERFACE + +if ! ovs-vsctl show |grep ${NEUTRON_FLAT_NETWORK_INTERFACE} > /dev/null; then + ovs-vsctl add-br ${NEUTRON_FLAT_NETWORK_INTERFACE} +fi + +cfg=/etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini + +# Configure ml2_conf.ini +if [[ ${TYPE_DRIVERS} =~ vxlan ]]; then + crudini --set $cfg \ + vxlan \ + local_ip \ + "${PUBLIC_IP}" +fi + +crudini --set $cfg \ + ovs \ + bridge_mappings \ + "${NEUTRON_FLAT_NETWORK_NAME}:${NEUTRON_FLAT_NETWORK_INTERFACE}" + +crudini --set $cfg \ + ovs \ + tenant_network_type \ + "${TENANT_NETWORK_TYPES}" + +if [[ ${TENANT_NETWORK_TYPES} =~ "vlan" ]];then + crudini --set $cfg \ + ovs \ + network_vlan_ranges \ + "${NEUTRON_VLAN_NETWORK_NAME}:${NEUTRON_NETWORK_VLAN_RANGES}" +fi + +exec /usr/bin/neutron-openvswitch-agent --config-file /etc/neutron/neutron.conf --config-file $cfg -- cgit v1.2.3