blob: 6e0d764e320a02fdee61be5d735682c5baf94899 [file] [log] [blame]
Dennis Dmitriev67aea4a2018-03-14 14:20:20 +02001{% from 'cookied-model-generator/underlay.yaml' import HOSTNAME_CFG01 with context %}
Dennis Dmitriev67aea4a2018-03-14 14:20:20 +02002{% from 'cookied-model-generator/underlay.yaml' import DOMAIN_NAME with context %}
3
Dennis Dmitriev01e30832018-03-22 19:42:00 +02004{% set LAB_CONFIG_NAME = 'cookied-mcp-pike-dpdk' %}
Dennis Dmitriev67aea4a2018-03-14 14:20:20 +02005# Name of the context file (without extension, that is fixed .yaml) used to render the Environment model
6{% set ENVIRONMENT_MODEL_INVENTORY_NAME = os_env('ENVIRONMENT_MODEL_INVENTORY_NAME', LAB_CONFIG_NAME) %}
7# Path to the context files used to render Cluster and Environment models
8{%- set CLUSTER_CONTEXT_NAME = '_context-cookiecutter-pike-ovs-dpdk.yaml' %}
9{%- set ENVIRONMENT_CONTEXT_NAMES = ['_context-environment.yaml'] %}
10
11{% import 'shared-salt.yaml' as SHARED with context %}
12
Dennis Dmitriev2c9db8d2018-03-26 21:49:59 +030013{{ SHARED.MACRO_INSTALL_PACKAGES_ON_NODES(HOSTNAME_CFG01) }}
14- description: Re-install all the fromulas
15 cmd: |
16 set -e;
17 apt-get install -y salt-formula-*
18 node_name: {{ HOSTNAME_CFG01 }}
19 retry: {count: 1, delay: 1}
20 skip_fail: false
21
Tatyana Leontovich2e892752018-07-05 19:56:10 +030022- description: Sync formulas to service
23 cmd: |
24 set -e;
25 RECLASS_ROOT=${RECLASS_ROOT:-/srv/salt/reclass/};
26 FORMULAS_PATH=${FORMULAS_PATH:-/usr/share/salt-formulas};
27 [ ! -d ${RECLASS_ROOT}/classes/service ] && mkdir -p ${RECLASS_ROOT}/classes/service;
28 for formula_service in $(ls /usr/share/salt-formulas/reclass/service/); do
29 #Since some salt formula names contain "-" and in symlinks they should contain "_" adding replacement;
30 formula_service=${formula_service//-/$'_'};
31 if [ ! -L "${RECLASS_ROOT}/classes/service/${formula_service}" ]; then
32 ln -sf ${FORMULAS_PATH}/reclass/service/${formula_service} ${RECLASS_ROOT}/classes/service/${formula_service};
33 fi;
34 done
35 node_name: {{ HOSTNAME_CFG01 }}
36 retry: {count: 1, delay: 1}
37 skip_fail: false
38
Dennis Dmitriev67aea4a2018-03-14 14:20:20 +020039{{ SHARED.MACRO_GENERATE_COOKIECUTTER_MODEL() }}
40
41{{ SHARED.MACRO_GENERATE_AND_ENABLE_ENVIRONMENT_MODEL() }}
42
43- description: "Workaround for combined roles: remove unnecessary classes"
44 cmd: |
45 set -e;
46 sed -i '/system.reclass.storage.system.physical_control_cluster/d' /srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/infra/config.yml;
47 sed -i '/system.reclass.storage.system.stacklight_telemetry_cluster/d' /srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/infra/config.yml;
48 sed -i '/system.reclass.storage.system.stacklight_log_cluster/d' /srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/infra/config.yml;
49
50 # Start compute node addresses from .105 , as in static models
51 sed -i 's/start: 101/start: 105/g' /srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/infra/config.yml;
52
53 . /root/venv-reclass-tools/bin/activate;
54 reclass-tools del-key parameters.reclass.storage.node.infra_kvm_node01 /srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/infra/config.yml;
55 reclass-tools del-key parameters.reclass.storage.node.infra_kvm_node02 /srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/infra/config.yml;
56 reclass-tools del-key parameters.reclass.storage.node.infra_kvm_node03 /srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/infra/config.yml;
57 reclass-tools del-key parameters.reclass.storage.node.stacklight_log_node01 /srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/infra/config.yml;
58
Dennis Dmitriev38f36832018-03-29 01:44:27 +030059 # set wider cpu mask for DPDK
Dennis Dmitrievc1e95c22018-03-29 03:35:43 +030060 salt-call reclass.cluster_meta_set name='compute_ovs_dpdk_lcore_mask' value='"0xF"' file_name=/srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/openstack/init.yml
61 salt-call reclass.cluster_meta_set name='compute_hugepages_size' value='"2M"' file_name=/srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/openstack/init.yml
62 salt-call reclass.cluster_meta_set name='compute_hugepages_mount' value='"/mnt/hugepages_2M"' file_name=/srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/openstack/init.yml
Tatyana Leontovich1dc28bc2018-05-25 14:50:10 +030063 # set virtual disks for compute
64 sed -i 's/cinder_lvm_devices: \[ "\/dev\/sdb" \]/cinder_lvm_devices: \[ "\/dev\/vdb" \]/g' /srv/salt/reclass/classes/environment/{{ SHARED.CLUSTER_NAME }}/features/lvm_backend/init.yml
Dennis Dmitriev38f36832018-03-29 01:44:27 +030065
Dennis Dmitriev67aea4a2018-03-14 14:20:20 +020066 node_name: {{ HOSTNAME_CFG01 }}
67 retry: {count: 1, delay: 5}
68 skip_fail: false
69
Dennis Dmitriev01e30832018-03-22 19:42:00 +020070- description: "Workaround for combined roles: remove unnecessary classes"
71 cmd: |
72 cat << 'EOF' >> /srv/salt/reclass/classes/cluster/{{ SHARED.CLUSTER_NAME }}/openstack/compute/dpdk.yml
73 parameters:
74 neutron:
75 compute:
76 bridge_mappings:
77 physnet2: br-prv
78 EOF
79 node_name: {{ HOSTNAME_CFG01 }}
80 retry: {count: 1, delay: 5}
81 skip_fail: false
82
Dennis Dmitriev67aea4a2018-03-14 14:20:20 +020083{{ SHARED.MACRO_GENERATE_INVENTORY(RERUN_SALTMASTER_STATE=true) }}