aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexandru Avadanii <Alexandru.Avadanii@enea.com>2018-02-19 19:01:56 +0100
committerAlexandru Avadanii <Alexandru.Avadanii@enea.com>2018-03-07 04:16:29 +0100
commita21457cc96a640700736189612261e9bcae3d825 (patch)
tree386c1276f5c07f72d8e74412000ced3d3a9d3ad8
parent256e2a50b9b340bb78a8c85fdd7cacf96d0fb637 (diff)
[novcp] Add deploy argument `-N` (experimental)
Instead of duplicating scenarios for NOVCP, allow it to be specified using a new deploy argument, `-N`. Things are getting convoluted, so instead of creating dedicated '*_pdf.yml.j2' files for each group of similar features, apply the templating in-place and rename all affected files to ".yml.j2". This breaks .gitignore assumption of hiding only "*_pdf.yml" files, so extend (manually) the <mcp/reclass/classes/cluster/.gitignore> with `git ls-files --exclude-standard -o` after an expansion. - ha: move nfv.cpu_pinning to j2, conditioned by 'baremetal'; - ha: add cmp00* vnode definitions (hugepages need more RAM); - labs/local: enable hugepage params for non-dpdk noha; - salt.sh: add route_wrapper to all non-infra VMs; This change extends novcp support to all HA scenarios. Change-Id: I7a80415ac33367ab227ececb4ffb1bc026546d36 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
-rwxr-xr-xci/deploy.sh15
-rw-r--r--mcp/config/labs/local/idf-virtual1.yaml4
-rw-r--r--mcp/config/scenario/.gitignore2
-rw-r--r--mcp/config/scenario/os-nosdn-nofeature-ha.yaml26
-rw-r--r--mcp/config/scenario/os-nosdn-nofeature-ha.yaml.j2 (renamed from mcp/config/scenario/os-nosdn-nofeature-novcp-ha.yaml.j2)11
-rw-r--r--mcp/config/scenario/os-nosdn-ovs-ha.yaml27
-rw-r--r--mcp/config/scenario/os-nosdn-ovs-ha.yaml.j268
-rw-r--r--mcp/config/scenario/os-odl-nofeature-ha.yaml27
-rw-r--r--mcp/config/scenario/os-odl-nofeature-ha.yaml.j268
-rw-r--r--mcp/config/scenario/os-ovn-nofeature-ha.yaml26
-rw-r--r--mcp/config/scenario/os-ovn-nofeature-ha.yaml.j267
-rw-r--r--mcp/reclass/classes/cluster/.gitignore16
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/config.yml4
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/init.yml.j2 (renamed from mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/init.yml)7
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_compute.yml1
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_compute_pdf.yml.j210
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_control.yml112
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_control.yml.j2 (renamed from mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_control_novcp.yml)85
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_init.yml.j2 (renamed from mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_init.yml)96
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_init_novcp.yml234
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_interface_vcp_biport.yml.j2 (renamed from mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_interface_vcp_biport.yml)2
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_interface_vcp_triport.yml.j2 (renamed from mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_interface_vcp_triport.yml)2
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_proxy.yml50
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_proxy.yml.j2 (renamed from mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/openstack/proxy.yml)41
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-odl-ha/infra/init_vcp.yml.j2 (renamed from mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/openstack/message_queue.yml)4
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-odl-ha/infra/kvm.yml.j2 (renamed from mcp/reclass/classes/cluster/mcp-pike-odl-ha/infra/kvm.yml)3
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-odl-ha/opendaylight/control.yml.j2 (renamed from mcp/reclass/classes/cluster/mcp-pike-odl-ha/opendaylight/control.yml)2
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-odl-ha/openstack/database.yml2
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-odl-ha/openstack/init.yml.j2 (renamed from mcp/reclass/classes/cluster/mcp-pike-odl-ha/openstack/init.yml)4
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-odl-ha/openstack/message_queue.yml2
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-odl-ha/openstack/proxy.yml2
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-odl-ha/openstack/telemetry.yml2
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-ovn-ha/infra/init_vcp.yml.j2 (renamed from mcp/reclass/classes/cluster/mcp-pike-ovn-ha/infra/kvm.yml)3
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-ovn-ha/infra/kvm.yml.j2 (renamed from mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/infra/kvm.yml)8
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-ovn-ha/openstack/database.yml2
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-ovn-ha/openstack/message_queue.yml2
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-ovn-ha/openstack/proxy.yml2
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-ovn-ha/openstack/telemetry.yml2
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-ovs-dpdk-ha/infra/init_vcp.yml.j2 (renamed from mcp/reclass/classes/cluster/mcp-pike-ovs-dpdk-ha/infra/kvm.yml)3
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-ovs-dpdk-ha/infra/kvm.yml.j214
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-ovs-dpdk-ha/openstack/database.yml2
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-ovs-dpdk-ha/openstack/message_queue.yml2
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-ovs-dpdk-ha/openstack/proxy.yml2
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-ovs-dpdk-ha/openstack/telemetry.yml2
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-ovs-ha/infra/init_vcp.yml.j2 (renamed from mcp/reclass/classes/cluster/mcp-pike-ovs-ha/infra/kvm.yml)3
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-ovs-ha/infra/kvm.yml.j214
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-ovs-ha/openstack/database.yml2
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-ovs-ha/openstack/message_queue.yml2
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-ovs-ha/openstack/proxy.yml2
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-ovs-ha/openstack/telemetry.yml2
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/infra/config.yml25
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/infra/init.yml18
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/infra/maas.yml11
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/init.yml12
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/openstack/compute.yml17
l---------mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/openstack/compute_pdf.yml.j21
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/openstack/control.yml19
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/openstack/database.yml10
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/openstack/init.yml19
-rw-r--r--mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/openstack/telemetry.yml10
-rw-r--r--mcp/reclass/nodes/cfg01.mcp-pike-ovs-ha.local.yml2
-rw-r--r--mcp/reclass/nodes/cfg01.mcp-pike-ovs-novcp-ha.local.yml18
-rwxr-xr-xmcp/scripts/salt.sh1
-rw-r--r--mcp/scripts/xdf_data.sh.j22
64 files changed, 526 insertions, 730 deletions
diff --git a/ci/deploy.sh b/ci/deploy.sh
index 7542bd9d1..a5fec4d44 100755
--- a/ci/deploy.sh
+++ b/ci/deploy.sh
@@ -1,7 +1,7 @@
#!/bin/bash -e
# shellcheck disable=SC2034,SC2154,SC1090,SC1091,SC2155
##############################################################################
-# Copyright (c) 2017 Ericsson AB, Mirantis Inc., Enea AB and others.
+# Copyright (c) 2018 Ericsson AB, Mirantis Inc., Enea AB and others.
# jonas.bjurel@ericsson.com
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Apache License, Version 2.0
@@ -38,7 +38,7 @@ $(notify "USAGE:" 2)
$(basename "$0") -l lab-name -p pod-name -s deploy-scenario \\
[-b Lab Config Base URI] \\
[-S storage-dir] [-L /path/to/log/file.tar.gz] \\
- [-f[f]] [-F] [-e | -E[E]] [-d] [-D]
+ [-f[f]] [-F] [-e | -E[E]] [-d] [-D] [-N]
$(notify "OPTIONS:" 2)
-b Base-uri for the stack-configuration structure
@@ -55,6 +55,7 @@ $(notify "OPTIONS:" 2)
-s Deploy-scenario short-name
-S Storage dir for VM images
-L Deployment log path and file name
+ -N Experimental: Do not virtualize control plane (novcp)
$(notify_i "Description:" 2)
Deploys the Fuel@OPNFV stack on the indicated lab resource.
@@ -90,6 +91,8 @@ $(notify_i "Input parameters to the build script are:" 2)
-L Deployment log path and name, eg. -L /home/jenkins/job.log.tar.gz
-l Lab name as defined in the configuration directory, e.g. lf
-p POD name as defined in the configuration directory, e.g. pod2
+-N Experimental: Instead of virtualizing the control plane (VCP), deploy
+ control plane directly on baremetal nodes
-P Skip installing dependency distro packages on current host
This flag should only be used if you have kept back older packages that
would be upgraded and that is undesirable on the current system.
@@ -130,6 +133,7 @@ USE_EXISTING_INFRA=${USE_EXISTING_INFRA:-0}
INFRA_CREATION_ONLY=${INFRA_CREATION_ONLY:-0}
NO_DEPLOY_ENVIRONMENT=${NO_DEPLOY_ENVIRONMENT:-0}
ERASE_ENV=${ERASE_ENV:-0}
+MCP_VCP=${MCP_VCP:-1}
source "${DEPLOY_DIR}/globals.sh"
source "${DEPLOY_DIR}/lib.sh"
@@ -143,7 +147,7 @@ source "${DEPLOY_DIR}/lib_template.sh"
# BEGIN of main
#
set +x
-while getopts "b:dDfEFl:L:p:Ps:S:he" OPTION
+while getopts "b:dDfEFl:L:Np:Ps:S:he" OPTION
do
case $OPTION in
b)
@@ -178,6 +182,9 @@ do
L)
DEPLOY_LOG="${OPTARG}"
;;
+ N)
+ MCP_VCP=0
+ ;;
p)
TARGET_POD=${OPTARG}
if [[ "${TARGET_POD}" =~ virtual ]]; then
@@ -260,7 +267,7 @@ generate_ssh_key
export MAAS_SSH_KEY="$(cat "$(basename "${SSH_KEY}").pub")"
# Expand jinja2 templates based on PDF data and env vars
-export MCP_JUMP_ARCH=$(uname -i)
+export MCP_VCP MCP_JUMP_ARCH=$(uname -i)
do_templates_scenario "${STORAGE_DIR}" "${TARGET_LAB}" "${TARGET_POD}" \
"${BASE_CONFIG_URI}" "${SCENARIO_DIR}"
do_templates_cluster "${STORAGE_DIR}" "${TARGET_LAB}" "${TARGET_POD}" \
diff --git a/mcp/config/labs/local/idf-virtual1.yaml b/mcp/config/labs/local/idf-virtual1.yaml
index 2142baf95..7d45dd24f 100644
--- a/mcp/config/labs/local/idf-virtual1.yaml
+++ b/mcp/config/labs/local/idf-virtual1.yaml
@@ -80,10 +80,12 @@ idf:
reclass:
node:
- compute_params: &compute_params
- dpdk:
+ common: &compute_params_common
compute_hugepages_size: 2M
compute_hugepages_count: 2048
compute_hugepages_mount: /mnt/hugepages_2M
+ dpdk:
+ <<: *compute_params_common
compute_dpdk_driver: uio
compute_ovs_pmd_cpu_mask: "0x6"
compute_ovs_dpdk_socket_mem: "1024"
diff --git a/mcp/config/scenario/.gitignore b/mcp/config/scenario/.gitignore
index 14e9ab880..46c7f92c8 100644
--- a/mcp/config/scenario/.gitignore
+++ b/mcp/config/scenario/.gitignore
@@ -1 +1 @@
-os-nosdn-nofeature-novcp-ha.yaml
+*-ha.yaml
diff --git a/mcp/config/scenario/os-nosdn-nofeature-ha.yaml b/mcp/config/scenario/os-nosdn-nofeature-ha.yaml
deleted file mode 100644
index 547bc2972..000000000
--- a/mcp/config/scenario/os-nosdn-nofeature-ha.yaml
+++ /dev/null
@@ -1,26 +0,0 @@
-##############################################################################
-# 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: mcp-pike-ovs-ha.local
- states:
- - maas
- - baremetal_init
- - virtual_control_plane
- - openstack_ha
- - networks
-virtual:
- nodes:
- - cfg01
- - mas01
- cfg01:
- vcpus: 4
- ram: 6144
- mas01:
- vcpus: 4
- ram: 6144
diff --git a/mcp/config/scenario/os-nosdn-nofeature-novcp-ha.yaml.j2 b/mcp/config/scenario/os-nosdn-nofeature-ha.yaml.j2
index 8a366e9f9..2c4a5f197 100644
--- a/mcp/config/scenario/os-nosdn-nofeature-novcp-ha.yaml.j2
+++ b/mcp/config/scenario/os-nosdn-nofeature-ha.yaml.j2
@@ -14,12 +14,15 @@
{%- endfor %}
---
cluster:
- domain: mcp-pike-ovs-novcp-ha.local
+ domain: mcp-pike-ovs-ha.local
states:
{%- if cluster.has_baremetal_nodes %}
- maas
- baremetal_init
{%- endif %}
+{%- if conf.MCP_VCP %}
+ - virtual_control_plane
+{%- endif %}
- openstack_ha
- networks
virtual:
@@ -56,3 +59,9 @@ virtual:
kvm03:
vcpus: 4
ram: 14336
+ cmp001:
+ vcpus: 4
+ ram: 8192
+ cmp002:
+ vcpus: 4
+ ram: 8192
diff --git a/mcp/config/scenario/os-nosdn-ovs-ha.yaml b/mcp/config/scenario/os-nosdn-ovs-ha.yaml
deleted file mode 100644
index 496262656..000000000
--- a/mcp/config/scenario/os-nosdn-ovs-ha.yaml
+++ /dev/null
@@ -1,27 +0,0 @@
-##############################################################################
-# Copyright (c) 2018 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: mcp-pike-ovs-dpdk-ha.local
- states:
- - maas
- - baremetal_init
- - virtual_control_plane
- - dpdk
- - openstack_ha
- - networks
-virtual:
- nodes:
- - cfg01
- - mas01
- cfg01:
- vcpus: 4
- ram: 6144
- mas01:
- vcpus: 4
- ram: 6144
diff --git a/mcp/config/scenario/os-nosdn-ovs-ha.yaml.j2 b/mcp/config/scenario/os-nosdn-ovs-ha.yaml.j2
new file mode 100644
index 000000000..96db11739
--- /dev/null
+++ b/mcp/config/scenario/os-nosdn-ovs-ha.yaml.j2
@@ -0,0 +1,68 @@
+##############################################################################
+# Copyright (c) 2018 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
+##############################################################################
+{%- import 'net_map.j2' as nm with context %}
+{%- set cluster = {'has_virtual_nodes': False} %}
+{%- for node in conf.nodes %}
+ {%- if not cluster.has_virtual_nodes and node.node.type == 'baremetal' %}
+ {%- do cluster.update({'has_baremetal_nodes': True}) %}
+ {%- endif %}
+{%- endfor %}
+---
+cluster:
+ domain: mcp-pike-ovs-dpdk-ha.local
+ states:
+{%- if cluster.has_baremetal_nodes %}
+ - maas
+ - baremetal_init
+{%- endif %}
+{%- if conf.MCP_VCP %}
+ - virtual_control_plane
+{%- endif %}
+ - dpdk
+ - openstack_ha
+ - networks
+virtual:
+ nodes:
+ - cfg01
+{%- if cluster.has_baremetal_nodes %}
+ - mas01
+{%- endif %}
+{#- Most likely, controllers will always have the same type and number (3) #}
+{%- if conf.nodes[nm.ctl01.idx].node.type == 'virtual' %}
+ - kvm01
+ - kvm02
+ - kvm03
+{%- endif %}
+{#- Later, we might have mixed computes here, for hybrid multi-arch testing #}
+{%- if conf.nodes[nm.cmp001.idx].node.type == 'virtual' %}
+ - cmp001
+ - cmp002
+{%- endif %}
+ cfg01:
+ vcpus: 4
+ ram: 6144
+ # Below values are only used when nodes are defined in virtual.nodes above
+ mas01:
+ vcpus: 4
+ ram: 6144
+ # NOTE: We might need to add more RAM here
+ kvm01:
+ vcpus: 4
+ ram: 14336
+ kvm02:
+ vcpus: 4
+ ram: 14336
+ kvm03:
+ vcpus: 4
+ ram: 14336
+ cmp001:
+ vcpus: 4
+ ram: 8192
+ cmp002:
+ vcpus: 4
+ ram: 8192
diff --git a/mcp/config/scenario/os-odl-nofeature-ha.yaml b/mcp/config/scenario/os-odl-nofeature-ha.yaml
deleted file mode 100644
index 7cf1033a4..000000000
--- a/mcp/config/scenario/os-odl-nofeature-ha.yaml
+++ /dev/null
@@ -1,27 +0,0 @@
-##############################################################################
-# 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: mcp-pike-odl-ha.local
- states:
- - maas
- - baremetal_init
- - virtual_control_plane
- - opendaylight
- - openstack_ha
- - networks
-virtual:
- nodes:
- - cfg01
- - mas01
- cfg01:
- vcpus: 4
- ram: 6144
- mas01:
- vcpus: 4
- ram: 6144
diff --git a/mcp/config/scenario/os-odl-nofeature-ha.yaml.j2 b/mcp/config/scenario/os-odl-nofeature-ha.yaml.j2
new file mode 100644
index 000000000..0bd3a1307
--- /dev/null
+++ b/mcp/config/scenario/os-odl-nofeature-ha.yaml.j2
@@ -0,0 +1,68 @@
+##############################################################################
+# Copyright (c) 2018 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
+##############################################################################
+{%- import 'net_map.j2' as nm with context %}
+{%- set cluster = {'has_virtual_nodes': False} %}
+{%- for node in conf.nodes %}
+ {%- if not cluster.has_virtual_nodes and node.node.type == 'baremetal' %}
+ {%- do cluster.update({'has_baremetal_nodes': True}) %}
+ {%- endif %}
+{%- endfor %}
+---
+cluster:
+ domain: mcp-pike-odl-ha.local
+ states:
+{%- if cluster.has_baremetal_nodes %}
+ - maas
+ - baremetal_init
+{%- endif %}
+{%- if conf.MCP_VCP %}
+ - virtual_control_plane
+{%- endif %}
+ - opendaylight
+ - openstack_ha
+ - networks
+virtual:
+ nodes:
+ - cfg01
+{%- if cluster.has_baremetal_nodes %}
+ - mas01
+{%- endif %}
+{#- Most likely, controllers will always have the same type and number (3) #}
+{%- if conf.nodes[nm.ctl01.idx].node.type == 'virtual' %}
+ - kvm01
+ - kvm02
+ - kvm03
+{%- endif %}
+{#- Later, we might have mixed computes here, for hybrid multi-arch testing #}
+{%- if conf.nodes[nm.cmp001.idx].node.type == 'virtual' %}
+ - cmp001
+ - cmp002
+{%- endif %}
+ cfg01:
+ vcpus: 4
+ ram: 6144
+ # Below values are only used when nodes are defined in virtual.nodes above
+ mas01:
+ vcpus: 4
+ ram: 6144
+ # NOTE: We might need to add more RAM here
+ kvm01:
+ vcpus: 4
+ ram: 14336
+ kvm02:
+ vcpus: 4
+ ram: 14336
+ kvm03:
+ vcpus: 4
+ ram: 14336
+ cmp001:
+ vcpus: 4
+ ram: 8192
+ cmp002:
+ vcpus: 4
+ ram: 8192
diff --git a/mcp/config/scenario/os-ovn-nofeature-ha.yaml b/mcp/config/scenario/os-ovn-nofeature-ha.yaml
deleted file mode 100644
index 6efc11a3f..000000000
--- a/mcp/config/scenario/os-ovn-nofeature-ha.yaml
+++ /dev/null
@@ -1,26 +0,0 @@
-##############################################################################
-# Copyright (c) 2018 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: mcp-pike-ovn-ha.local
- states:
- - maas
- - baremetal_init
- - virtual_control_plane
- - openstack_ha
- - networks
-virtual:
- nodes:
- - cfg01
- - mas01
- cfg01:
- vcpus: 4
- ram: 6144
- mas01:
- vcpus: 4
- ram: 6144
diff --git a/mcp/config/scenario/os-ovn-nofeature-ha.yaml.j2 b/mcp/config/scenario/os-ovn-nofeature-ha.yaml.j2
new file mode 100644
index 000000000..8b7fda0c4
--- /dev/null
+++ b/mcp/config/scenario/os-ovn-nofeature-ha.yaml.j2
@@ -0,0 +1,67 @@
+##############################################################################
+# Copyright (c) 2018 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
+##############################################################################
+{%- import 'net_map.j2' as nm with context %}
+{%- set cluster = {'has_virtual_nodes': False} %}
+{%- for node in conf.nodes %}
+ {%- if not cluster.has_virtual_nodes and node.node.type == 'baremetal' %}
+ {%- do cluster.update({'has_baremetal_nodes': True}) %}
+ {%- endif %}
+{%- endfor %}
+---
+cluster:
+ domain: mcp-pike-ovn-ha.local
+ states:
+{%- if cluster.has_baremetal_nodes %}
+ - maas
+ - baremetal_init
+{%- endif %}
+{%- if conf.MCP_VCP %}
+ - virtual_control_plane
+{%- endif %}
+ - openstack_ha
+ - networks
+virtual:
+ nodes:
+ - cfg01
+{%- if cluster.has_baremetal_nodes %}
+ - mas01
+{%- endif %}
+{#- Most likely, controllers will always have the same type and number (3) #}
+{%- if conf.nodes[nm.ctl01.idx].node.type == 'virtual' %}
+ - kvm01
+ - kvm02
+ - kvm03
+{%- endif %}
+{#- Later, we might have mixed computes here, for hybrid multi-arch testing #}
+{%- if conf.nodes[nm.cmp001.idx].node.type == 'virtual' %}
+ - cmp001
+ - cmp002
+{%- endif %}
+ cfg01:
+ vcpus: 4
+ ram: 6144
+ # Below values are only used when nodes are defined in virtual.nodes above
+ mas01:
+ vcpus: 4
+ ram: 6144
+ # NOTE: We might need to add more RAM here
+ kvm01:
+ vcpus: 4
+ ram: 14336
+ kvm02:
+ vcpus: 4
+ ram: 14336
+ kvm03:
+ vcpus: 4
+ ram: 14336
+ cmp001:
+ vcpus: 4
+ ram: 8192
+ cmp002:
+ vcpus: 4
+ ram: 8192
diff --git a/mcp/reclass/classes/cluster/.gitignore b/mcp/reclass/classes/cluster/.gitignore
index 496fab912..a6b1b7d56 100644
--- a/mcp/reclass/classes/cluster/.gitignore
+++ b/mcp/reclass/classes/cluster/.gitignore
@@ -1 +1,17 @@
**/*_pdf.yml
+mcp-pike-common-ha/infra/init.yml
+mcp-pike-common-ha/openstack_control.yml
+mcp-pike-common-ha/openstack_init.yml
+mcp-pike-common-ha/openstack_interface_vcp_biport.yml
+mcp-pike-common-ha/openstack_interface_vcp_triport.yml
+mcp-pike-common-ha/openstack_proxy.yml
+mcp-pike-ovs-ha/infra/init_vcp.yml
+mcp-pike-ovs-ha/infra/kvm.yml
+mcp-pike-ovs-dpdk-ha/infra/init_vcp.yml
+mcp-pike-ovs-dpdk-ha/infra/kvm.yml
+mcp-pike-odl-ha/infra/init_vcp.yml
+mcp-pike-odl-ha/infra/kvm.yml
+mcp-pike-ovn-ha/infra/init_vcp.yml
+mcp-pike-ovn-ha/infra/kvm.yml
+mcp-pike-odl-ha/opendaylight/control.yml
+mcp-pike-odl-ha/openstack/init.yml
diff --git a/mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/config.yml b/mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/config.yml
index 8a87d1a3c..bd75e7b72 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/config.yml
+++ b/mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/config.yml
@@ -120,12 +120,16 @@ parameters:
- cluster.mcp-pike-common-ha.openstack_control_init
params:
linux_system_codename: xenial
+ # NOTE: When VCP is present, external_address is not used
+ external_address: ${_param:openstack_proxy_node01_address}
openstack_control_node02:
params:
linux_system_codename: xenial
+ external_address: 0.0.0.0
openstack_control_node03:
params:
linux_system_codename: xenial
+ external_address: ${_param:openstack_proxy_node02_address}
openstack_database_node01:
classes:
- cluster.mcp-pike-common-ha.openstack_database_init
diff --git a/mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/init.yml b/mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/init.yml.j2
index acacd2151..7f3839e82 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/init.yml
+++ b/mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/init.yml.j2
@@ -31,9 +31,16 @@ parameters:
infra_maas_node01_deploy_address: ${_param:opnfv_infra_maas_node01_deploy_address}
infra_kvm_address: ${_param:opnfv_infra_kvm_address}
+{%- if conf.MCP_VCP %}
infra_kvm_node01_address: ${_param:opnfv_infra_kvm_node01_address}
infra_kvm_node02_address: ${_param:opnfv_infra_kvm_node02_address}
infra_kvm_node03_address: ${_param:opnfv_infra_kvm_node03_address}
+{%- else %}
+ # For NOVCP, we override kvm addresses to overlap with ctl
+ infra_kvm_node01_address: ${_param:openstack_control_node01_address}
+ infra_kvm_node02_address: ${_param:openstack_control_node02_address}
+ infra_kvm_node03_address: ${_param:openstack_control_node03_address}
+{%- endif %}
infra_maas_node01_hostname: mas01
infra_kvm_node01_hostname: kvm01
diff --git a/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_compute.yml b/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_compute.yml
index cb7b32f53..bae1c1c6d 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_compute.yml
+++ b/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_compute.yml
@@ -11,7 +11,6 @@ classes:
- system.glusterfs.client.cluster
- system.nova.compute.cluster
- system.nova.compute.nfv.hugepages
- - system.nova.compute.nfv.cpu_pinning
- system.neutron.gateway.cluster
- system.cinder.volume.single
- system.cinder.volume.backend.lvm
diff --git a/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_compute_pdf.yml.j2 b/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_compute_pdf.yml.j2
index aa8b45f30..412ca4811 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_compute_pdf.yml.j2
+++ b/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_compute_pdf.yml.j2
@@ -11,11 +11,17 @@
{%- set nics = { nm.cmp001.nic_admin: True, nm.cmp001.nic_mgmt: True } %}
{%- set vlans = { nm.vlan_admin: nm.cmp001.nic_admin, nm.vlan_mgmt: nm.cmp001.nic_mgmt } %}
---
+{%- if not conf.nodes[nm.cmp001.idx].node.type == 'virtual' %}
+classes:
+ - system.nova.compute.nfv.cpu_pinning
+{%- endif %}
parameters:
_param:
# Should later be determined via PDF/IDF, AArch64 has ESP on /dev/sda1
-{%- if conf.nodes[nm.cmp001.idx].node.arch == 'aarch64' or
- conf.nodes[nm.cmp001.idx].disks.0.disk_capacity | storage_size_num | float > 2000000000000 %}
+{%- if conf.nodes[nm.cmp001.idx].node.type == 'virtual' %}
+ ~cinder_lvm_devices: ['/dev/vdb']
+{%- elif conf.nodes[nm.cmp001.idx].node.arch == 'aarch64' or
+ conf.nodes[nm.cmp001.idx].disks.0.disk_capacity | storage_size_num | float > 2000000000000 %}
~cinder_lvm_devices: ['/dev/sda2']
{%- else %}
~cinder_lvm_devices: ['/dev/sda1']
diff --git a/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_control.yml b/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_control.yml
deleted file mode 100644
index b08f3c2d1..000000000
--- a/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_control.yml
+++ /dev/null
@@ -1,112 +0,0 @@
-##############################################################################
-# Copyright (c) 2018 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.repo.glusterfs
- - system.ceilometer.client
- - system.memcached.server.single
- - system.keystone.server.cluster
- - system.keystone.server.wsgi
- - system.glance.control.cluster
- - system.nova.control.cluster
- - system.cinder.control.cluster
- - system.cinder.control.backend.lvm
- - system.heat.server.cluster
- - system.designate.server.cluster
- - system.designate.server.backend.bind
- - system.bind.server.single
- - system.haproxy.proxy.listen.openstack.nova-placement
- - system.haproxy.proxy.listen.openstack.glare
- - system.glusterfs.client.cluster
- - system.glusterfs.client.volume.glance
- - system.glusterfs.client.volume.keystone
-parameters:
- _param:
- keepalived_vip_interface: ${_param:single_nic}
- keepalived_vip_virtual_router_id: 50
- cluster_vip_address: ${_param:openstack_control_address}
- cluster_local_address: ${_param:single_address}
- cluster_node01_hostname: ${_param:openstack_control_node01_hostname}
- cluster_node01_address: ${_param:openstack_control_node01_address}
- cluster_node02_hostname: ${_param:openstack_control_node02_hostname}
- cluster_node02_address: ${_param:openstack_control_node02_address}
- cluster_node03_hostname: ${_param:openstack_control_node03_hostname}
- cluster_node03_address: ${_param:openstack_control_node03_address}
- nova_vncproxy_url: https://${_param:cluster_public_host}:6080
- glusterfs_version: '3.13'
- heat:
- server:
- metadata:
- host: ${_param:openstack_proxy_control_address}
- port: 8000
- protocol: http
- waitcondition:
- host: ${_param:openstack_proxy_control_address}
- port: 8000
- protocol: http
- watch:
- host: ${_param:openstack_proxy_control_address}
- port: 8003
- protocol: http
- nova:
- controller:
- pkgs:
- - nova-api
- - nova-conductor
- - nova-consoleauth
- - nova-novncproxy
- - nova-scheduler
- - python-novaclient
- neutron:
- server:
- vlan_aware_vms: true
- keystone:
- server:
- cacert: /etc/ssl/certs/mcp_os_cacert
- bind:
- server:
- control:
- mgmt:
- enabled: true
- bind:
- address: ${_param:single_address}
- port: 953
- allow:
- - ${_param:openstack_control_node01_address}
- - ${_param:openstack_control_node02_address}
- - ${_param:openstack_control_node03_address}
- keys:
- - designate
- designate:
- server:
- pools:
- default:
- description: 'test pool'
- targets:
- default:
- description: 'test target1'
- default1:
- type: ${_param:designate_pool_target_type}
- description: 'test target2'
- masters: ${_param:designate_pool_target_masters}
- options:
- host: ${_param:openstack_control_node02_address}
- port: 53
- rndc_host: ${_param:openstack_control_node02_address}
- rndc_port: 953
- rndc_key_file: /etc/designate/rndc.key
- default2:
- type: ${_param:designate_pool_target_type}
- description: 'test target3'
- masters: ${_param:designate_pool_target_masters}
- options:
- host: ${_param:openstack_control_node03_address}
- port: 53
- rndc_host: ${_param:openstack_control_node03_address}
- rndc_port: 953
- rndc_key_file: /etc/designate/rndc.key
diff --git a/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_control_novcp.yml b/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_control.yml.j2
index 7ca12f699..1436828a5 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_control_novcp.yml
+++ b/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_control.yml.j2
@@ -25,6 +25,7 @@ classes:
- system.glusterfs.client.cluster
- system.glusterfs.client.volume.glance
- system.glusterfs.client.volume.keystone
+{%- if not conf.MCP_VCP %}
# sync from kvm
- service.keepalived.cluster.single
- system.glusterfs.server.volume.glance
@@ -41,16 +42,21 @@ classes:
# - system.salt.control.cluster.stacklight_log_cluster
# - system.salt.control.cluster.stacklight_telemetry_cluster
- cluster.mcp-pike-common-ha.infra.kvm_pdf
- - cluster.mcp-pike-common-ha.include.proxy
+ - cluster.mcp-pike-common-ha.include.maas_proxy
+ - cluster.mcp-pike-common-ha.include.lab_proxy_pdf
+{%- endif %}
parameters:
_param:
+{%- if not conf.MCP_VCP %}
linux_system_codename: xenial # sync from kvm
# For NOVCP, we switch keepalived VIPs, to keep cluster_vip_address in ctl
single_nic: br-ctl # for keepalive_vip_interface interpolation
- keepalived_vip_interface: ${_param:single_nic} # sync from kvm
- keepalived_vip_virtual_router_id: 50
+ control_nic: ~ # Dummy value to keep reclass 1.5.2 happy
keepalived_openstack_web_public_vip_address: ${_param:openstack_proxy_address}
keepalived_openstack_web_public_vip_interface: br-ex
+{%- endif %}
+ keepalived_vip_interface: ${_param:single_nic}
+ keepalived_vip_virtual_router_id: 50
cluster_vip_address: ${_param:openstack_control_address}
cluster_local_address: ${_param:single_address}
cluster_node01_hostname: ${_param:openstack_control_node01_hostname}
@@ -61,6 +67,31 @@ parameters:
cluster_node03_address: ${_param:openstack_control_node03_address}
nova_vncproxy_url: https://${_param:cluster_public_host}:6080
glusterfs_version: '3.13'
+{%- if conf.MCP_VCP %}
+ heat:
+ server:
+ metadata:
+ host: ${_param:openstack_proxy_control_address}
+ port: 8000
+ protocol: http
+ waitcondition:
+ host: ${_param:openstack_proxy_control_address}
+ port: 8000
+ protocol: http
+ watch:
+ host: ${_param:openstack_proxy_control_address}
+ port: 8003
+ protocol: http
+ nova:
+ controller:
+ pkgs:
+ - nova-api
+ - nova-conductor
+ - nova-consoleauth
+ - nova-novncproxy
+ - nova-scheduler
+ - python-novaclient
+{%- else %}
libvirt:
server:
service: libvirtd
@@ -68,13 +99,38 @@ parameters:
unix_sock_group: libvirt
linux:
network:
- remove_iface_files:
- - '/etc/network/interfaces.d/50-cloud-init.cfg'
# Add public IPs here as overrides, no need to fork another kvm_pdf.j2
interface:
br-ex:
address: ${_param:external_address}
proto: static
+ apache:
+ server:
+ bind:
+ ~ports: ~
+ ~modules:
+ - rewrite
+ - wsgi
+ # sync from common-ha kvm role
+ glusterfs:
+ server:
+ service: glusterd
+ volumes:
+ nova_instances:
+ storage: /srv/glusterfs/nova_instances
+ replica: 3
+ bricks:
+ - ${_param:cluster_node01_address}:/srv/glusterfs/nova_instances
+ - ${_param:cluster_node02_address}:/srv/glusterfs/nova_instances
+ - ${_param:cluster_node03_address}:/srv/glusterfs/nova_instances
+ options:
+ cluster.readdir-optimize: 'True'
+ nfs.disable: 'True'
+ network.remote-dio: 'True'
+ cluster.favorite-child-policy: mtime
+ diagnostics.client-log-level: WARNING
+ diagnostics.brick-log-level: WARNING
+{%- endif %}
neutron:
server:
vlan_aware_vms: true
@@ -123,22 +179,3 @@ parameters:
rndc_host: ${_param:openstack_control_node03_address}
rndc_port: 953
rndc_key_file: /etc/designate/rndc.key
- # sync from common-ha kvm role
- glusterfs:
- server:
- service: glusterd
- volumes:
- nova_instances:
- storage: /srv/glusterfs/nova_instances
- replica: 3
- bricks:
- - ${_param:cluster_node01_address}:/srv/glusterfs/nova_instances
- - ${_param:cluster_node02_address}:/srv/glusterfs/nova_instances
- - ${_param:cluster_node03_address}:/srv/glusterfs/nova_instances
- options:
- cluster.readdir-optimize: 'True'
- nfs.disable: 'True'
- network.remote-dio: 'True'
- cluster.favorite-child-policy: mtime
- diagnostics.client-log-level: WARNING
- diagnostics.brick-log-level: WARNING
diff --git a/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_init.yml b/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_init.yml.j2
index d2d611c6f..3b890da03 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_init.yml
+++ b/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_init.yml.j2
@@ -12,35 +12,56 @@ parameters:
openstack_version: pike
# openstack service addresses
+{%- if conf.MCP_VCP %}
openstack_proxy_control_address: ${_param:opnfv_openstack_proxy_control_address}
openstack_proxy_node01_control_address: ${_param:opnfv_openstack_proxy_node01_control_address}
openstack_proxy_node02_control_address: ${_param:opnfv_openstack_proxy_node02_control_address}
+{%- else %}
+ openstack_proxy_control_address: ${_param:opnfv_openstack_control_address}
+ openstack_proxy_node01_control_address: ${_param:opnfv_openstack_control_node01_address}
+ openstack_proxy_node02_control_address: ${_param:opnfv_openstack_control_node03_address}
+{%- endif %}
+
openstack_proxy_address: ${_param:opnfv_openstack_proxy_address}
openstack_proxy_node01_address: ${_param:opnfv_openstack_proxy_node01_address}
openstack_proxy_node02_address: ${_param:opnfv_openstack_proxy_node02_address}
+
openstack_control_address: ${_param:opnfv_openstack_control_address}
openstack_control_node01_address: ${_param:opnfv_openstack_control_node01_address}
openstack_control_node02_address: ${_param:opnfv_openstack_control_node02_address}
openstack_control_node03_address: ${_param:opnfv_openstack_control_node03_address}
+
+{%- if conf.MCP_VCP %}
openstack_database_address: ${_param:opnfv_openstack_database_address}
openstack_database_node01_address: ${_param:opnfv_openstack_database_node01_address}
openstack_database_node02_address: ${_param:opnfv_openstack_database_node02_address}
openstack_database_node03_address: ${_param:opnfv_openstack_database_node03_address}
+
openstack_message_queue_address: ${_param:opnfv_openstack_message_queue_address}
openstack_message_queue_node01_address: ${_param:opnfv_openstack_message_queue_node01_address}
openstack_message_queue_node02_address: ${_param:opnfv_openstack_message_queue_node02_address}
openstack_message_queue_node03_address: ${_param:opnfv_openstack_message_queue_node03_address}
-
- openstack_telemetry_hostname: mdb
- openstack_telemetry_node01_hostname: mdb01
- openstack_telemetry_node02_hostname: mdb02
- openstack_telemetry_node03_hostname: mdb03
-
openstack_telemetry_address: ${_param:opnfv_openstack_telemetry_address}
openstack_telemetry_node01_address: ${_param:opnfv_openstack_telemetry_node01_address}
openstack_telemetry_node02_address: ${_param:opnfv_openstack_telemetry_node02_address}
openstack_telemetry_node03_address: ${_param:opnfv_openstack_telemetry_node03_address}
+{%- else %}
+ openstack_database_address: ${_param:openstack_control_address}
+ openstack_database_node01_address: ${_param:openstack_control_node01_address}
+ openstack_database_node02_address: ${_param:openstack_control_node02_address}
+ openstack_database_node03_address: ${_param:openstack_control_node03_address}
+
+ openstack_message_queue_address: ${_param:openstack_control_address}
+ openstack_message_queue_node01_address: ${_param:openstack_control_node01_address}
+ openstack_message_queue_node02_address: ${_param:openstack_control_node02_address}
+ openstack_message_queue_node03_address: ${_param:openstack_control_node03_address}
+
+ openstack_telemetry_address: ${_param:openstack_control_address}
+ openstack_telemetry_node01_address: ${_param:openstack_control_node01_address}
+ openstack_telemetry_node02_address: ${_param:openstack_control_node02_address}
+ openstack_telemetry_node03_address: ${_param:openstack_control_node03_address}
+{%- endif %}
# OpenStack Compute
openstack_compute_node01_single_address: ${_param:opnfv_openstack_compute_node01_single_address}
@@ -56,6 +77,7 @@ parameters:
openstack_compute_node02_external_address: ${_param:opnfv_openstack_compute_node02_external_address}
# openstack service hostnames
+{%- if conf.MCP_VCP %}
openstack_proxy_hostname: prx
openstack_proxy_node01_hostname: prx01
openstack_proxy_node02_hostname: prx02
@@ -71,11 +93,46 @@ parameters:
openstack_message_queue_node01_hostname: msg01
openstack_message_queue_node02_hostname: msg02
openstack_message_queue_node03_hostname: msg03
+ openstack_telemetry_hostname: mdb
+ openstack_telemetry_node01_hostname: mdb01
+ openstack_telemetry_node02_hostname: mdb02
+ openstack_telemetry_node03_hostname: mdb03
+{%- else %}
+ openstack_proxy_hostname: ${_param:openstack_control_hostname}
+ openstack_proxy_node01_hostname: ${_param:openstack_control_node01_hostname}
+ openstack_proxy_node02_hostname: ${_param:openstack_control_node03_hostname}
+ openstack_control_hostname: kvm
+ openstack_control_node01_hostname: kvm01
+ openstack_control_node02_hostname: kvm02
+ openstack_control_node03_hostname: kvm03
+ openstack_database_hostname: ${_param:openstack_control_hostname}
+ openstack_database_node01_hostname: ${_param:openstack_control_node01_hostname}
+ openstack_database_node02_hostname: ${_param:openstack_control_node02_hostname}
+ openstack_database_node03_hostname: ${_param:openstack_control_node03_hostname}
+ openstack_message_queue_hostname: ${_param:openstack_control_hostname}
+ openstack_message_queue_node01_hostname: ${_param:openstack_control_node01_hostname}
+ openstack_message_queue_node02_hostname: ${_param:openstack_control_node02_hostname}
+ openstack_message_queue_node03_hostname: ${_param:openstack_control_node03_hostname}
+ openstack_telemetry_hostname: ${_param:openstack_control_hostname}
+ openstack_telemetry_node01_hostname: ${_param:openstack_control_node01_hostname}
+ openstack_telemetry_node02_hostname: ${_param:openstack_control_node02_hostname}
+ openstack_telemetry_node03_hostname: ${_param:openstack_control_node03_hostname}
+{%- endif %}
# openstack compute
openstack_compute_node01_hostname: cmp001
openstack_compute_node02_hostname: cmp002
+ # opendaylight options
+{%- if conf.MCP_VCP %}
+ opendaylight_server_node01_hostname: odl01
+ opendaylight_server_node01_single_address: ${_param:opnfv_opendaylight_server_node01_single_address}
+{%- else %}
+ opendaylight_control_hostname: ${_param:openstack_control_node02_hostname}
+ opendaylight_server_node01_hostname: ${_param:opendaylight_control_hostname}
+ opendaylight_server_node01_single_address: ${_param:opnfv_openstack_control_node02_address}
+{%- endif %}
+
openstack_region: RegionOne
admin_email: root@localhost
# Neutron osv/nodvr
@@ -110,7 +167,11 @@ parameters:
nova_service_host: ${_param:openstack_control_address}
neutron_version: ${_param:openstack_version}
neutron_service_host: ${_param:openstack_control_address}
+{%- if conf.MCP_VCP %}
glusterfs_service_host: ${_param:infra_kvm_address}
+{%- else %}
+ glusterfs_service_host: ${_param:openstack_control_address}
+{%- endif %}
mysql_admin_user: root
mysql_admin_password: opnfv_secret
mysql_cinder_password: opnfv_secret
@@ -200,6 +261,7 @@ parameters:
net.ipv4.tcp_fin_timeout: 30
network:
host:
+{%- if conf.MCP_VCP %}
prx:
address: ${_param:openstack_proxy_control_address}
names:
@@ -295,6 +357,28 @@ parameters:
names:
- ${_param:openstack_telemetry_node03_hostname}
- ${_param:openstack_telemetry_node03_hostname}.${_param:cluster_domain}
+{%- else %}
+ kvm:
+ address: ${_param:openstack_control_address}
+ names:
+ - ${_param:openstack_control_hostname}
+ - ${_param:openstack_control_hostname}.${_param:cluster_domain}
+ kvm01:
+ address: ${_param:openstack_control_node01_address}
+ names:
+ - ${_param:openstack_control_node01_hostname}
+ - ${_param:openstack_control_node01_hostname}.${_param:cluster_domain}
+ kvm02:
+ address: ${_param:openstack_control_node02_address}
+ names:
+ - ${_param:openstack_control_node02_hostname}
+ - ${_param:openstack_control_node02_hostname}.${_param:cluster_domain}
+ kvm03:
+ address: ${_param:openstack_control_node03_address}
+ names:
+ - ${_param:openstack_control_node03_hostname}
+ - ${_param:openstack_control_node03_hostname}.${_param:cluster_domain}
+{%- endif %}
cmp001:
address: ${_param:openstack_compute_node01_control_address}
names:
diff --git a/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_init_novcp.yml b/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_init_novcp.yml
deleted file mode 100644
index 370dcee10..000000000
--- a/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_init_novcp.yml
+++ /dev/null
@@ -1,234 +0,0 @@
-##############################################################################
-# Copyright (c) 2018 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
-##############################################################################
----
-parameters:
- _param:
-
- openstack_version: pike
-
- # openstack service addresses
- openstack_proxy_control_address: ${_param:opnfv_openstack_control_address}
- openstack_proxy_node01_control_address: ${_param:opnfv_openstack_control_node01_address}
- openstack_proxy_node02_control_address: ${_param:opnfv_openstack_control_node03_address}
-
- openstack_proxy_address: ${_param:opnfv_openstack_proxy_address}
- openstack_proxy_node01_address: ${_param:opnfv_openstack_proxy_node01_address}
- openstack_proxy_node02_address: ${_param:opnfv_openstack_proxy_node02_address}
-
- openstack_control_address: ${_param:opnfv_openstack_control_address}
- openstack_control_node01_address: ${_param:opnfv_openstack_control_node01_address}
- openstack_control_node02_address: ${_param:opnfv_openstack_control_node02_address}
- openstack_control_node03_address: ${_param:opnfv_openstack_control_node03_address}
-
- openstack_database_address: ${_param:openstack_control_address}
- openstack_database_node01_address: ${_param:openstack_control_node01_address}
- openstack_database_node02_address: ${_param:openstack_control_node02_address}
- openstack_database_node03_address: ${_param:openstack_control_node03_address}
-
- openstack_message_queue_address: ${_param:openstack_control_address}
- openstack_message_queue_node01_address: ${_param:openstack_control_node01_address}
- openstack_message_queue_node02_address: ${_param:openstack_control_node02_address}
- openstack_message_queue_node03_address: ${_param:openstack_control_node03_address}
-
- openstack_telemetry_address: ${_param:openstack_control_address}
- openstack_telemetry_node01_address: ${_param:openstack_control_node01_address}
- openstack_telemetry_node02_address: ${_param:openstack_control_node02_address}
- openstack_telemetry_node03_address: ${_param:openstack_control_node03_address}
-
- # OpenStack Compute
- openstack_compute_node01_single_address: ${_param:opnfv_openstack_compute_node01_single_address}
- openstack_compute_node02_single_address: ${_param:opnfv_openstack_compute_node02_single_address}
- openstack_compute_node03_single_address: ${_param:opnfv_openstack_compute_node03_single_address}
- openstack_compute_node01_control_address: ${_param:opnfv_openstack_compute_node01_control_address}
- openstack_compute_node02_control_address: ${_param:opnfv_openstack_compute_node02_control_address}
- openstack_compute_node03_control_address: ${_param:opnfv_openstack_compute_node03_control_address}
- openstack_compute_node01_tenant_address: ${_param:opnfv_openstack_compute_node01_tenant_address}
- openstack_compute_node02_tenant_address: ${_param:opnfv_openstack_compute_node02_tenant_address}
- openstack_compute_node03_tenant_address: ${_param:opnfv_openstack_compute_node03_tenant_address}
- openstack_compute_node01_external_address: ${_param:opnfv_openstack_compute_node01_external_address}
- openstack_compute_node02_external_address: ${_param:opnfv_openstack_compute_node02_external_address}
-
- # openstack service hostnames
- openstack_proxy_hostname: ${_param:openstack_control_hostname}
- openstack_proxy_node01_hostname: ${_param:openstack_control_node01_hostname}
- openstack_proxy_node02_hostname: ${_param:openstack_control_node03_hostname}
- openstack_control_hostname: kvm
- openstack_control_node01_hostname: kvm01
- openstack_control_node02_hostname: kvm02
- openstack_control_node03_hostname: kvm03
- openstack_database_hostname: ${_param:openstack_control_hostname}
- openstack_database_node01_hostname: ${_param:openstack_control_node01_hostname}
- openstack_database_node02_hostname: ${_param:openstack_control_node02_hostname}
- openstack_database_node03_hostname: ${_param:openstack_control_node03_hostname}
- openstack_message_queue_hostname: ${_param:openstack_control_hostname}
- openstack_message_queue_node01_hostname: ${_param:openstack_control_node01_hostname}
- openstack_message_queue_node02_hostname: ${_param:openstack_control_node02_hostname}
- openstack_message_queue_node03_hostname: ${_param:openstack_control_node03_hostname}
- openstack_telemetry_hostname: ${_param:openstack_control_hostname}
- openstack_telemetry_node01_hostname: ${_param:openstack_control_node01_hostname}
- openstack_telemetry_node02_hostname: ${_param:openstack_control_node02_hostname}
- openstack_telemetry_node03_hostname: ${_param:openstack_control_node03_hostname}
-
- # openstack compute
- openstack_compute_node01_hostname: cmp001
- openstack_compute_node02_hostname: cmp002
-
- openstack_region: RegionOne
- admin_email: root@localhost
- # Neutron osv/nodvr
- neutron_control_dvr: 'False'
- neutron_l3_ha: 'True'
- neutron_global_physnet_mtu: 1500
- neutron_external_mtu: 1500
- neutron_gateway_dvr: 'False'
- neutron_gateway_agent_mode: legacy
- neutron_compute_dvr: 'False'
- neutron_compute_agent_mode: legacy
- neutron_compute_external_access: 'True'
- galera_server_cluster_name: openstack_cluster
- galera_server_maintenance_password: opnfv_secret
- galera_server_admin_password: opnfv_secret
- rabbitmq_secret_key: opnfv_secret
- rabbitmq_admin_password: opnfv_secret
- rabbitmq_openstack_password: opnfv_secret
- glance_version: ${_param:openstack_version}
- glance_service_host: ${_param:openstack_control_address}
- keystone_version: ${_param:openstack_version}
- keystone_service_host: ${_param:openstack_control_address}
- heat_version: ${_param:openstack_version}
- heat_service_host: ${_param:openstack_control_address}
- heat_domain_admin_password: opnfv_secret
- cinder_version: ${_param:openstack_version}
- cinder_service_host: ${_param:openstack_control_address}
- ceilometer_version: ${_param:openstack_version}
- ceilometer_service_host: ${_param:openstack_telemetry_address}
- ceilometer_influxdb_password: opnfv_secret
- nova_version: ${_param:openstack_version}
- nova_service_host: ${_param:openstack_control_address}
- neutron_version: ${_param:openstack_version}
- neutron_service_host: ${_param:openstack_control_address}
- glusterfs_service_host: ${_param:openstack_control_address}
- mysql_admin_user: root
- mysql_admin_password: opnfv_secret
- mysql_cinder_password: opnfv_secret
- mysql_ceilometer_password: opnfv_secret
- mysql_glance_password: opnfv_secret
- mysql_grafana_password: opnfv_secret
- mysql_heat_password: opnfv_secret
- mysql_keystone_password: opnfv_secret
- mysql_neutron_password: opnfv_secret
- mysql_nova_password: opnfv_secret
- mysql_aodh_password: opnfv_secret
- mysql_designate_password: opnfv_secret
- aodh_version: ${_param:openstack_version}
- keystone_aodh_password: opnfv_secret
- keystone_service_token: opnfv_secret
- keystone_admin_password: opnfv_secret
- keystone_ceilometer_password: opnfv_secret
- keystone_cinder_password: opnfv_secret
- keystone_glance_password: opnfv_secret
- keystone_heat_password: opnfv_secret
- keystone_keystone_password: opnfv_secret
- keystone_neutron_password: opnfv_secret
- keystone_nova_password: opnfv_secret
- keystone_designate_password: opnfv_secret
- ceilometer_secret_key: opnfv_secret
- horizon_version: ${_param:openstack_version}
- horizon_secret_key: opaesee8Que2yahJoh9fo0eefo1Aeyo6ahyei8zeiboh3aeth5loth7ieNa5xi5e
- horizon_identity_host: ${_param:openstack_control_address}
- horizon_identity_encryption: none
- horizon_identity_version: 3
- mongodb_server_replica_set: ceilometer
- mongodb_ceilometer_password: opnfv_secret
- mongodb_admin_password: opnfv_secret
- mongodb_shared_key: eoTh1AwahlahqueingeejooLughah4tei9feing0eeVaephooDi2li1TaeV1ooth
- metadata_password: opnfv_secret
- openstack_telemetry_keepalived_password: opnfv_secret
- aodh_service_host: ${_param:openstack_telemetry_address}
- designate_service_host: ${_param:openstack_control_address}
- designate_bind9_rndc_key: 4pc+X4PDqb2q+5o72dISm72LM1Ds9X2EYZjqg+nmsS7FhdTwzFFY8l/iEDmHxnyjkA33EQC8H+z0fLLBunoitw==
- designate_domain_id: 5186883b-91fb-4891-bd49-e6769234a8fc
- designate_pool_ns_records:
- - hostname: 'ns1.example.org.'
- priority: 10
- designate_pool_nameservers:
- - host: ${_param:openstack_control_node01_address}
- port: 53
- - host: ${_param:openstack_control_node02_address}
- port: 53
- - host: ${_param:openstack_control_node03_address}
- port: 53
- designate_pool_target_type: bind9
- designate_pool_target_masters:
- - host: ${_param:openstack_control_node01_address}
- port: 5354
- - host: ${_param:openstack_control_node02_address}
- port: 5354
- - host: ${_param:openstack_control_node03_address}
- port: 5354
- designate_pool_target_options:
- host: ${_param:openstack_control_node01_address}
- port: 53
- rndc_host: ${_param:openstack_control_node01_address}
- rndc_port: 953
- rndc_key_file: /etc/designate/rndc.key
- designate_version: ${_param:openstack_version}
- # Billing
- # keystone_billometer_password: opnfv_secret
- # keystone_billometer_address: ${_param:billometer_service_host}
- # billometer_service_host: ${_param:openstack_billing_address}
- # billometer_version: ${_param:openstack_version}
- # billometer_secret_key: opnfv_secretpasswordpasswordpassword
- # billometer_identity_password: ${_param:keystone_billometer_password}
- # billometer_identity_host: ${_param:openstack_control_address}
- # billometer_identity_token: ${_param:keystone_service_token}
- linux:
- system:
- repo:
- uca:
- source: "deb http://ubuntu-cloud.archive.canonical.com/ubuntu xenial-updates/${_param:openstack_version} main"
- architectures: amd64
- key_id: EC4926EA
- key_server: keyserver.ubuntu.com
- kernel:
- sysctl:
- net.ipv4.tcp_congestion_control: yeah
- net.ipv4.tcp_slow_start_after_idle: 0
- net.ipv4.tcp_fin_timeout: 30
- network:
- host:
- kvm:
- address: ${_param:openstack_control_address}
- names:
- - ${_param:openstack_control_hostname}
- - ${_param:openstack_control_hostname}.${_param:cluster_domain}
- kvm01:
- address: ${_param:openstack_control_node01_address}
- names:
- - ${_param:openstack_control_node01_hostname}
- - ${_param:openstack_control_node01_hostname}.${_param:cluster_domain}
- kvm02:
- address: ${_param:openstack_control_node02_address}
- names:
- - ${_param:openstack_control_node02_hostname}
- - ${_param:openstack_control_node02_hostname}.${_param:cluster_domain}
- kvm03:
- address: ${_param:openstack_control_node03_address}
- names:
- - ${_param:openstack_control_node03_hostname}
- - ${_param:openstack_control_node03_hostname}.${_param:cluster_domain}
- cmp001:
- address: ${_param:openstack_compute_node01_control_address}
- names:
- - ${_param:openstack_compute_node01_hostname}
- - ${_param:openstack_compute_node01_hostname}.${_param:cluster_domain}
- cmp002:
- address: ${_param:openstack_compute_node02_control_address}
- names:
- - ${_param:openstack_compute_node02_hostname}
- - ${_param:openstack_compute_node02_hostname}.${_param:cluster_domain}
diff --git a/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_interface_vcp_biport.yml b/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_interface_vcp_biport.yml.j2
index 69fc72ea0..cc92e5df9 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_interface_vcp_biport.yml
+++ b/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_interface_vcp_biport.yml.j2
@@ -6,6 +6,7 @@
# http://www.apache.org/licenses/LICENSE-2.0
##############################################################################
---
+{%- if conf.MCP_VCP %}
classes:
- cluster.mcp-pike-common-ha.include.maas_proxy
- cluster.mcp-pike-common-ha.include.lab_proxy_pdf
@@ -28,3 +29,4 @@ parameters:
name: ${_param:single_nic}
address: ${_param:single_address}
netmask: ${_param:opnfv_net_public_mask}
+{%- endif %}
diff --git a/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_interface_vcp_triport.yml b/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_interface_vcp_triport.yml.j2
index 1ab134d55..7fef8ae9f 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_interface_vcp_triport.yml
+++ b/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_interface_vcp_triport.yml.j2
@@ -6,6 +6,7 @@
# http://www.apache.org/licenses/LICENSE-2.0
##############################################################################
---
+{%- if conf.MCP_VCP %}
classes:
- cluster.mcp-pike-common-ha.include.maas_proxy
- cluster.mcp-pike-common-ha.include.lab_proxy_pdf
@@ -41,3 +42,4 @@ parameters:
name: ${_param:control_nic}
address: ${_param:control_address}
netmask: 255.255.255.0
+{%- endif %}
diff --git a/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_proxy.yml b/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_proxy.yml
deleted file mode 100644
index a32640e7e..000000000
--- a/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_proxy.yml
+++ /dev/null
@@ -1,50 +0,0 @@
-##############################################################################
-# Copyright (c) 2018 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.nginx.server.single
- - system.nginx.server.proxy.openstack_api
- - system.nginx.server.proxy.openstack_vnc
- - system.nginx.server.proxy.openstack_web
- - system.nginx.server.proxy.openstack.aodh
- - system.nginx.server.proxy.openstack.ceilometer
- - system.horizon.server.single
- - system.salt.minion.cert.proxy
- - system.sphinx.server.doc.reclass
- - service.keepalived.cluster.single
- - system.keepalived.cluster.instance.openstack_web_public_vip
-parameters:
- _param:
- cluster_vip_address: ${_param:openstack_proxy_address}
- keepalived_openstack_web_public_vip_address: ${_param:cluster_vip_address}
- keepalived_openstack_web_public_vip_interface: ${_param:single_nic}
- keepalived_vip_address: ${_param:openstack_proxy_control_address}
- keepalived_vip_interface: ${_param:control_nic}
- keepalived_vip_virtual_router_id: 240
- nginx_proxy_ssl:
- enabled: true
- authority: ${_param:salt_minion_ca_authority}
- engine: salt
- mode: secure
- salt_minion_ca_host: cfg01.${_param:cluster_domain}
- linux:
- system:
- package:
- libapache2-mod-wsgi:
- version: latest
- salt:
- minion:
- cert:
- proxy:
- alternative_names: "IP:${_param:openstack_proxy_address}"
- key_usage: 'digitalSignature, keyEncipherment'
- keepalived:
- cluster:
- vrrp_scripts:
- check_pidof:
- args: 'nginx'
diff --git a/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/openstack/proxy.yml b/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_proxy.yml.j2
index 89b095430..26943b7b6 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/openstack/proxy.yml
+++ b/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_proxy.yml.j2
@@ -7,10 +7,37 @@
##############################################################################
---
classes:
- - cluster.mcp-pike-common-ha.openstack_proxy
+ - system.nginx.server.single
+ - system.nginx.server.proxy.openstack_api
+ - system.nginx.server.proxy.openstack_vnc
+ - system.nginx.server.proxy.openstack_web
+ - system.nginx.server.proxy.openstack.aodh
+ - system.nginx.server.proxy.openstack.ceilometer
+ - system.horizon.server.single
+ - system.salt.minion.cert.proxy
+ - system.sphinx.server.doc.reclass
+ - service.keepalived.cluster.single
- system.keepalived.cluster.instance.openstack_web_public_vip
parameters:
+ _param:
+ cluster_vip_address: ${_param:openstack_proxy_address}
+ keepalived_openstack_web_public_vip_address: ${_param:cluster_vip_address}
+ keepalived_openstack_web_public_vip_interface: ${_param:single_nic}
+ keepalived_vip_address: ${_param:openstack_proxy_control_address}
+ keepalived_vip_interface: ${_param:control_nic}
+ keepalived_vip_virtual_router_id: 240
+ nginx_proxy_ssl:
+ enabled: true
+ authority: ${_param:salt_minion_ca_authority}
+ engine: salt
+ mode: secure
+ salt_minion_ca_host: cfg01.${_param:cluster_domain}
linux:
+ system:
+ package:
+ libapache2-mod-wsgi:
+ version: latest
+{%- if not conf.MCP_VCP %}
# Set up routes similar to prx*ovs-ha
network:
interface:
@@ -57,3 +84,15 @@ parameters:
<<: *nginx_openstack_proxy_address
nginx_static_reclass_doc:
<<: *nginx_openstack_proxy_address
+{%- endif %}
+ salt:
+ minion:
+ cert:
+ proxy:
+ alternative_names: "IP:${_param:openstack_proxy_address}"
+ key_usage: 'digitalSignature, keyEncipherment'
+ keepalived:
+ cluster:
+ vrrp_scripts:
+ check_pidof:
+ args: 'nginx'
diff --git a/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/openstack/message_queue.yml b/mcp/reclass/classes/cluster/mcp-pike-odl-ha/infra/init_vcp.yml.j2
index 0fd4a8a54..385326561 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/openstack/message_queue.yml
+++ b/mcp/reclass/classes/cluster/mcp-pike-odl-ha/infra/init_vcp.yml.j2
@@ -6,5 +6,7 @@
# http://www.apache.org/licenses/LICENSE-2.0
##############################################################################
---
+{%- if conf.MCP_VCP %}
classes:
- - cluster.mcp-pike-common-ha.openstack_message_queue
+ - cluster.mcp-pike-odl-ha.infra
+{%- endif %}
diff --git a/mcp/reclass/classes/cluster/mcp-pike-odl-ha/infra/kvm.yml b/mcp/reclass/classes/cluster/mcp-pike-odl-ha/infra/kvm.yml.j2
index e2b18e4da..81135d6a9 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-odl-ha/infra/kvm.yml
+++ b/mcp/reclass/classes/cluster/mcp-pike-odl-ha/infra/kvm.yml.j2
@@ -6,6 +6,8 @@
# http://www.apache.org/licenses/LICENSE-2.0
##############################################################################
---
+{%- if conf.MCP_VCP %}
+# NOTE(armband): we don't want to pull in salt.control for novcp
classes:
- cluster.mcp-pike-common-ha.infra.kvm
- cluster.mcp-pike-odl-ha.infra
@@ -27,3 +29,4 @@ parameters:
provider: ${_param:infra_kvm_node02_hostname}.${_param:cluster_domain}
image: ${_param:salt_control_xenial_image}
size: opendaylight.server
+{%- endif %}
diff --git a/mcp/reclass/classes/cluster/mcp-pike-odl-ha/opendaylight/control.yml b/mcp/reclass/classes/cluster/mcp-pike-odl-ha/opendaylight/control.yml.j2
index d27eb0dc9..8873209cc 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-odl-ha/opendaylight/control.yml
+++ b/mcp/reclass/classes/cluster/mcp-pike-odl-ha/opendaylight/control.yml.j2
@@ -9,7 +9,9 @@
classes:
- service.opendaylight.server.single
- cluster.mcp-pike-common-ha.openstack_interface_vcp_biport
+{%- if conf.MCP_VCP %}
- cluster.mcp-pike-odl-ha
+{%- endif %}
parameters:
_param:
linux_system_codename: xenial
diff --git a/mcp/reclass/classes/cluster/mcp-pike-odl-ha/openstack/database.yml b/mcp/reclass/classes/cluster/mcp-pike-odl-ha/openstack/database.yml
index c6a28c3bc..69cb24dbf 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-odl-ha/openstack/database.yml
+++ b/mcp/reclass/classes/cluster/mcp-pike-odl-ha/openstack/database.yml
@@ -9,4 +9,4 @@
classes:
- cluster.mcp-pike-common-ha.openstack_interface_vcp_biport
- cluster.mcp-pike-common-ha.openstack_database
- - cluster.mcp-pike-odl-ha.infra
+ - cluster.mcp-pike-odl-ha.infra.init_vcp
diff --git a/mcp/reclass/classes/cluster/mcp-pike-odl-ha/openstack/init.yml b/mcp/reclass/classes/cluster/mcp-pike-odl-ha/openstack/init.yml.j2
index a5e63b060..5a3b36fb1 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-odl-ha/openstack/init.yml
+++ b/mcp/reclass/classes/cluster/mcp-pike-odl-ha/openstack/init.yml.j2
@@ -11,11 +11,10 @@ classes:
parameters:
_param:
# opendaylight options
- opendaylight_server_node01_single_address: ${_param:opnfv_opendaylight_server_node01_single_address}
opendaylight_service_host: ${_param:opendaylight_server_node01_single_address}
- opendaylight_server_node01_hostname: odl01
neutron_tenant_network_types: "flat,vxlan"
+{%- if conf.MCP_VCP %}
linux:
network:
host:
@@ -24,3 +23,4 @@ parameters:
names:
- ${_param:opendaylight_server_node01_hostname}
- ${_param:opendaylight_server_node01_hostname}.${_param:cluster_domain}
+{%- endif %}
diff --git a/mcp/reclass/classes/cluster/mcp-pike-odl-ha/openstack/message_queue.yml b/mcp/reclass/classes/cluster/mcp-pike-odl-ha/openstack/message_queue.yml
index 13596155c..604728da1 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-odl-ha/openstack/message_queue.yml
+++ b/mcp/reclass/classes/cluster/mcp-pike-odl-ha/openstack/message_queue.yml
@@ -9,4 +9,4 @@
classes:
- cluster.mcp-pike-common-ha.openstack_interface_vcp_biport
- cluster.mcp-pike-common-ha.openstack_message_queue
- - cluster.mcp-pike-odl-ha.infra
+ - cluster.mcp-pike-odl-ha.infra.init_vcp
diff --git a/mcp/reclass/classes/cluster/mcp-pike-odl-ha/openstack/proxy.yml b/mcp/reclass/classes/cluster/mcp-pike-odl-ha/openstack/proxy.yml
index e2040aa3a..cd1ae9040 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-odl-ha/openstack/proxy.yml
+++ b/mcp/reclass/classes/cluster/mcp-pike-odl-ha/openstack/proxy.yml
@@ -9,7 +9,7 @@
classes:
- cluster.mcp-pike-common-ha.openstack_interface_vcp_triport
- cluster.mcp-pike-common-ha.openstack_proxy
- - cluster.mcp-pike-odl-ha.infra
+ - cluster.mcp-pike-odl-ha.infra.init_vcp
parameters:
nginx:
server:
diff --git a/mcp/reclass/classes/cluster/mcp-pike-odl-ha/openstack/telemetry.yml b/mcp/reclass/classes/cluster/mcp-pike-odl-ha/openstack/telemetry.yml
index 13e6ef6d4..20df2aab6 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-odl-ha/openstack/telemetry.yml
+++ b/mcp/reclass/classes/cluster/mcp-pike-odl-ha/openstack/telemetry.yml
@@ -9,4 +9,4 @@
classes:
- cluster.mcp-pike-common-ha.openstack_interface_vcp_biport
- cluster.mcp-pike-common-ha.openstack_telemetry
- - cluster.mcp-pike-odl-ha.infra
+ - cluster.mcp-pike-odl-ha.infra.init_vcp
diff --git a/mcp/reclass/classes/cluster/mcp-pike-ovn-ha/infra/kvm.yml b/mcp/reclass/classes/cluster/mcp-pike-ovn-ha/infra/init_vcp.yml.j2
index fe8f2d472..46acb7d2d 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-ovn-ha/infra/kvm.yml
+++ b/mcp/reclass/classes/cluster/mcp-pike-ovn-ha/infra/init_vcp.yml.j2
@@ -6,6 +6,7 @@
# http://www.apache.org/licenses/LICENSE-2.0
##############################################################################
---
+{%- if conf.MCP_VCP %}
classes:
- - cluster.mcp-pike-common-ha.infra.kvm
- cluster.mcp-pike-ovn-ha.infra
+{%- endif %}
diff --git a/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/infra/kvm.yml b/mcp/reclass/classes/cluster/mcp-pike-ovn-ha/infra/kvm.yml.j2
index 887af029d..4a2355bf1 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/infra/kvm.yml
+++ b/mcp/reclass/classes/cluster/mcp-pike-ovn-ha/infra/kvm.yml.j2
@@ -6,7 +6,9 @@
# http://www.apache.org/licenses/LICENSE-2.0
##############################################################################
---
+{%- if conf.MCP_VCP %}
# NOTE(armband): we don't want to pull in salt.control for novcp
-# classes:
-# - cluster.mcp-pike-common-ha.infra.kvm
-# - cluster.mcp-pike-ovs-novcp-ha.infra
+classes:
+ - cluster.mcp-pike-common-ha.infra.kvm
+ - cluster.mcp-pike-ovn-ha.infra
+{%- endif %}
diff --git a/mcp/reclass/classes/cluster/mcp-pike-ovn-ha/openstack/database.yml b/mcp/reclass/classes/cluster/mcp-pike-ovn-ha/openstack/database.yml
index 95762ae5f..2ed79ab3b 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-ovn-ha/openstack/database.yml
+++ b/mcp/reclass/classes/cluster/mcp-pike-ovn-ha/openstack/database.yml
@@ -9,4 +9,4 @@
classes:
- cluster.mcp-pike-common-ha.openstack_interface_vcp_biport
- cluster.mcp-pike-common-ha.openstack_database
- - cluster.mcp-pike-ovn-ha.infra
+ - cluster.mcp-pike-ovn-ha.infra_vcp
diff --git a/mcp/reclass/classes/cluster/mcp-pike-ovn-ha/openstack/message_queue.yml b/mcp/reclass/classes/cluster/mcp-pike-ovn-ha/openstack/message_queue.yml
index 71e4a4e97..db587ac94 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-ovn-ha/openstack/message_queue.yml
+++ b/mcp/reclass/classes/cluster/mcp-pike-ovn-ha/openstack/message_queue.yml
@@ -9,4 +9,4 @@
classes:
- cluster.mcp-pike-common-ha.openstack_interface_vcp_biport
- cluster.mcp-pike-common-ha.openstack_message_queue
- - cluster.mcp-pike-ovn-ha.infra
+ - cluster.mcp-pike-ovn-ha.infra_vcp
diff --git a/mcp/reclass/classes/cluster/mcp-pike-ovn-ha/openstack/proxy.yml b/mcp/reclass/classes/cluster/mcp-pike-ovn-ha/openstack/proxy.yml
index 775fbca26..49fec8246 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-ovn-ha/openstack/proxy.yml
+++ b/mcp/reclass/classes/cluster/mcp-pike-ovn-ha/openstack/proxy.yml
@@ -9,4 +9,4 @@
classes:
- cluster.mcp-pike-common-ha.openstack_interface_vcp_triport
- cluster.mcp-pike-common-ha.openstack_proxy
- - cluster.mcp-pike-ovn-ha.infra
+ - cluster.mcp-pike-ovn-ha.infra_vcp
diff --git a/mcp/reclass/classes/cluster/mcp-pike-ovn-ha/openstack/telemetry.yml b/mcp/reclass/classes/cluster/mcp-pike-ovn-ha/openstack/telemetry.yml
index 5221cfb9f..4b9d9acc2 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-ovn-ha/openstack/telemetry.yml
+++ b/mcp/reclass/classes/cluster/mcp-pike-ovn-ha/openstack/telemetry.yml
@@ -9,4 +9,4 @@
classes:
- cluster.mcp-pike-common-ha.openstack_interface_vcp_biport
- cluster.mcp-pike-common-ha.openstack_telemetry
- - cluster.mcp-pike-ovn-ha.infra
+ - cluster.mcp-pike-ovn-ha.infra_vcp
diff --git a/mcp/reclass/classes/cluster/mcp-pike-ovs-dpdk-ha/infra/kvm.yml b/mcp/reclass/classes/cluster/mcp-pike-ovs-dpdk-ha/infra/init_vcp.yml.j2
index 73a3c95ba..9e85995bc 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-ovs-dpdk-ha/infra/kvm.yml
+++ b/mcp/reclass/classes/cluster/mcp-pike-ovs-dpdk-ha/infra/init_vcp.yml.j2
@@ -6,6 +6,7 @@
# http://www.apache.org/licenses/LICENSE-2.0
##############################################################################
---
+{%- if conf.MCP_VCP %}
classes:
- - cluster.mcp-pike-common-ha.infra.kvm
- cluster.mcp-pike-ovs-dpdk-ha.infra
+{%- endif %}
diff --git a/mcp/reclass/classes/cluster/mcp-pike-ovs-dpdk-ha/infra/kvm.yml.j2 b/mcp/reclass/classes/cluster/mcp-pike-ovs-dpdk-ha/infra/kvm.yml.j2
new file mode 100644
index 000000000..b62118d4a
--- /dev/null
+++ b/mcp/reclass/classes/cluster/mcp-pike-ovs-dpdk-ha/infra/kvm.yml.j2
@@ -0,0 +1,14 @@
+##############################################################################
+# Copyright (c) 2018 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
+##############################################################################
+---
+{%- if conf.MCP_VCP %}
+# NOTE(armband): we don't want to pull in salt.control for novcp
+classes:
+ - cluster.mcp-pike-common-ha.infra.kvm
+ - cluster.mcp-pike-ovs-dpdk-ha.infra
+{%- endif %}
diff --git a/mcp/reclass/classes/cluster/mcp-pike-ovs-dpdk-ha/openstack/database.yml b/mcp/reclass/classes/cluster/mcp-pike-ovs-dpdk-ha/openstack/database.yml
index 5db1ccdb1..324ec3f84 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-ovs-dpdk-ha/openstack/database.yml
+++ b/mcp/reclass/classes/cluster/mcp-pike-ovs-dpdk-ha/openstack/database.yml
@@ -9,4 +9,4 @@
classes:
- cluster.mcp-pike-common-ha.openstack_interface_vcp_biport
- cluster.mcp-pike-common-ha.openstack_database
- - cluster.mcp-pike-ovs-dpdk-ha.infra
+ - cluster.mcp-pike-ovs-dpdk-ha.infra.init_vcp
diff --git a/mcp/reclass/classes/cluster/mcp-pike-ovs-dpdk-ha/openstack/message_queue.yml b/mcp/reclass/classes/cluster/mcp-pike-ovs-dpdk-ha/openstack/message_queue.yml
index c05e16b18..f15e4310a 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-ovs-dpdk-ha/openstack/message_queue.yml
+++ b/mcp/reclass/classes/cluster/mcp-pike-ovs-dpdk-ha/openstack/message_queue.yml
@@ -9,4 +9,4 @@
classes:
- cluster.mcp-pike-common-ha.openstack_interface_vcp_biport
- cluster.mcp-pike-common-ha.openstack_message_queue
- - cluster.mcp-pike-ovs-dpdk-ha.infra
+ - cluster.mcp-pike-ovs-dpdk-ha.infra.init_vcp
diff --git a/mcp/reclass/classes/cluster/mcp-pike-ovs-dpdk-ha/openstack/proxy.yml b/mcp/reclass/classes/cluster/mcp-pike-ovs-dpdk-ha/openstack/proxy.yml
index 3fc77ec98..09eda53c0 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-ovs-dpdk-ha/openstack/proxy.yml
+++ b/mcp/reclass/classes/cluster/mcp-pike-ovs-dpdk-ha/openstack/proxy.yml
@@ -9,4 +9,4 @@
classes:
- cluster.mcp-pike-common-ha.openstack_interface_vcp_triport
- cluster.mcp-pike-common-ha.openstack_proxy
- - cluster.mcp-pike-ovs-dpdk-ha.infra
+ - cluster.mcp-pike-ovs-dpdk-ha.infra.init_vcp
diff --git a/mcp/reclass/classes/cluster/mcp-pike-ovs-dpdk-ha/openstack/telemetry.yml b/mcp/reclass/classes/cluster/mcp-pike-ovs-dpdk-ha/openstack/telemetry.yml
index 1946d728a..68d437864 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-ovs-dpdk-ha/openstack/telemetry.yml
+++ b/mcp/reclass/classes/cluster/mcp-pike-ovs-dpdk-ha/openstack/telemetry.yml
@@ -9,4 +9,4 @@
classes:
- cluster.mcp-pike-common-ha.openstack_interface_vcp_biport
- cluster.mcp-pike-common-ha.openstack_telemetry
- - cluster.mcp-pike-ovs-dpdk-ha.infra
+ - cluster.mcp-pike-ovs-dpdk-ha.infra.init_vcp
diff --git a/mcp/reclass/classes/cluster/mcp-pike-ovs-ha/infra/kvm.yml b/mcp/reclass/classes/cluster/mcp-pike-ovs-ha/infra/init_vcp.yml.j2
index 5a44e715a..74023ce14 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-ovs-ha/infra/kvm.yml
+++ b/mcp/reclass/classes/cluster/mcp-pike-ovs-ha/infra/init_vcp.yml.j2
@@ -6,6 +6,7 @@
# http://www.apache.org/licenses/LICENSE-2.0
##############################################################################
---
+{%- if conf.MCP_VCP %}
classes:
- - cluster.mcp-pike-common-ha.infra.kvm
- cluster.mcp-pike-ovs-ha.infra
+{%- endif %}
diff --git a/mcp/reclass/classes/cluster/mcp-pike-ovs-ha/infra/kvm.yml.j2 b/mcp/reclass/classes/cluster/mcp-pike-ovs-ha/infra/kvm.yml.j2
new file mode 100644
index 000000000..0d49e5d10
--- /dev/null
+++ b/mcp/reclass/classes/cluster/mcp-pike-ovs-ha/infra/kvm.yml.j2
@@ -0,0 +1,14 @@
+##############################################################################
+# Copyright (c) 2018 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
+##############################################################################
+---
+{%- if conf.MCP_VCP %}
+# NOTE(armband): we don't want to pull in salt.control for novcp
+classes:
+ - cluster.mcp-pike-common-ha.infra.kvm
+ - cluster.mcp-pike-ovs-ha.infra
+{%- endif %}
diff --git a/mcp/reclass/classes/cluster/mcp-pike-ovs-ha/openstack/database.yml b/mcp/reclass/classes/cluster/mcp-pike-ovs-ha/openstack/database.yml
index de5151c8e..33c86e8c1 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-ovs-ha/openstack/database.yml
+++ b/mcp/reclass/classes/cluster/mcp-pike-ovs-ha/openstack/database.yml
@@ -9,4 +9,4 @@
classes:
- cluster.mcp-pike-common-ha.openstack_interface_vcp_biport
- cluster.mcp-pike-common-ha.openstack_database
- - cluster.mcp-pike-ovs-ha.infra
+ - cluster.mcp-pike-ovs-ha.infra.init_vcp
diff --git a/mcp/reclass/classes/cluster/mcp-pike-ovs-ha/openstack/message_queue.yml b/mcp/reclass/classes/cluster/mcp-pike-ovs-ha/openstack/message_queue.yml
index 145db8f5f..629b2794b 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-ovs-ha/openstack/message_queue.yml
+++ b/mcp/reclass/classes/cluster/mcp-pike-ovs-ha/openstack/message_queue.yml
@@ -9,4 +9,4 @@
classes:
- cluster.mcp-pike-common-ha.openstack_interface_vcp_biport
- cluster.mcp-pike-common-ha.openstack_message_queue
- - cluster.mcp-pike-ovs-ha.infra
+ - cluster.mcp-pike-ovs-ha.infra.init_vcp
diff --git a/mcp/reclass/classes/cluster/mcp-pike-ovs-ha/openstack/proxy.yml b/mcp/reclass/classes/cluster/mcp-pike-ovs-ha/openstack/proxy.yml
index 032da69e5..3698965f6 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-ovs-ha/openstack/proxy.yml
+++ b/mcp/reclass/classes/cluster/mcp-pike-ovs-ha/openstack/proxy.yml
@@ -9,4 +9,4 @@
classes:
- cluster.mcp-pike-common-ha.openstack_interface_vcp_triport
- cluster.mcp-pike-common-ha.openstack_proxy
- - cluster.mcp-pike-ovs-ha.infra
+ - cluster.mcp-pike-ovs-ha.infra.init_vcp
diff --git a/mcp/reclass/classes/cluster/mcp-pike-ovs-ha/openstack/telemetry.yml b/mcp/reclass/classes/cluster/mcp-pike-ovs-ha/openstack/telemetry.yml
index b13297c0f..26341ea7b 100644
--- a/mcp/reclass/classes/cluster/mcp-pike-ovs-ha/openstack/telemetry.yml
+++ b/mcp/reclass/classes/cluster/mcp-pike-ovs-ha/openstack/telemetry.yml
@@ -9,4 +9,4 @@
classes:
- cluster.mcp-pike-common-ha.openstack_interface_vcp_biport
- cluster.mcp-pike-common-ha.openstack_telemetry
- - cluster.mcp-pike-ovs-ha.infra
+ - cluster.mcp-pike-ovs-ha.infra.init_vcp
diff --git a/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/infra/config.yml b/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/infra/config.yml
deleted file mode 100644
index 9fe92d6bd..000000000
--- a/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/infra/config.yml
+++ /dev/null
@@ -1,25 +0,0 @@
-##############################################################################
-# Copyright (c) 2018 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.mcp-pike-common-ha.infra.config
- - cluster.mcp-pike-ovs-novcp-ha.infra
- - cluster.all-mcp-arch-common.infra.config_pdf
-parameters:
- reclass:
- storage:
- node:
- openstack_control_node01: # openstack_proxy_node01
- params:
- external_address: ${_param:openstack_proxy_node01_address}
- openstack_control_node02: # no proxy role
- params:
- external_address: 0.0.0.0
- openstack_control_node03: # openstack_proxy_node02
- params:
- external_address: ${_param:openstack_proxy_node02_address}
diff --git a/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/infra/init.yml b/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/infra/init.yml
deleted file mode 100644
index 23c299cbc..000000000
--- a/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/infra/init.yml
+++ /dev/null
@@ -1,18 +0,0 @@
-##############################################################################
-# Copyright (c) 2018 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.mcp-pike-common-ha.infra
- - cluster.mcp-pike-ovs-novcp-ha.openstack
-parameters:
- _param:
- cluster_name: mcp-pike-ovs-novcp-ha
- # For NOVCP, we override kvm addresses to overlap with ctl
- infra_kvm_node01_address: ${_param:openstack_control_node01_address}
- infra_kvm_node02_address: ${_param:openstack_control_node02_address}
- infra_kvm_node03_address: ${_param:openstack_control_node03_address}
diff --git a/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/infra/maas.yml b/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/infra/maas.yml
deleted file mode 100644
index e694679b9..000000000
--- a/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/infra/maas.yml
+++ /dev/null
@@ -1,11 +0,0 @@
-##############################################################################
-# Copyright (c) 2018 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.mcp-pike-common-ha.infra.maas
- - cluster.mcp-pike-ovs-novcp-ha.infra
diff --git a/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/init.yml b/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/init.yml
deleted file mode 100644
index 234418d9c..000000000
--- a/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/init.yml
+++ /dev/null
@@ -1,12 +0,0 @@
-##############################################################################
-# Copyright (c) 2018 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.all-mcp-arch-common
- - cluster.mcp-pike-ovs-novcp-ha.infra
- - cluster.mcp-pike-ovs-novcp-ha.openstack
diff --git a/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/openstack/compute.yml b/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/openstack/compute.yml
deleted file mode 100644
index afe1cc5a6..000000000
--- a/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/openstack/compute.yml
+++ /dev/null
@@ -1,17 +0,0 @@
-##############################################################################
-# Copyright (c) 2018 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.mcp-pike-common-ha.openstack_compute
- - cluster.mcp-pike-ovs-novcp-ha.openstack.compute_pdf
- - cluster.mcp-pike-ovs-novcp-ha.infra
-parameters:
- nova:
- compute:
- libvirt_service: libvirtd
- libvirt_bin: /etc/default/libvirtd
diff --git a/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/openstack/compute_pdf.yml.j2 b/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/openstack/compute_pdf.yml.j2
deleted file mode 120000
index d43451a2a..000000000
--- a/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/openstack/compute_pdf.yml.j2
+++ /dev/null
@@ -1 +0,0 @@
-../../mcp-pike-ovs-ha/openstack/compute_pdf.yml.j2 \ No newline at end of file
diff --git a/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/openstack/control.yml b/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/openstack/control.yml
deleted file mode 100644
index 4cd5b9629..000000000
--- a/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/openstack/control.yml
+++ /dev/null
@@ -1,19 +0,0 @@
-##############################################################################
-# Copyright (c) 2018 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.openvswitch.cluster
- - cluster.mcp-pike-common-ha.openstack_control_novcp
- - cluster.mcp-pike-ovs-novcp-ha
-parameters:
- apache:
- server:
- modules:
- # NOTE(armband): We first override mods to ~, then to this to drop ssl
- - rewrite
- - wsgi
diff --git a/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/openstack/database.yml b/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/openstack/database.yml
deleted file mode 100644
index 163769524..000000000
--- a/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/openstack/database.yml
+++ /dev/null
@@ -1,10 +0,0 @@
-##############################################################################
-# Copyright (c) 2018 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.mcp-pike-common-ha.openstack_database
diff --git a/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/openstack/init.yml b/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/openstack/init.yml
deleted file mode 100644
index 2bacdfca1..000000000
--- a/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/openstack/init.yml
+++ /dev/null
@@ -1,19 +0,0 @@
-##############################################################################
-# Copyright (c) 2018 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.mcp-pike-common-ha.openstack_init_novcp
-parameters:
- _param:
- neutron_tenant_network_types: "flat,vxlan"
- apache:
- server:
- # NOTE(armband): override these to ~ first, so we can later drop ssl/443
- bind:
- ports: ~
- modules: ~
diff --git a/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/openstack/telemetry.yml b/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/openstack/telemetry.yml
deleted file mode 100644
index 1cb72ac5c..000000000
--- a/mcp/reclass/classes/cluster/mcp-pike-ovs-novcp-ha/openstack/telemetry.yml
+++ /dev/null
@@ -1,10 +0,0 @@
-##############################################################################
-# Copyright (c) 2018 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.mcp-pike-common-ha.openstack_telemetry
diff --git a/mcp/reclass/nodes/cfg01.mcp-pike-ovs-ha.local.yml b/mcp/reclass/nodes/cfg01.mcp-pike-ovs-ha.local.yml
index f5e3bb0be..5e3cb0186 100644
--- a/mcp/reclass/nodes/cfg01.mcp-pike-ovs-ha.local.yml
+++ b/mcp/reclass/nodes/cfg01.mcp-pike-ovs-ha.local.yml
@@ -1,5 +1,5 @@
##############################################################################
-# Copyright (c) 2017 Mirantis Inc., Enea AB and others.
+# Copyright (c) 2018 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
diff --git a/mcp/reclass/nodes/cfg01.mcp-pike-ovs-novcp-ha.local.yml b/mcp/reclass/nodes/cfg01.mcp-pike-ovs-novcp-ha.local.yml
deleted file mode 100644
index eb1f794af..000000000
--- a/mcp/reclass/nodes/cfg01.mcp-pike-ovs-novcp-ha.local.yml
+++ /dev/null
@@ -1,18 +0,0 @@
-##############################################################################
-# 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.mcp-pike-ovs-novcp-ha.infra.config
-parameters:
- _param:
- linux_system_codename: xenial
- reclass_data_revision: master
- linux:
- system:
- name: cfg01
- domain: mcp-pike-ovs-novcp-ha.local
diff --git a/mcp/scripts/salt.sh b/mcp/scripts/salt.sh
index fc5c78e68..82a73b31a 100755
--- a/mcp/scripts/salt.sh
+++ b/mcp/scripts/salt.sh
@@ -113,6 +113,7 @@ ssh ${SSH_OPTS} "${SSH_SALT}" bash -s -e << SALT_INSTALL_END
wait_for 3.0 'salt -C "E@^(${NODE_MASK}).*" state.sls linux.system,linux.storage'
wait_for 2.0 'salt -C "E@^(${NODE_MASK}).*" state.sls linux.network' || true
+ salt -C "E@^(${NODE_MASK}).*" state.sls opnfv.route_wrapper
salt -C "E@^(${NODE_MASK}).*" system.reboot
wait_for 90.0 'salt -C "E@^(${NODE_MASK}).*" test.ping'
wait_for 3.0 'salt -C "E@^(${NODE_MASK}).*" pkg.upgrade refresh=False dist_upgrade=True'
diff --git a/mcp/scripts/xdf_data.sh.j2 b/mcp/scripts/xdf_data.sh.j2
index ad3c0fe1e..8c9d5d969 100644
--- a/mcp/scripts/xdf_data.sh.j2
+++ b/mcp/scripts/xdf_data.sh.j2
@@ -38,7 +38,7 @@
{%- macro serialize_apt_pkg() -%}
{%- set arr = [] -%}
{%- set sections = [arch.common] -%}
- {%- if 'virtual_control_plane' in conf.cluster.states -%}
+ {%- if conf.MCP_VCP -%}
{%- do sections.append(arch.control) -%}
{%- endif -%}
{%- for c in sections -%}