summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mcp/config/scenario/os-nosdn-vpp-ha.yaml.j258
-rw-r--r--mcp/config/scenario/os-nosdn-vpp-noha.yaml.j237
-rw-r--r--mcp/reclass/classes/cluster/mcp-vpp-ha/infra/config.yml12
-rw-r--r--mcp/reclass/classes/cluster/mcp-vpp-ha/infra/init.yml14
-rw-r--r--mcp/reclass/classes/cluster/mcp-vpp-ha/infra/init_vcp.yml.j212
-rw-r--r--mcp/reclass/classes/cluster/mcp-vpp-ha/infra/kvm.yml.j214
-rw-r--r--mcp/reclass/classes/cluster/mcp-vpp-ha/infra/maas.yml11
-rw-r--r--mcp/reclass/classes/cluster/mcp-vpp-ha/init.yml12
-rw-r--r--mcp/reclass/classes/cluster/mcp-vpp-ha/openstack/compute.yml17
-rw-r--r--mcp/reclass/classes/cluster/mcp-vpp-ha/openstack/compute_pdf.yml.j236
-rw-r--r--mcp/reclass/classes/cluster/mcp-vpp-ha/openstack/control.yml13
-rw-r--r--mcp/reclass/classes/cluster/mcp-vpp-ha/openstack/database.yml12
-rw-r--r--mcp/reclass/classes/cluster/mcp-vpp-ha/openstack/init.yml13
-rw-r--r--mcp/reclass/classes/cluster/mcp-vpp-ha/openstack/message_queue.yml12
-rw-r--r--mcp/reclass/classes/cluster/mcp-vpp-ha/openstack/proxy.yml12
-rw-r--r--mcp/reclass/classes/cluster/mcp-vpp-ha/openstack/telemetry.yml12
-rw-r--r--mcp/reclass/classes/cluster/mcp-vpp-noha/infra/config.yml22
-rw-r--r--mcp/reclass/classes/cluster/mcp-vpp-noha/infra/init.yml14
-rw-r--r--mcp/reclass/classes/cluster/mcp-vpp-noha/infra/maas.yml11
-rw-r--r--mcp/reclass/classes/cluster/mcp-vpp-noha/init.yml12
-rw-r--r--mcp/reclass/classes/cluster/mcp-vpp-noha/openstack/compute.yml.j232
-rw-r--r--mcp/reclass/classes/cluster/mcp-vpp-noha/openstack/control.yml12
-rw-r--r--mcp/reclass/classes/cluster/mcp-vpp-noha/openstack/gateway.yml.j228
-rw-r--r--mcp/reclass/classes/cluster/mcp-vpp-noha/openstack/init.yml13
-rw-r--r--mcp/reclass/nodes/cfg01.mcp-vpp-ha.local.yml18
-rw-r--r--mcp/reclass/nodes/cfg01.mcp-vpp-noha.local.yml18
26 files changed, 477 insertions, 0 deletions
diff --git a/mcp/config/scenario/os-nosdn-vpp-ha.yaml.j2 b/mcp/config/scenario/os-nosdn-vpp-ha.yaml.j2
new file mode 100644
index 000000000..6ccb59061
--- /dev/null
+++ b/mcp/config/scenario/os-nosdn-vpp-ha.yaml.j2
@@ -0,0 +1,58 @@
+##############################################################################
+# 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 %}
+---
+cluster:
+ domain: mcp-vpp-ha.local
+ states:
+{%- if nm.cluster.has_baremetal_nodes %}
+ - maas
+ - baremetal_init
+{%- endif %}
+{%- if conf.MCP_VCP %}
+ - virtual_control_plane
+{%- endif %}
+ - openstack_ha
+ - networks
+virtual:
+ nodes:
+ infra:
+ - cfg01
+{%- if nm.cluster.has_baremetal_nodes %}
+ - mas01
+{%- endif %}
+ control:
+ - kvm01
+ - kvm02
+ - kvm03
+ compute:
+ - cmp001
+ - cmp002
+ # Below values are only used for each node if said node is virtual
+ cfg01:
+ vcpus: 4
+ ram: 6144
+ 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-nosdn-vpp-noha.yaml.j2 b/mcp/config/scenario/os-nosdn-vpp-noha.yaml.j2
new file mode 100644
index 000000000..41cb504e1
--- /dev/null
+++ b/mcp/config/scenario/os-nosdn-vpp-noha.yaml.j2
@@ -0,0 +1,37 @@
+##############################################################################
+# 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
+##############################################################################
+{%- import 'net_map.j2' as nm with context %}
+---
+cluster:
+ domain: mcp-vpp-noha.local
+ states:
+{%- if nm.cluster.has_baremetal_nodes %}
+ - maas
+ - baremetal_init
+{%- endif %}
+ - openstack_noha
+ - neutron_gateway
+ - networks
+virtual:
+ nodes:
+ infra:
+ - cfg01
+{%- if nm.cluster.has_baremetal_nodes %}
+ - mas01
+{%- endif %}
+ control:
+ - ctl01
+ - gtw01
+ compute:
+ - cmp001
+ - cmp002
+ ctl01:
+ vcpus: 4
+ ram: 14336
+ gtw01:
+ ram: 2048
diff --git a/mcp/reclass/classes/cluster/mcp-vpp-ha/infra/config.yml b/mcp/reclass/classes/cluster/mcp-vpp-ha/infra/config.yml
new file mode 100644
index 000000000..06347bf22
--- /dev/null
+++ b/mcp/reclass/classes/cluster/mcp-vpp-ha/infra/config.yml
@@ -0,0 +1,12 @@
+##############################################################################
+# 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-common-ha.infra.config
+ - cluster.mcp-vpp-ha.infra
+ - cluster.all-mcp-arch-common.infra.config_pdf
diff --git a/mcp/reclass/classes/cluster/mcp-vpp-ha/infra/init.yml b/mcp/reclass/classes/cluster/mcp-vpp-ha/infra/init.yml
new file mode 100644
index 000000000..a434ef7c1
--- /dev/null
+++ b/mcp/reclass/classes/cluster/mcp-vpp-ha/infra/init.yml
@@ -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
+##############################################################################
+---
+classes:
+ - cluster.mcp-common-ha.infra
+ - cluster.mcp-vpp-ha.openstack
+parameters:
+ _param:
+ cluster_name: mcp-vpp-ha
diff --git a/mcp/reclass/classes/cluster/mcp-vpp-ha/infra/init_vcp.yml.j2 b/mcp/reclass/classes/cluster/mcp-vpp-ha/infra/init_vcp.yml.j2
new file mode 100644
index 000000000..21d2e42ce
--- /dev/null
+++ b/mcp/reclass/classes/cluster/mcp-vpp-ha/infra/init_vcp.yml.j2
@@ -0,0 +1,12 @@
+##############################################################################
+# 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 %}
+classes:
+ - cluster.mcp-vpp-ha.infra
+{%- endif %}
diff --git a/mcp/reclass/classes/cluster/mcp-vpp-ha/infra/kvm.yml.j2 b/mcp/reclass/classes/cluster/mcp-vpp-ha/infra/kvm.yml.j2
new file mode 100644
index 000000000..2f72c4178
--- /dev/null
+++ b/mcp/reclass/classes/cluster/mcp-vpp-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-common-ha.infra.kvm
+ - cluster.mcp-vpp-ha.infra
+{%- endif %}
diff --git a/mcp/reclass/classes/cluster/mcp-vpp-ha/infra/maas.yml b/mcp/reclass/classes/cluster/mcp-vpp-ha/infra/maas.yml
new file mode 100644
index 000000000..b2b66992c
--- /dev/null
+++ b/mcp/reclass/classes/cluster/mcp-vpp-ha/infra/maas.yml
@@ -0,0 +1,11 @@
+##############################################################################
+# 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.infra.maas
+ - cluster.mcp-vpp-ha.infra
diff --git a/mcp/reclass/classes/cluster/mcp-vpp-ha/init.yml b/mcp/reclass/classes/cluster/mcp-vpp-ha/init.yml
new file mode 100644
index 000000000..dc6b8bfef
--- /dev/null
+++ b/mcp/reclass/classes/cluster/mcp-vpp-ha/init.yml
@@ -0,0 +1,12 @@
+##############################################################################
+# 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-vpp-ha.infra
+ - cluster.mcp-vpp-ha.openstack
diff --git a/mcp/reclass/classes/cluster/mcp-vpp-ha/openstack/compute.yml b/mcp/reclass/classes/cluster/mcp-vpp-ha/openstack/compute.yml
new file mode 100644
index 000000000..0518a8b57
--- /dev/null
+++ b/mcp/reclass/classes/cluster/mcp-vpp-ha/openstack/compute.yml
@@ -0,0 +1,17 @@
+##############################################################################
+# 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-common-ha.openstack_compute
+ - cluster.mcp-vpp-ha.openstack.compute_pdf
+ - cluster.mcp-vpp-ha.infra
+parameters:
+ nova:
+ compute:
+ libvirt_service: libvirtd
+ libvirt_bin: /etc/default/libvirtd
diff --git a/mcp/reclass/classes/cluster/mcp-vpp-ha/openstack/compute_pdf.yml.j2 b/mcp/reclass/classes/cluster/mcp-vpp-ha/openstack/compute_pdf.yml.j2
new file mode 100644
index 000000000..f3844ad8c
--- /dev/null
+++ b/mcp/reclass/classes/cluster/mcp-vpp-ha/openstack/compute_pdf.yml.j2
@@ -0,0 +1,36 @@
+##############################################################################
+# 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 %}
+{%- import 'net_macros.j2' as ma with context %}
+{#- Filter-out NIC duplicates by constructing a dict (used NICs only) #}
+{%- set nics = { nm.cmp001.nic_private: True } %}
+{%- set vlan_private_start = (nm.vlan_private | string).rsplit('-')[0] %}
+{%- set vlans = { vlan_private_start: nm.cmp001.nic_private } %}
+---
+parameters:
+ linux:
+ network:
+ interface:
+
+{#- prevent duplicates for tagged mgmt on the same physical interface as PXE/admin #}
+{%- if nm.cmp001.nic_admin in nics %}
+ {%- do nics.pop(nm.cmp001.nic_admin) %}
+{%- endif %}
+
+{{ ma.linux_network_interfaces_nic(nics) }}
+
+{{ ma.linux_network_interfaces_vlan(vlans) }}
+
+ br-mesh:
+ enabled: true
+ type: bridge
+ address: ${_param:tenant_address}
+ netmask: ${_param:opnfv_net_private_mask}
+ mtu: 1500
+ use_interfaces:
+ - {{ ma.interface_str(nm.cmp001.nic_private, vlan_private_start) }}
diff --git a/mcp/reclass/classes/cluster/mcp-vpp-ha/openstack/control.yml b/mcp/reclass/classes/cluster/mcp-vpp-ha/openstack/control.yml
new file mode 100644
index 000000000..9bca1f084
--- /dev/null
+++ b/mcp/reclass/classes/cluster/mcp-vpp-ha/openstack/control.yml
@@ -0,0 +1,13 @@
+##############################################################################
+# 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-common-ha.openstack_interface_vcp_biport
+ - cluster.mcp-common-ha.openstack_control
+ - cluster.mcp-vpp-ha.infra
diff --git a/mcp/reclass/classes/cluster/mcp-vpp-ha/openstack/database.yml b/mcp/reclass/classes/cluster/mcp-vpp-ha/openstack/database.yml
new file mode 100644
index 000000000..a75fa675b
--- /dev/null
+++ b/mcp/reclass/classes/cluster/mcp-vpp-ha/openstack/database.yml
@@ -0,0 +1,12 @@
+##############################################################################
+# 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-common-ha.openstack_interface_vcp_biport
+ - cluster.mcp-common-ha.openstack_database
+ - cluster.mcp-vpp-ha.infra.init_vcp
diff --git a/mcp/reclass/classes/cluster/mcp-vpp-ha/openstack/init.yml b/mcp/reclass/classes/cluster/mcp-vpp-ha/openstack/init.yml
new file mode 100644
index 000000000..9dbfd59a1
--- /dev/null
+++ b/mcp/reclass/classes/cluster/mcp-vpp-ha/openstack/init.yml
@@ -0,0 +1,13 @@
+##############################################################################
+# 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-common-ha.openstack_init
+parameters:
+ _param:
+ neutron_tenant_network_types: "flat,vxlan"
diff --git a/mcp/reclass/classes/cluster/mcp-vpp-ha/openstack/message_queue.yml b/mcp/reclass/classes/cluster/mcp-vpp-ha/openstack/message_queue.yml
new file mode 100644
index 000000000..42a1b658e
--- /dev/null
+++ b/mcp/reclass/classes/cluster/mcp-vpp-ha/openstack/message_queue.yml
@@ -0,0 +1,12 @@
+##############################################################################
+# 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-common-ha.openstack_interface_vcp_biport
+ - cluster.mcp-common-ha.openstack_message_queue
+ - cluster.mcp-vpp-ha.infra.init_vcp
diff --git a/mcp/reclass/classes/cluster/mcp-vpp-ha/openstack/proxy.yml b/mcp/reclass/classes/cluster/mcp-vpp-ha/openstack/proxy.yml
new file mode 100644
index 000000000..3a82e51a6
--- /dev/null
+++ b/mcp/reclass/classes/cluster/mcp-vpp-ha/openstack/proxy.yml
@@ -0,0 +1,12 @@
+##############################################################################
+# 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-common-ha.openstack_interface_vcp_triport
+ - cluster.mcp-common-ha.openstack_proxy
+ - cluster.mcp-vpp-ha.infra.init_vcp
diff --git a/mcp/reclass/classes/cluster/mcp-vpp-ha/openstack/telemetry.yml b/mcp/reclass/classes/cluster/mcp-vpp-ha/openstack/telemetry.yml
new file mode 100644
index 000000000..402616868
--- /dev/null
+++ b/mcp/reclass/classes/cluster/mcp-vpp-ha/openstack/telemetry.yml
@@ -0,0 +1,12 @@
+##############################################################################
+# 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-common-ha.openstack_interface_vcp_biport
+ - cluster.mcp-common-ha.openstack_telemetry
+ - cluster.mcp-vpp-ha.infra.init_vcp
diff --git a/mcp/reclass/classes/cluster/mcp-vpp-noha/infra/config.yml b/mcp/reclass/classes/cluster/mcp-vpp-noha/infra/config.yml
new file mode 100644
index 000000000..0263a57d0
--- /dev/null
+++ b/mcp/reclass/classes/cluster/mcp-vpp-noha/infra/config.yml
@@ -0,0 +1,22 @@
+##############################################################################
+# 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.reclass.storage.system.openstack_gateway_single
+ - cluster.mcp-common-noha.infra.config
+ - cluster.mcp-vpp-noha
+ - cluster.all-mcp-arch-common.infra.config_pdf
+parameters:
+ reclass:
+ storage:
+ node:
+ openstack_gateway_node01:
+ params:
+ tenant_address: ${_param:opnfv_openstack_gateway_node01_tenant_address}
+ external_address: ${_param:opnfv_openstack_gateway_node01_external_address}
+ pxe_admin_address: ${_param:opnfv_openstack_gateway_node01_pxe_admin_address}
diff --git a/mcp/reclass/classes/cluster/mcp-vpp-noha/infra/init.yml b/mcp/reclass/classes/cluster/mcp-vpp-noha/infra/init.yml
new file mode 100644
index 000000000..f61519664
--- /dev/null
+++ b/mcp/reclass/classes/cluster/mcp-vpp-noha/infra/init.yml
@@ -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
+##############################################################################
+---
+classes:
+ - cluster.mcp-common-noha.infra
+
+parameters:
+ _param:
+ cluster_name: mcp-vpp-noha
diff --git a/mcp/reclass/classes/cluster/mcp-vpp-noha/infra/maas.yml b/mcp/reclass/classes/cluster/mcp-vpp-noha/infra/maas.yml
new file mode 100644
index 000000000..e02d0304f
--- /dev/null
+++ b/mcp/reclass/classes/cluster/mcp-vpp-noha/infra/maas.yml
@@ -0,0 +1,11 @@
+##############################################################################
+# 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.infra.maas
+ - cluster.mcp-vpp-noha.infra
diff --git a/mcp/reclass/classes/cluster/mcp-vpp-noha/init.yml b/mcp/reclass/classes/cluster/mcp-vpp-noha/init.yml
new file mode 100644
index 000000000..41515cf6d
--- /dev/null
+++ b/mcp/reclass/classes/cluster/mcp-vpp-noha/init.yml
@@ -0,0 +1,12 @@
+##############################################################################
+# 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-common-noha.init_options
+ - cluster.mcp-vpp-noha.infra
+ - cluster.mcp-vpp-noha.openstack
diff --git a/mcp/reclass/classes/cluster/mcp-vpp-noha/openstack/compute.yml.j2 b/mcp/reclass/classes/cluster/mcp-vpp-noha/openstack/compute.yml.j2
new file mode 100644
index 000000000..9142743da
--- /dev/null
+++ b/mcp/reclass/classes/cluster/mcp-vpp-noha/openstack/compute.yml.j2
@@ -0,0 +1,32 @@
+##############################################################################
+# 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 %}
+{%- import 'net_macros.j2' as ma with context %}
+{%- set vlan_private_start = (nm.vlan_private | string).rsplit('-')[0] %}
+---
+classes:
+ - service.neutron.compute.single
+ - cluster.mcp-common-noha.openstack_compute
+ - cluster.mcp-vpp-noha
+parameters:
+ linux:
+ network:
+ interface:
+ pxe_admin_int:
+ # For scenarios without public network on cmp, set admin gw
+ gateway: {{ nm.net_admin_gw }}
+ name_servers:
+ - {{ nm.net_admin_gw }}
+ br-mesh:
+ enabled: true
+ type: bridge
+ proto: static
+ address: ${_param:tenant_address}
+ netmask: ${_param:opnfv_net_private_mask}
+ use_interfaces:
+ - {{ ma.interface_str(nm.cmp001.nic_private, vlan_private_start) }}
diff --git a/mcp/reclass/classes/cluster/mcp-vpp-noha/openstack/control.yml b/mcp/reclass/classes/cluster/mcp-vpp-noha/openstack/control.yml
new file mode 100644
index 000000000..49dc3da4a
--- /dev/null
+++ b/mcp/reclass/classes/cluster/mcp-vpp-noha/openstack/control.yml
@@ -0,0 +1,12 @@
+##############################################################################
+# 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.single
+ - cluster.mcp-common-noha.openstack_control
+ - cluster.mcp-vpp-noha
diff --git a/mcp/reclass/classes/cluster/mcp-vpp-noha/openstack/gateway.yml.j2 b/mcp/reclass/classes/cluster/mcp-vpp-noha/openstack/gateway.yml.j2
new file mode 100644
index 000000000..27e6372b0
--- /dev/null
+++ b/mcp/reclass/classes/cluster/mcp-vpp-noha/openstack/gateway.yml.j2
@@ -0,0 +1,28 @@
+##############################################################################
+# 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 %}
+{%- import 'net_macros.j2' as ma with context %}
+{%- set vlan_private_start = (nm.vlan_private | string).rsplit('-')[0] %}
+---
+classes:
+ - cluster.mcp-common-noha.openstack_gateway
+ - service.neutron.gateway.single
+ - cluster.mcp-vpp-noha
+parameters:
+ linux:
+ network:
+ interface:
+ br-mesh:
+ enabled: true
+ type: bridge
+ mtu: ${_param:interface_mtu}
+ proto: static
+ address: ${_param:tenant_address}
+ netmask: ${_param:opnfv_net_private_mask}
+ use_interfaces:
+ - {{ ma.interface_str(nm.ctl01.nic_private, vlan_private_start) }}
diff --git a/mcp/reclass/classes/cluster/mcp-vpp-noha/openstack/init.yml b/mcp/reclass/classes/cluster/mcp-vpp-noha/openstack/init.yml
new file mode 100644
index 000000000..79e231825
--- /dev/null
+++ b/mcp/reclass/classes/cluster/mcp-vpp-noha/openstack/init.yml
@@ -0,0 +1,13 @@
+##############################################################################
+# 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-common-noha.openstack_init
+parameters:
+ _param:
+ neutron_tenant_network_types: "flat,vxlan"
diff --git a/mcp/reclass/nodes/cfg01.mcp-vpp-ha.local.yml b/mcp/reclass/nodes/cfg01.mcp-vpp-ha.local.yml
new file mode 100644
index 000000000..89bb3c3ca
--- /dev/null
+++ b/mcp/reclass/nodes/cfg01.mcp-vpp-ha.local.yml
@@ -0,0 +1,18 @@
+##############################################################################
+# 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-vpp-ha.infra.config
+parameters:
+ _param:
+ linux_system_codename: xenial
+ reclass_data_revision: master
+ linux:
+ system:
+ name: cfg01
+ domain: mcp-vpp-ha.local
diff --git a/mcp/reclass/nodes/cfg01.mcp-vpp-noha.local.yml b/mcp/reclass/nodes/cfg01.mcp-vpp-noha.local.yml
new file mode 100644
index 000000000..381243168
--- /dev/null
+++ b/mcp/reclass/nodes/cfg01.mcp-vpp-noha.local.yml
@@ -0,0 +1,18 @@
+##############################################################################
+# Copyright (c) 2017 Mirantis Inc., Enea AB and others.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+---
+classes:
+ - cluster.mcp-vpp-noha.infra.config
+parameters:
+ _param:
+ linux_system_codename: xenial
+ reclass_data_revision: master
+ linux:
+ system:
+ name: cfg01
+ domain: mcp-vpp-noha.local