summaryrefslogtreecommitdiffstats
path: root/build/instackenv.json.example
blob: 370ff2022f7074585f8dc074eab889c45dc89304 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
{
  "nodes": [
    {
      "cpu": "24",
      "memory": "64220",
      "disk": "40",
      "arch": "x86_64",
      "mac": [
        "b8:ca:3a:63:8b:58"
      ],
      "pm_type": "pxe_ipmitool",
      "pm_addr": "10.1.8.70",
      "pm_user": "root",
      "pm_password": "password",
      "capabilities": "profile:control"
    },
    {
      "cpu": "24",
      "memory": "64220",
      "disk": "40",
      "arch": "x86_64",
      "mac": [
        "b8:ca:3a:63:87:88"
      ],
      "pm_type": "pxe_ipmitool",
      "pm_addr": "10.1.8.73",
      "pm_user": "root",
      "pm_password": "password",
      "capabilities": "profile:control"
    },
    {
      "cpu": "24",
      "memory": "64220",
      "disk": "40",
      "arch": "x86_64",
      "mac": [
        "b8:ca:3a:63:87:10"
      ],
      "pm_type": "pxe_ipmitool",
      "pm_addr": "10.1.8.74",
      "pm_user": "root",
      "pm_password": "password",
      "capabilities": "profile:control"
    },
    {
      "cpu": "24",
      "memory": "64220",
      "disk": "40",
      "arch": "x86_64",
      "mac": [
        "B8:CA:3A:63:87:48"
      ],
      "pm_type": "pxe_ipmitool",
      "pm_addr": "10.1.8.76",
      "pm_user": "root",
      "pm_password": "password",
      "capabilities": "profile:compute"
    },
    {
      "cpu": "24",
      "memory": "64220",
      "disk": "40",
      "arch": "x86_64",
      "mac": [
        "B8:CA:3A:63:8B:18"
      ],
      "pm_type": "pxe_ipmitool",
      "pm_addr": "10.1.8.78",
      "pm_user": "root",
      "pm_password": "password",
      "capabilities": "profile:compute"
    }
  ]
}
onfig: type: OS::Heat::SoftwareConfig properties: group: script config: str_replace: template: | #!/bin/bash set -x get_mask() { local list=$1 local mask=0 declare -a bm max_idx=0 for core in $(echo $list | sed 's/,/ /g') do index=$(($core/32)) bm[$index]=0 if [ $max_idx -lt $index ]; then max_idx=$index fi done for ((i=$max_idx;i>=0;i--)); do bm[$i]=0 done for core in $(echo $list | sed 's/,/ /g') do index=$(($core/32)) temp=$((1<<$core)) bm[$index]=$((${bm[$index]} | $temp)) done printf -v mask "%x" "${bm[$max_idx]}" for ((i=$max_idx-1;i>=0;i--)); do printf -v hex "%08x" "${bm[$i]}" mask+=$hex done printf "%s" "$mask" } pmd_cpu_mask=$( get_mask $PMD_CORES ) dpdk_lcore_mask=$( get_mask $DPDK_CORES ) yum remove -y vpp-devel yum install -y /root/dpdk_rpms/* systemctl restart openvswitch sleep 5 sed -i "s/#user\s*=.*/user = \"root\"/" /etc/libvirt/qemu.conf sed -i "s/#group\s*=.*/group = \"root\"/" /etc/libvirt/qemu.conf ovs-vsctl --no-wait set Open_vSwitch . other_config:dpdk-init=true if [ -n "$SOCKET_MEMORY" ]; then other_config="dpdk-socket-mem=$SOCKET_MEMORY" ovs-vsctl --no-wait set Open_vSwitch . other_config:$other_config fi if [ -n "$pmd_cpu_mask" ]; then other_config="pmd-cpu-mask=$pmd_cpu_mask" ovs-vsctl --no-wait set Open_vSwitch . other_config:$other_config fi if [ -n "$dpdk_lcore_mask" ]; then other_config="dpdk-lcore-mask=$dpdk_lcore_mask" ovs-vsctl --no-wait set Open_vSwitch . other_config:$other_config fi systemctl restart openvswitch params: $DPDK_CORES: {get_param: HostCpusList} $PMD_CORES: {get_param: NeutronDpdkCoreList} $SOCKET_MEMORY: {get_param: NeutronDpdkSocketMemory} outputs: deploy_stdout: description: Output of the extra dpdk ovs deployment value: {get_attr: [OvsDpdkSetup, deploy_stdout]}