From 5c56cbad4b65d69ec0b23042ee194e30d1234200 Mon Sep 17 00:00:00 2001 From: Michael Polenchuk Date: Thu, 16 Nov 2017 15:39:11 +0400 Subject: [PATCH] Bring in ovn based scenario OVN based scenario doesn't require conventional gateway node since connectivity to external networks and routing occurs on compute nodes. Change-Id: I81e0d497170d5ffb067adf13b0e46290525f26a6 Signed-off-by: Michael Polenchuk --- .../scenario/virtual/os-nosdn-nofeature-noha.yaml | 1 + mcp/config/scenario/virtual/os-nosdn-ovs-noha.yaml | 1 + .../scenario/virtual/os-odl-nofeature-noha.yaml | 1 + .../scenario/virtual/os-ovn-nofeature-noha.yaml | 29 +++++++++++++ mcp/config/states/neutron_gateway | 12 ++++++ mcp/config/states/openstack_noha | 1 - .../openstack_compute.yml | 1 - .../openstack/compute.yml | 1 + .../virtual-mcp-pike-ovn-noha/infra/config.yml | 11 +++++ .../virtual-mcp-pike-ovn-noha/infra/init.yml | 14 +++++++ .../cluster/virtual-mcp-pike-ovn-noha/init.yml | 14 +++++++ .../openstack/compute.yml | 49 ++++++++++++++++++++++ .../openstack/control.yml | 12 ++++++ .../virtual-mcp-pike-ovn-noha/openstack/init.yml | 10 +++++ .../openstack/compute.yml | 1 + .../openstack/compute.yml | 1 + mcp/reclass/classes/system | 2 +- .../cfg01.virtual-mcp-pike-ovn-noha.local.yml | 18 ++++++++ 18 files changed, 176 insertions(+), 3 deletions(-) create mode 100644 mcp/config/scenario/virtual/os-ovn-nofeature-noha.yaml create mode 100755 mcp/config/states/neutron_gateway create mode 100644 mcp/reclass/classes/cluster/virtual-mcp-pike-ovn-noha/infra/config.yml create mode 100644 mcp/reclass/classes/cluster/virtual-mcp-pike-ovn-noha/infra/init.yml create mode 100644 mcp/reclass/classes/cluster/virtual-mcp-pike-ovn-noha/init.yml create mode 100644 mcp/reclass/classes/cluster/virtual-mcp-pike-ovn-noha/openstack/compute.yml create mode 100644 mcp/reclass/classes/cluster/virtual-mcp-pike-ovn-noha/openstack/control.yml create mode 100644 mcp/reclass/classes/cluster/virtual-mcp-pike-ovn-noha/openstack/init.yml create mode 100644 mcp/reclass/nodes/cfg01.virtual-mcp-pike-ovn-noha.local.yml diff --git a/mcp/config/scenario/virtual/os-nosdn-nofeature-noha.yaml b/mcp/config/scenario/virtual/os-nosdn-nofeature-noha.yaml index 57369a906..b35e66fc7 100644 --- a/mcp/config/scenario/virtual/os-nosdn-nofeature-noha.yaml +++ b/mcp/config/scenario/virtual/os-nosdn-nofeature-noha.yaml @@ -10,6 +10,7 @@ cluster: domain: virtual-mcp-pike-ovs-noha.local states: - openstack_noha + - neutron_gateway - neutron_compute - networks virtual: diff --git a/mcp/config/scenario/virtual/os-nosdn-ovs-noha.yaml b/mcp/config/scenario/virtual/os-nosdn-ovs-noha.yaml index 7be0fd82a..e3cd3dbd9 100644 --- a/mcp/config/scenario/virtual/os-nosdn-ovs-noha.yaml +++ b/mcp/config/scenario/virtual/os-nosdn-ovs-noha.yaml @@ -11,6 +11,7 @@ cluster: states: - dpdk - openstack_noha + - neutron_gateway - neutron_compute - networks virtual: diff --git a/mcp/config/scenario/virtual/os-odl-nofeature-noha.yaml b/mcp/config/scenario/virtual/os-odl-nofeature-noha.yaml index 5d114ed72..cef41270c 100644 --- a/mcp/config/scenario/virtual/os-odl-nofeature-noha.yaml +++ b/mcp/config/scenario/virtual/os-odl-nofeature-noha.yaml @@ -11,6 +11,7 @@ cluster: states: - opendaylight - openstack_noha + - neutron_gateway - networks virtual: nodes: diff --git a/mcp/config/scenario/virtual/os-ovn-nofeature-noha.yaml b/mcp/config/scenario/virtual/os-ovn-nofeature-noha.yaml new file mode 100644 index 000000000..d69f978fc --- /dev/null +++ b/mcp/config/scenario/virtual/os-ovn-nofeature-noha.yaml @@ -0,0 +1,29 @@ +############################################################################## +# Copyright (c) 2017 Mirantis Inc., Enea AB and others. +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################## +--- +cluster: + domain: virtual-mcp-pike-ovn-noha.local + states: + - openstack + - neutron_compute + - networks +virtual: + nodes: + - cfg01 + - ctl01 + - cmp01 + - cmp02 + ctl01: + vcpus: 4 + ram: 14336 + cmp01: + vcpus: 4 + ram: 8192 + cmp02: + vcpus: 4 + ram: 8192 diff --git a/mcp/config/states/neutron_gateway b/mcp/config/states/neutron_gateway new file mode 100755 index 000000000..77b1167de --- /dev/null +++ b/mcp/config/states/neutron_gateway @@ -0,0 +1,12 @@ +#!/bin/bash -e +############################################################################## +# Copyright (c) 2017 Mirantis Inc., Enea AB and others. +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################## + +CI_DEBUG=${CI_DEBUG:-0}; [[ "${CI_DEBUG}" =~ (false|0) ]] || set -x + +salt -I 'neutron:gateway' state.sls neutron diff --git a/mcp/config/states/openstack_noha b/mcp/config/states/openstack_noha index 1578dcffc..0a278760d 100755 --- a/mcp/config/states/openstack_noha +++ b/mcp/config/states/openstack_noha @@ -39,7 +39,6 @@ salt -I 'cinder:controller' state.sls cinder salt -I 'cinder:volume' state.sls cinder salt -I 'neutron:server' state.sls neutron -salt -I 'neutron:gateway' state.sls neutron salt -I 'nova:compute' state.sls nova diff --git a/mcp/reclass/classes/cluster/virtual-mcp-pike-common-noha/openstack_compute.yml b/mcp/reclass/classes/cluster/virtual-mcp-pike-common-noha/openstack_compute.yml index 35c23fef7..da933dc27 100644 --- a/mcp/reclass/classes/cluster/virtual-mcp-pike-common-noha/openstack_compute.yml +++ b/mcp/reclass/classes/cluster/virtual-mcp-pike-common-noha/openstack_compute.yml @@ -10,7 +10,6 @@ classes: - system.linux.storage.loopback - service.nfs.client - system.nova.compute.single - - service.neutron.compute.single - service.cinder.volume.single - system.cinder.volume.backend.lvm - system.ceilometer.agent.cluster diff --git a/mcp/reclass/classes/cluster/virtual-mcp-pike-odl-noha/openstack/compute.yml b/mcp/reclass/classes/cluster/virtual-mcp-pike-odl-noha/openstack/compute.yml index 6b2ca8e86..4c42b585b 100644 --- a/mcp/reclass/classes/cluster/virtual-mcp-pike-odl-noha/openstack/compute.yml +++ b/mcp/reclass/classes/cluster/virtual-mcp-pike-odl-noha/openstack/compute.yml @@ -7,6 +7,7 @@ ############################################################################## --- classes: + - service.neutron.compute.single - cluster.virtual-mcp-pike-common-noha.openstack_compute - cluster.virtual-mcp-pike-odl-noha parameters: diff --git a/mcp/reclass/classes/cluster/virtual-mcp-pike-ovn-noha/infra/config.yml b/mcp/reclass/classes/cluster/virtual-mcp-pike-ovn-noha/infra/config.yml new file mode 100644 index 000000000..4d0a77241 --- /dev/null +++ b/mcp/reclass/classes/cluster/virtual-mcp-pike-ovn-noha/infra/config.yml @@ -0,0 +1,11 @@ +############################################################################## +# Copyright (c) 2017 Mirantis Inc., Enea AB and others. +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################## +--- +classes: + - cluster.virtual-mcp-pike-common-noha.infra.config + - cluster.virtual-mcp-pike-ovn-noha diff --git a/mcp/reclass/classes/cluster/virtual-mcp-pike-ovn-noha/infra/init.yml b/mcp/reclass/classes/cluster/virtual-mcp-pike-ovn-noha/infra/init.yml new file mode 100644 index 000000000..5a79adddf --- /dev/null +++ b/mcp/reclass/classes/cluster/virtual-mcp-pike-ovn-noha/infra/init.yml @@ -0,0 +1,14 @@ +############################################################################## +# Copyright (c) 2017 Mirantis Inc., Enea AB and others. +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################## +--- +classes: + - cluster.virtual-mcp-pike-common-noha.infra + +parameters: + _param: + cluster_name: virtual-mcp-pike-ovn-noha diff --git a/mcp/reclass/classes/cluster/virtual-mcp-pike-ovn-noha/init.yml b/mcp/reclass/classes/cluster/virtual-mcp-pike-ovn-noha/init.yml new file mode 100644 index 000000000..0fd6fa790 --- /dev/null +++ b/mcp/reclass/classes/cluster/virtual-mcp-pike-ovn-noha/init.yml @@ -0,0 +1,14 @@ +############################################################################## +# Copyright (c) 2017 Mirantis Inc., Enea AB and others. +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################## +--- +classes: + - system.linux.system.single + - cluster.all-mcp-arch-common + - cluster.virtual-mcp-pike-common-noha.init_options + - cluster.virtual-mcp-pike-ovn-noha.infra + - cluster.virtual-mcp-pike-ovn-noha.openstack diff --git a/mcp/reclass/classes/cluster/virtual-mcp-pike-ovn-noha/openstack/compute.yml b/mcp/reclass/classes/cluster/virtual-mcp-pike-ovn-noha/openstack/compute.yml new file mode 100644 index 000000000..a08c65217 --- /dev/null +++ b/mcp/reclass/classes/cluster/virtual-mcp-pike-ovn-noha/openstack/compute.yml @@ -0,0 +1,49 @@ +############################################################################## +# Copyright (c) 2017 Mirantis Inc., Enea AB and others. +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################## +--- +classes: + - service.neutron.compute.ovn.single + - cluster.virtual-mcp-pike-common-noha.openstack_compute + - cluster.virtual-mcp-pike-ovn-noha +parameters: + linux: + network: + interface: + external_interface: + enabled: true + name: ${_param:external_interface} + mtu: ${_param:interface_mtu} + proto: manual + type: eth + br-mesh: + enabled: true + type: bridge + proto: static + address: ${_param:tenant_address} + netmask: 255.255.255.0 + use_interfaces: + - ${_param:tenant_interface} + br-floating: + enabled: true + type: ovs_bridge + mtu: ${_param:interface_mtu} + float-to-ex: + enabled: true + type: ovs_port + mtu: ${_param:interface_mtu} + bridge: br-floating + br-ex: + enabled: true + type: bridge + mtu: ${_param:interface_mtu} + address: ${_param:external_address} + netmask: 255.255.255.0 + use_interfaces: + - ${_param:external_interface} + use_ovs_ports: + - float-to-ex diff --git a/mcp/reclass/classes/cluster/virtual-mcp-pike-ovn-noha/openstack/control.yml b/mcp/reclass/classes/cluster/virtual-mcp-pike-ovn-noha/openstack/control.yml new file mode 100644 index 000000000..59c000746 --- /dev/null +++ b/mcp/reclass/classes/cluster/virtual-mcp-pike-ovn-noha/openstack/control.yml @@ -0,0 +1,12 @@ +############################################################################## +# Copyright (c) 2017 Mirantis Inc., Enea AB and others. +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################## +--- +classes: + - system.neutron.control.ovn.single + - cluster.virtual-mcp-pike-common-noha.openstack_control + - cluster.virtual-mcp-pike-ovn-noha diff --git a/mcp/reclass/classes/cluster/virtual-mcp-pike-ovn-noha/openstack/init.yml b/mcp/reclass/classes/cluster/virtual-mcp-pike-ovn-noha/openstack/init.yml new file mode 100644 index 000000000..8ae660706 --- /dev/null +++ b/mcp/reclass/classes/cluster/virtual-mcp-pike-ovn-noha/openstack/init.yml @@ -0,0 +1,10 @@ +############################################################################## +# Copyright (c) 2017 Mirantis Inc., Enea AB and others. +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################## +--- +classes: + - cluster.virtual-mcp-pike-common-noha.openstack_init diff --git a/mcp/reclass/classes/cluster/virtual-mcp-pike-ovs-dpdk-noha/openstack/compute.yml b/mcp/reclass/classes/cluster/virtual-mcp-pike-ovs-dpdk-noha/openstack/compute.yml index 0f53477eb..819fa5efa 100644 --- a/mcp/reclass/classes/cluster/virtual-mcp-pike-ovs-dpdk-noha/openstack/compute.yml +++ b/mcp/reclass/classes/cluster/virtual-mcp-pike-ovs-dpdk-noha/openstack/compute.yml @@ -9,6 +9,7 @@ classes: - system.nova.compute.nfv.hugepages - system.neutron.compute.nfv.dpdk + - service.neutron.compute.single - cluster.virtual-mcp-pike-common-noha.openstack_compute - cluster.virtual-mcp-pike-ovs-dpdk-noha parameters: diff --git a/mcp/reclass/classes/cluster/virtual-mcp-pike-ovs-noha/openstack/compute.yml b/mcp/reclass/classes/cluster/virtual-mcp-pike-ovs-noha/openstack/compute.yml index 11e0d522e..52edf879f 100644 --- a/mcp/reclass/classes/cluster/virtual-mcp-pike-ovs-noha/openstack/compute.yml +++ b/mcp/reclass/classes/cluster/virtual-mcp-pike-ovs-noha/openstack/compute.yml @@ -7,6 +7,7 @@ ############################################################################## --- classes: + - service.neutron.compute.single - cluster.virtual-mcp-pike-common-noha.openstack_compute - cluster.virtual-mcp-pike-ovs-noha parameters: diff --git a/mcp/reclass/classes/system b/mcp/reclass/classes/system index f3ef0fc2b..426fec4fa 160000 --- a/mcp/reclass/classes/system +++ b/mcp/reclass/classes/system @@ -1 +1 @@ -Subproject commit f3ef0fc2b794c7cf648f4be884954b827efe16f2 +Subproject commit 426fec4fa187be968eaf57374c956a361aa65411 diff --git a/mcp/reclass/nodes/cfg01.virtual-mcp-pike-ovn-noha.local.yml b/mcp/reclass/nodes/cfg01.virtual-mcp-pike-ovn-noha.local.yml new file mode 100644 index 000000000..fb40f6545 --- /dev/null +++ b/mcp/reclass/nodes/cfg01.virtual-mcp-pike-ovn-noha.local.yml @@ -0,0 +1,18 @@ +############################################################################## +# Copyright (c) 2017 Mirantis Inc., Enea AB and others. +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################## +--- +classes: + - cluster.virtual-mcp-pike-ovn-noha.infra.config +parameters: + _param: + linux_system_codename: xenial + reclass_data_revision: master + linux: + system: + name: cfg01 + domain: virtual-mcp-pike-ovn-noha.local -- 2.16.6