From 664851a1f82151984c299bcdfba9a94ff2e5b777 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 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 -- cgit 1.2.3-korg