aboutsummaryrefslogtreecommitdiffstats
path: root/mcp
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 /mcp
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>
Diffstat (limited to 'mcp')
-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
63 files changed, 515 insertions, 726 deletions
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 -%}