summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTim Rozet <trozet@redhat.com>2016-09-02 14:44:47 -0400
committerTim Rozet <trozet@redhat.com>2016-09-07 17:42:28 +0000
commit664851a1f82151984c299bcdfba9a94ff2e5b777 (patch)
treebfba616c41ebcc0a336778a6629dbd6c3607c16b
parentf01595f801e1d78f84b43c111f2955f67573e263 (diff)
Fixes FDIO kernel settings
VPP was overriding kernel settings with its defaults for all deployments by installing the VPP RPM. This removes that file, and sets the settings appropriately for the FDIO scenarios only, based on number of huge pages per profile. JIRA: APEX-255 Change-Id: If39b220a7c34cbfd673afe1881c1a9bdb3fdc2e0 Signed-off-by: Tim Rozet <trozet@redhat.com>
-rw-r--r--build/build_perf_image.sh7
-rwxr-xr-xbuild/overcloud-full.sh1
-rwxr-xr-xlib/overcloud-deploy-functions.sh2
3 files changed, 9 insertions, 1 deletions
diff --git a/build/build_perf_image.sh b/build/build_perf_image.sh
index a6ca066b..68a1804f 100644
--- a/build/build_perf_image.sh
+++ b/build/build_perf_image.sh
@@ -32,5 +32,12 @@ fi
if [ "$CATEGORY" == "kernel" ]; then
echo "${KEY}=${VALUE}" >> $ROLE-kernel_params.txt
+ if [[ "$dataplane" == 'fdio' && "$KEY" == 'hugepages' ]]; then
+ # set kernel hugepages params for fdio
+ LIBGUESTFS_BACKEND=direct virt-customize --run-command "echo vm.hugetlb_shm_group=0 >> /usr/lib/sysctl.d/00-system.conf" \
+ --run-command "echo vm.max_map_count=$(printf "%.0f" $(echo 2.2*$VALUE | bc)) >> /usr/lib/sysctl.d/00-system.conf" \
+ --run-command "echo kernel.shmmax==$((VALUE * 2 * 1024 * 1024)) >> /usr/lib/sysctl.d/00-system.conf" \
+ -a ${IMAGE}
+ fi
fi
diff --git a/build/overcloud-full.sh b/build/overcloud-full.sh
index 5166bff1..7843f21b 100755
--- a/build/overcloud-full.sh
+++ b/build/overcloud-full.sh
@@ -130,6 +130,7 @@ LIBGUESTFS_BACKEND=direct virt-customize \
--run-command "cd /usr/lib/python2.7/site-packages/congress/datasources && curl -O $doctor_driver" \
--run-command "sed -i \"s/'--detailed-exitcodes',/'--detailed-exitcodes','-l','syslog','-l','console',/g\" /var/lib/heat-config/hooks/puppet" \
--run-command "yum install -y /root/fdio/*.rpm" \
+ --run-command "rm -f /etc/sysctl.d/80-vpp.conf" \
--run-command "tar zxvf /root/fdio/vpp_papi*.tar.gz -C /" \
--install unzip \
--upload puppet-fdio.tar.gz:/etc/puppet/modules \
diff --git a/lib/overcloud-deploy-functions.sh b/lib/overcloud-deploy-functions.sh
index 1127f049..4d6bdade 100755
--- a/lib/overcloud-deploy-functions.sh
+++ b/lib/overcloud-deploy-functions.sh
@@ -137,7 +137,7 @@ EOI
# Push performance options to subscript to modify per-role images as needed
for option in "${performance_options[@]}" ; do
echo -e "${blue}Setting performance option $option${reset}"
- ssh -T ${SSH_OPTIONS[@]} "stack@$UNDERCLOUD" "bash build_perf_image.sh $option"
+ ssh -T ${SSH_OPTIONS[@]} "stack@$UNDERCLOUD" "dataplane=${deploy_options_array['dataplane']} bash build_perf_image.sh $option"
done
# Build IPA kernel option ramdisks