summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Polenchuk <mpolenchuk@mirantis.com>2017-11-14 16:33:16 +0400
committerMichael Polenchuk <mpolenchuk@mirantis.com>2017-11-16 11:54:57 +0000
commitdf8ae6cc0dcef13ee06aec9b86a8adc5c0294c75 (patch)
tree5060b08186e014ae311110fa43741a9201a8a0ff
parent07d7e4c43e082fdfae24779ceaee800fb8feeec4 (diff)
Update opendaylight/neutron patch
Align opendaylight support patch with latest neutron formula. Employ native ML2 backend/engine option as is instead of bringing in the "opendaylight" keyword into reclass model. Unfreeze the maas & neutron formulas versions. Change-Id: I2807dcf9f83b01d453bca6453524f840c378972f Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com> (cherry picked from commit 1a8153f6391bdde1bab21f7831841f5b6070832d)
-rw-r--r--mcp/patches/0001-opendaylight-formula-neutron.patch117
-rw-r--r--mcp/patches/reclass-system-salt-model/0001-Bring-in-opendaylight-support.patch31
-rw-r--r--mcp/reclass/classes/cluster/baremetal-mcp-ocata-common/infra/config.yml9
-rw-r--r--mcp/reclass/classes/cluster/virtual-mcp-ocata-common/infra/config.yml9
4 files changed, 42 insertions, 124 deletions
diff --git a/mcp/patches/0001-opendaylight-formula-neutron.patch b/mcp/patches/0001-opendaylight-formula-neutron.patch
index bbdd92b89..157271aa3 100644
--- a/mcp/patches/0001-opendaylight-formula-neutron.patch
+++ b/mcp/patches/0001-opendaylight-formula-neutron.patch
@@ -13,7 +13,7 @@ Subject: [PATCH] Bring in opendaylight support
Change-Id: Ie9073fafccba336f94b1996bd85c98d7a7f5060b
diff --git a/neutron/files/ocata/dhcp_agent.ini b/neutron/files/ocata/dhcp_agent.ini
-index d327e64..ba5f933 100644
+index d327e64..739dddf 100644
--- a/neutron/files/ocata/dhcp_agent.ini
+++ b/neutron/files/ocata/dhcp_agent.ini
@@ -1,3 +1,8 @@
@@ -29,29 +29,30 @@ index d327e64..ba5f933 100644
# this value will force the DHCP server to append specific host routes to the DHCP request. If this option is set, then the metadata service
# will be activated for all the networks. (boolean value)
#force_metadata = false
-+{% if neutron.backend.get('router', 'False') %}force_metadata = True{% endif %}
++{% if neutron.backend.router is defined %}force_metadata = True{% endif %}
# Allows for serving metadata requests coming from a dedicated metadata access network whose CIDR is 169.254.169.254/16 (or larger prefix),
# and is connected to a Neutron router from which the VMs send metadata:1 request. In this case DHCP Option 121 will not be injected in VMs,
diff --git a/neutron/files/ocata/ml2_conf.ini b/neutron/files/ocata/ml2_conf.ini
-index 5ecafe3..48cec1f 100644
+index b61e313..02da3b1 100644
--- a/neutron/files/ocata/ml2_conf.ini
+++ b/neutron/files/ocata/ml2_conf.ini
-@@ -131,7 +131,7 @@ tenant_network_types = {{ server.backend.tenant_network_types }}
- # An ordered list of networking mechanism driver entrypoints to be loaded from
- # the neutron.ml2.mechanism_drivers namespace. (list value)
- #mechanism_drivers =
--mechanism_drivers ={%- for backend_name, mechanism in server.backend.get('mechanism', {}).iteritems() %}{{ mechanism.driver }},{%- endfor %}l2population
-+mechanism_drivers ={%- for backend_name, mechanism in server.backend.get('mechanism', {}).iteritems() %}{{ mechanism.driver }}{%- endfor %}{%- if server.backend.engine == "ml2" %},l2population{%- endif %}
-
- # An ordered list of extension driver entrypoints to be loaded from the
- # neutron.ml2.extension_drivers namespace. For example: extension_drivers =
-@@ -272,3 +272,11 @@ enable_security_group = True
- # Use ipset to speed-up the iptables based security groups. Enabling ipset
- # support requires that ipset is installed on L2 agent node. (boolean value)
- #enable_ipset = true
+@@ -134,7 +134,8 @@ tenant_network_types = {{ server.backend.tenant_network_types }}
+ {%- for mechanism_name, mechanism in server.get('backend', {}).get('mechanism', []).items() %}
+ {%- do mechanism_drivers.append(mechanism.get('driver')) if 'driver' in mechanism %}
+ {%- endfor %}
+-{%- if "vxlan" in server.backend.tenant_network_types %}
++{%- set opendaylight_enabled = true if 'opendaylight' in mechanism_drivers|join else false %}
++{%- if "vxlan" in server.backend.tenant_network_types and not opendaylight_enabled %}
+ {%- do mechanism_drivers.append('l2population') %}
+ {%- endif %}
+ mechanism_drivers = {{ ','.join(mechanism_drivers) }}
+@@ -311,3 +312,11 @@ ovn_nb_connection = tcp:{{ server.controller_vip }}:6641
+ ovn_sb_connection = tcp:{{ server.controller_vip }}:6642
+ ovn_l3_scheduler = leastloaded
+ {%- endif %}
+
-+{%- if server.backend.engine == "opendaylight" %}
++{%- if opendaylight_enabled %}
+[ml2_odl]
+port_binding_controller = pseudo-agentdb-binding
+url = http://{{ server.backend.host }}:{{ server.backend.rest_api_port }}/controller/nb/v2/neutron
@@ -59,20 +60,15 @@ index 5ecafe3..48cec1f 100644
+password = {{ server.backend.password }}
+{%- endif %}
diff --git a/neutron/files/ocata/neutron-generic.conf.Debian b/neutron/files/ocata/neutron-generic.conf.Debian
-index 123386d..eeaa3f4 100644
+index 123386d..85b8076 100644
--- a/neutron/files/ocata/neutron-generic.conf.Debian
+++ b/neutron/files/ocata/neutron-generic.conf.Debian
-@@ -33,11 +33,11 @@ state_path = /var/lib/neutron
- #auth_strategy = keystone
- auth_strategy = keystone
-
--{% if neutron.backend.engine == "ml2" %}
-+{% if neutron.backend.engine in ["ml2", "opendaylight"] %}
+@@ -37,7 +37,7 @@ auth_strategy = keystone
core_plugin = neutron.plugins.ml2.plugin.Ml2Plugin
-service_plugins =neutron.services.l3_router.l3_router_plugin.L3RouterPlugin,neutron.services.metering.metering_plugin.MeteringPlugin
-+service_plugins = {{ neutron.backend.get('router', 'router')}},metering
++service_plugins = {{ neutron.backend.get('router', 'router')}}, metering
{% endif %}
@@ -81,66 +77,34 @@ index 123386d..eeaa3f4 100644
# cipher list format. (string value)
#ciphers = <None>
+
-+{%- if neutron.backend.engine == "opendaylight" %}
++{%- if neutron.backend.ovsdb_connection is defined %}
+[ovs]
+ovsdb_connection = {{ neutron.backend.ovsdb_connection }}
+{%- endif %}
-diff --git a/neutron/files/ocata/neutron-server b/neutron/files/ocata/neutron-server
-index 54f6ceb..1682ee0 100644
---- a/neutron/files/ocata/neutron-server
-+++ b/neutron/files/ocata/neutron-server
-@@ -7,10 +7,10 @@
- # neutron.conf
- #NEUTRON_PLUGIN_CONFIG="/etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini"
-
--{%- if server.backend.engine == "ml2" %}
-+{%- if server.backend.engine in ["ml2", "opendaylight"] %}
- NEUTRON_PLUGIN_CONFIG="/etc/neutron/plugins/ml2/ml2_conf.ini"
- {%- endif %}
-
- {%- if server.backend.engine == "contrail" %}
- NEUTRON_PLUGIN_CONFIG="/etc/neutron/plugins/opencontrail/ContrailPlugin.ini"
--{%- endif %}
-\ No newline at end of file
-+{%- endif %}
diff --git a/neutron/files/ocata/neutron-server.conf.Debian b/neutron/files/ocata/neutron-server.conf.Debian
-index 049544b..4e68567 100644
+index 79376a2..c9630b8 100644
--- a/neutron/files/ocata/neutron-server.conf.Debian
+++ b/neutron/files/ocata/neutron-server.conf.Debian
-@@ -39,11 +39,11 @@ api_extensions_path = extensions:/usr/lib/python2.7/dist-packages/neutron_plugin
- core_plugin = neutron_plugin_contrail.plugins.opencontrail.contrail_plugin.NeutronPluginContrailCoreV2
-
- service_plugins = neutron_plugin_contrail.plugins.opencontrail.loadbalancer.v2.plugin.LoadBalancerPluginV2
--{% elif server.backend.engine == "ml2" %}
-+{% elif server.backend.engine in ["ml2", "opendaylight"] %}
-
- core_plugin = neutron.plugins.ml2.plugin.Ml2Plugin
+@@ -50,7 +50,7 @@ core_plugin = neutron.plugins.ml2.plugin.Ml2Plugin
+ {% set l3_plugin = 'networking_ovn.l3.l3_ovn.OVNL3RouterPlugin' %}
+ {% endif %}
--service_plugins =neutron.services.l3_router.l3_router_plugin.L3RouterPlugin,neutron.services.metering.metering_plugin.MeteringPlugin
-+service_plugins = {{ server.backend.get('router', 'router')}},metering
+-service_plugins ={{ l3_plugin }}, neutron.services.metering.metering_plugin.MeteringPlugin
++service_plugins = {{ server.backend.get('router', l3_plugin)}}, metering
{%- if server.lbaas is defined -%},lbaasv2{%- endif -%}
{%- if fwaas.get('enabled', False) -%},{{ fwaas[fwaas.api_version]['service_plugin'] }}{%- endif -%}
{%- if server.get('qos', 'True') -%},neutron.services.qos.qos_plugin.QoSPlugin{%- endif -%}
-@@ -838,7 +838,7 @@ allow_headers = {{ server.cors.allow_headers }}
- # Deprecated group/name - [DEFAULT]/sql_connection
- # Deprecated group/name - [DATABASE]/sql_connection
- # Deprecated group/name - [sql]/connection
--{% if server.backend.engine == "ml2" %}
-+{% if server.backend.engine in ["ml2", "opendaylight"] %}
- connection = {{ server.database.engine }}+pymysql://{{ server.database.user }}:{{ server.database.password }}@{{ server.database.host }}/{{ server.database.name }}?charset=utf8
- {% else %}
- connection = sqlite:////var/lib/neutron/neutron.sqlite
-@@ -2217,3 +2217,8 @@ service_provider = LOADBALANCERV2:Opencontrail:neutron_plugin_contrail.plugins.o
- {% include "neutron/files/"+server.version+"/ContrailPlugin.ini" %}
-
- {% endif %}
+@@ -2245,3 +2245,8 @@ username = {{ server.identity.user }}
+ password = {{ server.identity.password }}
+ auth_url=http://{{ server.identity.host }}:35357
+ {%- endif %}
+
-+{%- if server.backend.engine == "opendaylight" %}
++{%- if server.backend.ovsdb_connection is defined %}
+[ovs]
+ovsdb_connection = {{ server.backend.ovsdb_connection }}
+{%- endif %}
diff --git a/neutron/gateway.sls b/neutron/gateway.sls
-index 96d7e9f..65386b4 100644
+index 81513d8..7ec9b91 100644
--- a/neutron/gateway.sls
+++ b/neutron/gateway.sls
@@ -32,6 +32,7 @@ neutron_gateway_packages:
@@ -151,16 +115,3 @@ index 96d7e9f..65386b4 100644
- require:
- pkg: neutron_gateway_packages
-diff --git a/neutron/server.sls b/neutron/server.sls
-index eff9fb8..cb9d622 100644
---- a/neutron/server.sls
-+++ b/neutron/server.sls
-@@ -72,7 +72,7 @@ neutron_server_service:
-
- {%- endif %}
-
--{% if server.backend.engine == "ml2" %}
-+{% if server.backend.engine in ["ml2", "opendaylight"] %}
-
- /etc/neutron/plugins/ml2/ml2_conf.ini:
- file.managed:
diff --git a/mcp/patches/reclass-system-salt-model/0001-Bring-in-opendaylight-support.patch b/mcp/patches/reclass-system-salt-model/0001-Bring-in-opendaylight-support.patch
index b223f0515..cc2200679 100644
--- a/mcp/patches/reclass-system-salt-model/0001-Bring-in-opendaylight-support.patch
+++ b/mcp/patches/reclass-system-salt-model/0001-Bring-in-opendaylight-support.patch
@@ -11,25 +11,13 @@ Date: Thu, 29 Jun 2017 12:22:42 +0400
Subject: [PATCH] Bring in opendaylight support
Change-Id: I3efec9a8b586a6c75b1c1635ad2a7024d73d9ad2
----
- neutron/control/opendaylight/cluster.yml | 18 ++++++++++++++++++
- neutron/control/opendaylight/single.yml | 16 ++++++++++++++++
- neutron/gateway/opendaylight/single.yml | 8 ++++++++
- opendaylight/server/single.yml | 2 ++
- reclass/storage/system/opendaylight_control_single.yml | 13 +++++++++++++
- 5 files changed, 57 insertions(+)
- create mode 100644 neutron/control/opendaylight/cluster.yml
- create mode 100644 neutron/control/opendaylight/single.yml
- create mode 100644 neutron/gateway/opendaylight/single.yml
- create mode 100644 opendaylight/server/single.yml
- create mode 100644 reclass/storage/system/opendaylight_control_single.yml
diff --git a/neutron/control/opendaylight/cluster.yml b/neutron/control/opendaylight/cluster.yml
new file mode 100644
-index 0000000..81dd5f9
+index 00000000..a32e7abb
--- /dev/null
+++ b/neutron/control/opendaylight/cluster.yml
-@@ -0,0 +1,18 @@
+@@ -0,0 +1,17 @@
+classes:
+- service.keepalived.cluster.single
+- service.haproxy.proxy.single
@@ -39,7 +27,6 @@ index 0000000..81dd5f9
+ neutron:
+ server:
+ backend:
-+ engine: opendaylight
+ host: ${_param:opendaylight_service_host}
+ rest_api_port: 8282
+ user: admin
@@ -50,10 +37,10 @@ index 0000000..81dd5f9
+ driver: opendaylight_v2
diff --git a/neutron/control/opendaylight/single.yml b/neutron/control/opendaylight/single.yml
new file mode 100644
-index 0000000..19af585
+index 00000000..053f14df
--- /dev/null
+++ b/neutron/control/opendaylight/single.yml
-@@ -0,0 +1,16 @@
+@@ -0,0 +1,15 @@
+classes:
+- service.neutron.control.single
+- system.neutron.control.openvswitch.single
@@ -61,7 +48,6 @@ index 0000000..19af585
+ neutron:
+ server:
+ backend:
-+ engine: opendaylight
+ host: ${_param:opendaylight_service_host}
+ rest_api_port: 8282
+ user: admin
@@ -72,21 +58,20 @@ index 0000000..19af585
+ driver: opendaylight_v2
diff --git a/neutron/gateway/opendaylight/single.yml b/neutron/gateway/opendaylight/single.yml
new file mode 100644
-index 0000000..29c8d95
+index 00000000..21690017
--- /dev/null
+++ b/neutron/gateway/opendaylight/single.yml
-@@ -0,0 +1,8 @@
+@@ -0,0 +1,7 @@
+classes:
+- service.neutron.gateway.single
+parameters:
+ neutron:
+ gateway:
+ backend:
-+ engine: opendaylight
+ ovsdb_connection: tcp:127.0.0.1:6639
diff --git a/opendaylight/server/single.yml b/opendaylight/server/single.yml
new file mode 100644
-index 0000000..3d11872
+index 00000000..3d11872c
--- /dev/null
+++ b/opendaylight/server/single.yml
@@ -0,0 +1,2 @@
@@ -94,7 +79,7 @@ index 0000000..3d11872
+- service.opendaylight.server.single
diff --git a/reclass/storage/system/opendaylight_control_single.yml b/reclass/storage/system/opendaylight_control_single.yml
new file mode 100644
-index 0000000..ad809f5
+index 00000000..ad809f59
--- /dev/null
+++ b/reclass/storage/system/opendaylight_control_single.yml
@@ -0,0 +1,13 @@
diff --git a/mcp/reclass/classes/cluster/baremetal-mcp-ocata-common/infra/config.yml b/mcp/reclass/classes/cluster/baremetal-mcp-ocata-common/infra/config.yml
index 275941120..e0f9a2a94 100644
--- a/mcp/reclass/classes/cluster/baremetal-mcp-ocata-common/infra/config.yml
+++ b/mcp/reclass/classes/cluster/baremetal-mcp-ocata-common/infra/config.yml
@@ -47,15 +47,6 @@ parameters:
master:
accept_policy: open_mode
file_recv: true
- environment:
- prd:
- formula:
- maas:
- # Temporary fixup for MaaS formula machine status int.lower()
- version: 0.0.1+201711061044.9f1b034~xenial1
- neutron:
- # Temporary fixup for mismatch between formula and reclass model
- version: 2016.12.1+201709251458.f0607d9-1xenial1
reclass:
storage:
data_source:
diff --git a/mcp/reclass/classes/cluster/virtual-mcp-ocata-common/infra/config.yml b/mcp/reclass/classes/cluster/virtual-mcp-ocata-common/infra/config.yml
index 21ed8d329..3c3d5260a 100644
--- a/mcp/reclass/classes/cluster/virtual-mcp-ocata-common/infra/config.yml
+++ b/mcp/reclass/classes/cluster/virtual-mcp-ocata-common/infra/config.yml
@@ -43,15 +43,6 @@ parameters:
salt:
master:
file_recv: true
- environment:
- prd:
- formula:
- maas:
- # Temporary fixup for MaaS formula machine status int.lower()
- version: 0.0.1+201711061044.9f1b034~xenial1
- neutron:
- # Temporary fixup for mismatch between formula and reclass model
- version: 2016.12.1+201709251458.f0607d9-1xenial1
reclass:
storage:
data_source: