[mcp] Mend dpdk scenario 33/35733/3
authorMichael Polenchuk <mpolenchuk@mirantis.com>
Fri, 2 Jun 2017 12:39:58 +0000 (16:39 +0400)
committerMichael Polenchuk <mpolenchuk@mirantis.com>
Tue, 6 Jun 2017 10:17:11 +0000 (14:17 +0400)
Make a reboot of the compute nodes to activate hugepages support
and re-apply required states then. Also align ovs lcore & pmd
masks with two cpu nodes.

Change-Id: I4a5defe6f08e912aba2d939ba5ba057af768a40c
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
ci/deploy.sh
mcp/reclass/classes/cluster/virtual-mcp-ocata-ovs-dpdk/infra/config.yml
mcp/reclass/classes/cluster/virtual-mcp-ocata-ovs-dpdk/openstack/compute.yml
mcp/reclass/classes/cluster/virtual-mcp-ocata-ovs-dpdk/openstack/gateway.yml
mcp/reclass/classes/cluster/virtual-mcp-ocata-ovs-dpdk/openstack/init.yml
mcp/reclass/scripts/dpdk.sh [new file with mode: 0755]

index fe40b07..500d26e 100755 (executable)
@@ -255,6 +255,9 @@ export SSH_OPTS="-o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -i
 ./salt.sh
 ./openstack.sh
 
+# enable dpdk on computes
+[[ $DEPLOY_SCENARIO =~ dpdk ]] && ./dpdk.sh
+
 ## Disable Fuel deployment engine
 #
 # echo "python deploy-config.py -dha ${BASE_CONFIG_URI}/labs/${TARGET_LAB}/${TARGET_POD}/fuel/config/dha.yaml -deab file://${DEPLOY_DIR}/config/dea_base.yaml -deao ${BASE_CONFIG_URI}/labs/${TARGET_LAB}/${TARGET_POD}/fuel/config/dea-pod-override.yaml -scenario-base-uri file://${DEPLOY_DIR}/scenario -scenario ${DEPLOY_SCENARIO} -plugins file://${DEPLOY_DIR}/config/plugins -output ${SCRIPT_PATH}/config"
index 331ab6e..3add5a4 100644 (file)
@@ -65,15 +65,15 @@ parameters:
             single_address: 172.16.10.105
             tenant_address: 10.1.0.105
             external_address: 10.16.0.105
-            dpdk0_name: ens4
-            dpdk0_pci: '"0000:00:04.0"'
+            dpdk0_name: ens5
+            dpdk0_pci: '"0000:00:05.0"'
         openstack_compute_node02:
           params:
             single_address: 172.16.10.106
             tenant_address: 10.1.0.106
             external_address: 10.16.0.106
-            dpdk0_name: ens4
-            dpdk0_pci: '"0000:00:04.0"'
+            dpdk0_name: ens5
+            dpdk0_pci: '"0000:00:05.0"'
         openstack_gateway_node01:
           params:
             tenant_address: 10.1.0.110
index 6a70421..b8fadb9 100644 (file)
@@ -58,10 +58,9 @@ parameters:
           pci: ${_param:dpdk0_pci}
           driver: igb_uio
           enabled: true
+          bridge: br-prv
           type: dpdk_ovs_port
           n_rxq: 2
         br-prv:
           enabled: true
           type: dpdk_ovs_bridge
-          address: ${_param:tenant_address}
-          netmask: 255.255.255.0
index e9f09ca..64e2245 100644 (file)
@@ -29,37 +29,46 @@ parameters:
           type: eth
         tenant_interface:
           enabled: true
+          ovs_bridge: br-prv
           name: ${_param:tenant_interface}
           mtu: ${_param:interface_mtu}
           proto: manual
           type: eth
-        br_ctl:
+        external_interface:
           enabled: true
-          type: ovs_port
-          bridge: br-floating
+          name: ${_param:external_interface}
+          mtu: ${_param:interface_mtu}
+          proto: manual
+          type: eth
+        br-floating:
+          enabled: true
+          type: ovs_bridge
+          mtu: ${_param:interface_mtu}
+        br-mgmt:
+          enabled: true
+          type: bridge
           proto: static
           address: ${_param:single_address}
           netmask: 255.255.255.0
           mtu: ${_param:interface_mtu}
           use_interfaces:
           - ${_param:primary_interface}
-        br-floating:
-          enabled: true
-          type: ovs_bridge
         br-prv:
           enabled: true
           type: ovs_bridge
-          address: ${_param:tenant_address}
-          netmask: 255.255.255.0
-        floating-to-prv:
+          mtu: ${_param:interface_mtu}
+        float-to-ex:
           enabled: true
           type: ovs_port
-          port_type: patch
+          mtu: ${_param:interface_mtu}
           bridge: br-floating
-          peer: prv-to-floating
-        prv-to-floating:
+        br-ex:
           enabled: true
-          type: ovs_port
-          port_type: patch
-          bridge: br-prv
-          peer: floating-to-prv
+          type: bridge
+          mtu: ${_param:interface_mtu}
+          address: ${_param:external_address}
+          netmask: 255.255.255.0
+          use_interfaces:
+          - ${_param:external_interface}
+          use_ovs_ports:
+          - float-to-ex
index 6c846d6..b56a5a2 100644 (file)
@@ -27,9 +27,9 @@ parameters:
     compute_hugepages_count: 1024
     compute_hugepages_mount: /mnt/hugepages_2M
     compute_dpdk_driver: uio
-    compute_ovs_pmd_cpu_mask: "0x6"
+    compute_ovs_pmd_cpu_mask: "0x2"
     compute_ovs_dpdk_socket_mem: "1024"
-    compute_ovs_dpdk_lcore_mask: "0x400"
+    compute_ovs_dpdk_lcore_mask: "0x1"
     compute_ovs_memory_channels: "2"
     cluster_node01_hostname: ctl01
     cluster_node01_address: 172.16.10.101
diff --git a/mcp/reclass/scripts/dpdk.sh b/mcp/reclass/scripts/dpdk.sh
new file mode 100755 (executable)
index 0000000..4e4cd0b
--- /dev/null
@@ -0,0 +1,16 @@
+#!/bin/bash
+#
+# Enable DPDK on compute nodes
+#
+
+ssh $SSH_OPTS ubuntu@$SALT_MASTER bash -s << DPDK_INSTALL_END
+  sudo -i
+
+  salt -C 'I@nova:compute' system.reboot
+  salt -C 'I@nova:compute' test.ping
+
+  salt -C 'I@nova:compute' state.sls linux
+  salt -C 'I@nova:compute' state.sls nova,neutron
+
+  salt -C 'I@keystone:server and *01*' cmd.run ". /root/keystonercv3; nova service-list; openstack network agent list"
+DPDK_INSTALL_END