Skip to content

Commit bcc48b3

Browse files
committed
Improve disable THP systemd unit file
1 parent 8856715 commit bcc48b3

4 files changed

+36
-6
lines changed

files/disable-transparent-hugepages.service renamed to files/disable-transparent-hugepages.amazon.service

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,9 @@ Before=mongodb.service
66

77
[Service]
88
Type=oneshot
9-
ExecStart=-/bin/bash -c 'echo never > /sys/kernel/mm/transparent_hugepage/enabled'
10-
ExecStart=-/bin/bash -c 'echo never > /sys/kernel/mm/transparent_hugepage/defrag'
119
ExecStart=-/bin/bash -c 'echo never > /sys/kernel/mm/redhat_transparent_hugepage/enabled'
1210
ExecStart=-/bin/bash -c 'echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag'
13-
ExecStart=-/bin/bash -c 'echo 0 > /sys/kernel/mm/transparent_hugepage/khugepaged/defrag'
1411
ExecStart=-/bin/bash -c 'echo 0 > /sys/kernel/mm/redhat_transparent_hugepage/khugepaged/defrag'
15-
ExecStart=-/bin/bash -c 'echo no > /sys/kernel/mm/transparent_hugepage/khugepaged/defrag'
16-
ExecStart=-/bin/bash -c 'echo no > /sys/kernel/mm/redhat_transparent_hugepage/khugepaged/defrag'
1712

1813
[Install]
1914
#WARN: check service name on your system
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
[Unit]
2+
Description="Disable Transparent Hugepage before MongoDB boots"
3+
#WARN: check service name on your system
4+
# If you are using MongoDB Cloud, service name is "mongodb-mms-automation-agent.service"
5+
Before=mongodb.service
6+
7+
[Service]
8+
Type=oneshot
9+
ExecStart=-/bin/bash -c 'echo never > /sys/kernel/mm/transparent_hugepage/enabled'
10+
ExecStart=-/bin/bash -c 'echo never > /sys/kernel/mm/transparent_hugepage/defrag'
11+
ExecStart=-/bin/bash -c 'echo 0 > /sys/kernel/mm/transparent_hugepage/khugepaged/defrag'
12+
13+
[Install]
14+
#WARN: check service name on your system
15+
# If you are using MongoDB Cloud, service name is "mongodb-mms-automation-agent.service"
16+
RequiredBy=mongodb.service
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
[Unit]
2+
Description="Disable Transparent Hugepage before MongoDB boots"
3+
#WARN: check service name on your system
4+
# If you are using MongoDB Cloud, service name is "mongodb-mms-automation-agent.service"
5+
Before=mongodb.service
6+
7+
[Service]
8+
Type=oneshot
9+
ExecStart=-/bin/bash -c 'echo never > /sys/kernel/mm/redhat_transparent_hugepage/enabled'
10+
ExecStart=-/bin/bash -c 'echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag'
11+
ExecStart=-/bin/bash -c 'echo 0 > /sys/kernel/mm/redhat_transparent_hugepage/khugepaged/defrag'
12+
13+
[Install]
14+
#WARN: check service name on your system
15+
# If you are using MongoDB Cloud, service name is "mongodb-mms-automation-agent.service"
16+
RequiredBy=mongodb.service

tasks/disable_transparent_hugepages.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,14 @@
11
---
22
- name: Create disable transparent hugepages systemd service file
33
copy:
4-
src: disable-transparent-hugepages.service
4+
src: "{{ item }}"
55
dest: /etc/systemd/system/disable-transparent-hugepages.service
66
owner: root
77
group: root
88
mode: 0644
9+
with_first_found:
10+
- "disable-transparent-hugepages.{{ ansible_distribution | lower }}.service"
11+
- "disable-transparent-hugepages.{{ ansible_os_family | lower }}.service"
912

1013
- name: Enable disable-transparent-hugepages.service
1114
systemd:

0 commit comments

Comments
 (0)