All Apps and Add-ons

Disable THP in AWS (Linux AMI)

jtrujillo
Path Finder

How do you disable Transparent Hugepages in an Amazon AWS environment that doesn't support systemctl or systemd?

0 Karma
1 Solution

jtrujillo
Path Finder

Here is a way to keep THP turned off even after reboot.

Step1

sudo vi /etc/init.d/disable-transparent-hugepages

Step 2

#!/bin/sh
### BEGIN INIT INFO
# Provides:          disable-transparent-hugepages
# Required-Start:    $local_fs
# Required-Stop:
# X-Start-Before:    mongod mongodb-mms-automation-agent
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Disable Linux transparent huge pages
# Description:       Disable Linux transparent huge pages, to improve
#                    database performance.
### END INIT INFO

case $1 in   start)
    if [ -d /sys/kernel/mm/transparent_hugepage ]; then
      thp_path=/sys/kernel/mm/transparent_hugepage
    elif [ -d /sys/kernel/mm/redhat_transparent_hugepage ]; then
      thp_path=/sys/kernel/mm/redhat_transparent_hugepage
    else
      return 0
    fi

    echo 'never' > ${thp_path}/enabled
    echo 'never' > ${thp_path}/defrag

    unset thp_path
    ;; 
esac 

Step 3

sudo chmod 755 /etc/init.d/disable-transparent-hugepages 

Step4

sudo chkconfig --add disable-transparent-hugepages

Reference:

http://serverfault.com/questions/688392/disable-thp-and-thp-defrag-on-centos-7-ec2-instance

View solution in original post

jtrujillo
Path Finder

Here is a way to keep THP turned off even after reboot.

Step1

sudo vi /etc/init.d/disable-transparent-hugepages

Step 2

#!/bin/sh
### BEGIN INIT INFO
# Provides:          disable-transparent-hugepages
# Required-Start:    $local_fs
# Required-Stop:
# X-Start-Before:    mongod mongodb-mms-automation-agent
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Disable Linux transparent huge pages
# Description:       Disable Linux transparent huge pages, to improve
#                    database performance.
### END INIT INFO

case $1 in   start)
    if [ -d /sys/kernel/mm/transparent_hugepage ]; then
      thp_path=/sys/kernel/mm/transparent_hugepage
    elif [ -d /sys/kernel/mm/redhat_transparent_hugepage ]; then
      thp_path=/sys/kernel/mm/redhat_transparent_hugepage
    else
      return 0
    fi

    echo 'never' > ${thp_path}/enabled
    echo 'never' > ${thp_path}/defrag

    unset thp_path
    ;; 
esac 

Step 3

sudo chmod 755 /etc/init.d/disable-transparent-hugepages 

Step4

sudo chkconfig --add disable-transparent-hugepages

Reference:

http://serverfault.com/questions/688392/disable-thp-and-thp-defrag-on-centos-7-ec2-instance

Got questions? Get answers!

Join the Splunk Community Slack to learn, troubleshoot, and make connections with fellow Splunk practitioners in real time!

Meet up IRL or virtually!

Join Splunk User Groups to connect and learn in-person by region or remotely by topic or industry.

Get Updates on the Splunk Community!

Best Practices: Splunk auto adjust pipeline queue

When you enable autoAdjustQueue in Splunk, maxSize should be understood as the queue size Splunk starts with ...

Introducing the 2026 - 2027 SplunkTrust cohort!

The goal of the SplunkTrust™ membership has historically been to acknowledge and recognize those who go above ...

Splunk Auto Ingestion Parallel Pipeline Scaling

Why this feature matters Many Splunk environments experience ingestion pressure long before the host is fully ...