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-08 04:39:18 +0000
commit6256b4f00397a2a08ffd60e6314ffaa320648942 (patch)
tree8dfc433bb19b3c4804dd984fc063836b2e509e69
parent83e3a718e26ca42465a03c7d70eb241e82e45e1e (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 943716bc..0357ba05 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 30fd5e66..53c7eef2 100755
--- a/lib/overcloud-deploy-functions.sh
+++ b/lib/overcloud-deploy-functions.sh
@@ -140,7 +140,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