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-pike-common-ha/openstack_proxy.yml.j2 | 98 ++++++++++++++++++++++ 1 file changed, 98 insertions(+) create mode 100644 mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_proxy.yml.j2 (limited to 'mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_proxy.yml.j2') diff --git a/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_proxy.yml.j2 b/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_proxy.yml.j2 new file mode 100644 index 000000000..26943b7b6 --- /dev/null +++ b/mcp/reclass/classes/cluster/mcp-pike-common-ha/openstack_proxy.yml.j2 @@ -0,0 +1,98 @@ +############################################################################## +# 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 +{%- if not conf.MCP_VCP %} + # Set up routes similar to prx*ovs-ha + network: + interface: + br-ex: + route: + public: + address: 0.0.0.0 + netmask: 0.0.0.0 + gateway: ${_param:opnfv_net_public_gw} + nginx: + server: + # NOTE(armband): Define host.address for all proxies for uniformity + site: + nginx_proxy_novnc: &nginx_openstack_proxy_address + host: + address: ${_param:openstack_proxy_address} + nginx_proxy_openstack_api_aodh: + <<: *nginx_openstack_proxy_address + nginx_proxy_openstack_api_ceilometer: + <<: *nginx_openstack_proxy_address + nginx_proxy_openstack_api_cinder: + <<: *nginx_openstack_proxy_address + nginx_proxy_openstack_api_glance: + <<: *nginx_openstack_proxy_address + nginx_proxy_openstack_api_heat: + <<: *nginx_openstack_proxy_address + nginx_proxy_openstack_api_heat_cfn: + <<: *nginx_openstack_proxy_address + nginx_proxy_openstack_api_heat_cloudwatch: + <<: *nginx_openstack_proxy_address + nginx_proxy_openstack_api_keystone: + <<: *nginx_openstack_proxy_address + nginx_proxy_openstack_api_keystone_private: + <<: *nginx_openstack_proxy_address + nginx_proxy_openstack_api_neutron: + <<: *nginx_openstack_proxy_address + nginx_proxy_openstack_api_nova: + <<: *nginx_openstack_proxy_address + nginx_proxy_openstack_api_nova_ec2: + <<: *nginx_openstack_proxy_address + nginx_proxy_openstack_web: + <<: *nginx_openstack_proxy_address + nginx_ssl_redirect_openstack_web: + <<: *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' -- cgit 1.2.3-korg