Dennis Dmitriev | 67aea4a | 2018-03-14 14:20:20 +0200 | [diff] [blame] | 1 | {% from 'cookied-model-generator/underlay.yaml' import HOSTNAME_CFG01 with context %} |
Dennis Dmitriev | 67aea4a | 2018-03-14 14:20:20 +0200 | [diff] [blame] | 2 | {% from 'cookied-model-generator/underlay.yaml' import DOMAIN_NAME with context %} |
| 3 | |
Dennis Dmitriev | 01e3083 | 2018-03-22 19:42:00 +0200 | [diff] [blame] | 4 | {% set LAB_CONFIG_NAME = 'cookied-mcp-pike-dpdk' %} |
Dennis Dmitriev | 67aea4a | 2018-03-14 14:20:20 +0200 | [diff] [blame] | 5 | # 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 Dmitriev | 2c9db8d | 2018-03-26 21:49:59 +0300 | [diff] [blame] | 13 | {{ 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 Leontovich | 2e89275 | 2018-07-05 19:56:10 +0300 | [diff] [blame] | 22 | - 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 Dmitriev | 67aea4a | 2018-03-14 14:20:20 +0200 | [diff] [blame] | 39 | {{ 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 Dmitriev | 38f3683 | 2018-03-29 01:44:27 +0300 | [diff] [blame] | 59 | # set wider cpu mask for DPDK |
Dennis Dmitriev | c1e95c2 | 2018-03-29 03:35:43 +0300 | [diff] [blame] | 60 | 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 Leontovich | 1dc28bc | 2018-05-25 14:50:10 +0300 | [diff] [blame] | 63 | # 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 Dmitriev | 38f3683 | 2018-03-29 01:44:27 +0300 | [diff] [blame] | 65 | |
Dennis Dmitriev | 67aea4a | 2018-03-14 14:20:20 +0200 | [diff] [blame] | 66 | node_name: {{ HOSTNAME_CFG01 }} |
| 67 | retry: {count: 1, delay: 5} |
| 68 | skip_fail: false |
| 69 | |
Dennis Dmitriev | 01e3083 | 2018-03-22 19:42:00 +0200 | [diff] [blame] | 70 | - 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 Dmitriev | 67aea4a | 2018-03-14 14:20:20 +0200 | [diff] [blame] | 83 | {{ SHARED.MACRO_GENERATE_INVENTORY(RERUN_SALTMASTER_STATE=true) }} |