From 6256b4f00397a2a08ffd60e6314ffaa320648942 Mon Sep 17 00:00:00 2001 From: Tim Rozet Date: Fri, 2 Sep 2016 14:44:47 -0400 Subject: 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 --- build/build_perf_image.sh | 7 +++++++ build/overcloud-full.sh | 1 + lib/overcloud-deploy-functions.sh | 2 +- 3 files changed, 9 insertions(+), 1 deletion(-) 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 -- cgit 1.2.3-korg