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 --- .../cluster/mcp-pike-common-ha/infra/config.yml | 4 + .../cluster/mcp-pike-common-ha/infra/init.yml | 105 ------------------- .../cluster/mcp-pike-common-ha/infra/init.yml.j2 | 112 +++++++++++++++++++++ 3 files changed, 116 insertions(+), 105 deletions(-) delete mode 100644 mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/init.yml create mode 100644 mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/init.yml.j2 (limited to 'mcp/reclass/classes/cluster/mcp-pike-common-ha/infra') 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 deleted file mode 100644 index acacd2151..000000000 --- a/mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/init.yml +++ /dev/null @@ -1,105 +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.single - - cluster.all-mcp-arch-common - # - cluster.mcp-pike-common-ha.stacklight - # - cluster.mcp-pike-common-ha.stacklight.client -parameters: - _param: - apt_mk_version: nightly - mcp_repo_version: 1.1 - salt_version: 2016.11 - cluster_domain: ${_param:cluster_name}.local - # stacklight_environment: ${_param:cluster_domain} - reclass_data_revision: master - reclass_config_master: ${_param:opnfv_infra_config_pxe_address} - cluster_public_host: ${_param:openstack_proxy_address} - infra_config_hostname: cfg01 - infra_maas_database_password: opnfv_secret - - # infra service addresses - infra_config_address: ${_param:opnfv_infra_config_address} - infra_config_deploy_address: ${_param:opnfv_salt_master_ip} - infra_maas_node01_address: ${_param:opnfv_infra_maas_node01_address} - infra_maas_node01_deploy_address: ${_param:opnfv_infra_maas_node01_deploy_address} - - infra_kvm_address: ${_param:opnfv_infra_kvm_address} - 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} - - infra_maas_node01_hostname: mas01 - infra_kvm_node01_hostname: kvm01 - infra_kvm_node02_hostname: kvm02 - infra_kvm_node03_hostname: kvm03 - - ntp_strata_host1: 1.pool.ntp.org - ntp_strata_host2: 0.pool.ntp.org - - # Interface definitions - reclass: - storage: - node: - name: default - - # yamllint disable-line rule:line-length - salt_api_password_hash: "$6$WV0P1shnoDh2gI/Z$22/Bcd7ffMv0jDlFpT63cAU4PiXHz9pjXwngToKwqAsgoeK4HNR3PiKaushjxp3JsQ8hNoJmAC6TxzVqfV8WH/" - reclass: - storage: - node: - openstack_proxy_node01: - params: - control_address: ${_param:openstack_proxy_node01_control_address} - openstack_proxy_node02: - params: - control_address: ${_param:openstack_proxy_node02_control_address} - linux: - system: - apt: - config: - prefer_ipv4: - Acquire::ForceIPv4: true - user: - ubuntu: - enabled: true - sudo: true - home: /home/ubuntu - network: - host: - cfg01: - address: ${_param:infra_config_address} - names: - - cfg01 - - cfg01.${_param:cluster_domain} - cfg: - address: ${_param:infra_config_address} - names: - - ${_param:infra_config_hostname} - - ${_param:infra_config_hostname}.${_param:cluster_domain} - mas01: - address: ${_param:infra_maas_node01_address} - names: - - ${_param:infra_maas_node01_hostname} - - ${_param:infra_maas_node01_hostname}.${_param:cluster_domain} - kvm01: - address: ${_param:infra_kvm_node01_address} - names: - - ${_param:infra_kvm_node01_hostname} - - ${_param:infra_kvm_node01_hostname}.${_param:cluster_domain} - kvm02: - address: ${_param:infra_kvm_node02_address} - names: - - ${_param:infra_kvm_node02_hostname} - - ${_param:infra_kvm_node02_hostname}.${_param:cluster_domain} - kvm03: - address: ${_param:infra_kvm_node03_address} - names: - - ${_param:infra_kvm_node03_hostname} - - ${_param:infra_kvm_node03_hostname}.${_param:cluster_domain} diff --git a/mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/init.yml.j2 b/mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/init.yml.j2 new file mode 100644 index 000000000..7f3839e82 --- /dev/null +++ b/mcp/reclass/classes/cluster/mcp-pike-common-ha/infra/init.yml.j2 @@ -0,0 +1,112 @@ +############################################################################## +# 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.single + - cluster.all-mcp-arch-common + # - cluster.mcp-pike-common-ha.stacklight + # - cluster.mcp-pike-common-ha.stacklight.client +parameters: + _param: + apt_mk_version: nightly + mcp_repo_version: 1.1 + salt_version: 2016.11 + cluster_domain: ${_param:cluster_name}.local + # stacklight_environment: ${_param:cluster_domain} + reclass_data_revision: master + reclass_config_master: ${_param:opnfv_infra_config_pxe_address} + cluster_public_host: ${_param:openstack_proxy_address} + infra_config_hostname: cfg01 + infra_maas_database_password: opnfv_secret + + # infra service addresses + infra_config_address: ${_param:opnfv_infra_config_address} + infra_config_deploy_address: ${_param:opnfv_salt_master_ip} + infra_maas_node01_address: ${_param:opnfv_infra_maas_node01_address} + 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 + infra_kvm_node02_hostname: kvm02 + infra_kvm_node03_hostname: kvm03 + + ntp_strata_host1: 1.pool.ntp.org + ntp_strata_host2: 0.pool.ntp.org + + # Interface definitions + reclass: + storage: + node: + name: default + + # yamllint disable-line rule:line-length + salt_api_password_hash: "$6$WV0P1shnoDh2gI/Z$22/Bcd7ffMv0jDlFpT63cAU4PiXHz9pjXwngToKwqAsgoeK4HNR3PiKaushjxp3JsQ8hNoJmAC6TxzVqfV8WH/" + reclass: + storage: + node: + openstack_proxy_node01: + params: + control_address: ${_param:openstack_proxy_node01_control_address} + openstack_proxy_node02: + params: + control_address: ${_param:openstack_proxy_node02_control_address} + linux: + system: + apt: + config: + prefer_ipv4: + Acquire::ForceIPv4: true + user: + ubuntu: + enabled: true + sudo: true + home: /home/ubuntu + network: + host: + cfg01: + address: ${_param:infra_config_address} + names: + - cfg01 + - cfg01.${_param:cluster_domain} + cfg: + address: ${_param:infra_config_address} + names: + - ${_param:infra_config_hostname} + - ${_param:infra_config_hostname}.${_param:cluster_domain} + mas01: + address: ${_param:infra_maas_node01_address} + names: + - ${_param:infra_maas_node01_hostname} + - ${_param:infra_maas_node01_hostname}.${_param:cluster_domain} + kvm01: + address: ${_param:infra_kvm_node01_address} + names: + - ${_param:infra_kvm_node01_hostname} + - ${_param:infra_kvm_node01_hostname}.${_param:cluster_domain} + kvm02: + address: ${_param:infra_kvm_node02_address} + names: + - ${_param:infra_kvm_node02_hostname} + - ${_param:infra_kvm_node02_hostname}.${_param:cluster_domain} + kvm03: + address: ${_param:infra_kvm_node03_address} + names: + - ${_param:infra_kvm_node03_hostname} + - ${_param:infra_kvm_node03_hostname}.${_param:cluster_domain} -- cgit 1.2.3-korg