From a21457cc96a640700736189612261e9bcae3d825 Mon Sep 17 00:00:00 2001 From: Alexandru Avadanii Date: Mon, 19 Feb 2018 19:01:56 +0100 Subject: [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 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 --- mcp/config/labs/local/idf-virtual1.yaml | 4 +- mcp/config/scenario/.gitignore | 2 +- mcp/config/scenario/os-nosdn-nofeature-ha.yaml | 26 --------- mcp/config/scenario/os-nosdn-nofeature-ha.yaml.j2 | 67 +++++++++++++++++++++ .../scenario/os-nosdn-nofeature-novcp-ha.yaml.j2 | 58 ------------------ mcp/config/scenario/os-nosdn-ovs-ha.yaml | 27 --------- mcp/config/scenario/os-nosdn-ovs-ha.yaml.j2 | 68 ++++++++++++++++++++++ mcp/config/scenario/os-odl-nofeature-ha.yaml | 27 --------- mcp/config/scenario/os-odl-nofeature-ha.yaml.j2 | 68 ++++++++++++++++++++++ mcp/config/scenario/os-ovn-nofeature-ha.yaml | 26 --------- mcp/config/scenario/os-ovn-nofeature-ha.yaml.j2 | 67 +++++++++++++++++++++ 11 files changed, 274 insertions(+), 166 deletions(-) delete mode 100644 mcp/config/scenario/os-nosdn-nofeature-ha.yaml create mode 100644 mcp/config/scenario/os-nosdn-nofeature-ha.yaml.j2 delete mode 100644 mcp/config/scenario/os-nosdn-nofeature-novcp-ha.yaml.j2 delete mode 100644 mcp/config/scenario/os-nosdn-ovs-ha.yaml create mode 100644 mcp/config/scenario/os-nosdn-ovs-ha.yaml.j2 delete mode 100644 mcp/config/scenario/os-odl-nofeature-ha.yaml create mode 100644 mcp/config/scenario/os-odl-nofeature-ha.yaml.j2 delete mode 100644 mcp/config/scenario/os-ovn-nofeature-ha.yaml create mode 100644 mcp/config/scenario/os-ovn-nofeature-ha.yaml.j2 (limited to 'mcp/config') 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-ha.yaml.j2 b/mcp/config/scenario/os-nosdn-nofeature-ha.yaml.j2 new file mode 100644 index 000000000..2c4a5f197 --- /dev/null +++ b/mcp/config/scenario/os-nosdn-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-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: + 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-nosdn-nofeature-novcp-ha.yaml.j2 b/mcp/config/scenario/os-nosdn-nofeature-novcp-ha.yaml.j2 deleted file mode 100644 index 8a366e9f9..000000000 --- a/mcp/config/scenario/os-nosdn-nofeature-novcp-ha.yaml.j2 +++ /dev/null @@ -1,58 +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 -############################################################################## -{%- 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-novcp-ha.local - states: -{%- if cluster.has_baremetal_nodes %} - - maas - - baremetal_init -{%- 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 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 -- cgit 1.2.3-korg