Translated message

A translation of this page exists in English.

Warning message

This translation is outdated. For the most up-to-date information, please refer to the English version.

Red Hat Enterprise Linux 7 で transparent hugepages (THP) を無効にする

Solution In Progress - Updated -

Environment

  • Red Hat Enterprise Linux 7
  • transparent hugepages (THP)
  • tuned

Issue

  • Red Hat Enterprise Linux 7 で transparent hugepages (THP) を無効にするにはどうしたら良いですか?
  • Red Hat Enterprise Linux 7 で transparent hugepages (THP) を無効にすることができません。

Resolution

以下の手順に従って、grub 設定ファイルにカーネルパラメーター "transparent_hugepage=never" を追加します。

  • /etc/sysconfig/grub ファイルの GRUB_CMDLINE_LINUX オプションに、"transparent_hugepage=never" カーネルパラメーターを変更するか追加します。ファイルを保存します。

たとえば、以下のようになります。

GRUB_CMDLINE_LINUX="rd.lvm.lv=rhel/root rd.lvm.lv=rhel/swap vconsole.font=latarcyrheb-sun16 vconsole.keymap=us transparent_hugepage=never"
  • grub2-mkconfig コマンドを実行して grub.cfg ファイルを再生成します。

たとえば、以下のようになります。

# grub2-mkconfig -o /boot/grub2/grub.cfg
  • システムを再起動して、パラメーターが正しく設定されていることを確認します。以下のコマンドを実行して確認できます。
# cat /proc/cmdline
  • THP が無効になっていない場合は、以下の手順を行います。

THP を無効にしたカスタマイズした tuned プロファイルを作成する

  • ここでは、現在実行中のプロファイルをカスタマイズしたバージョンを作成します。カスタマイズしたバージョンは THP を無効にします。
  • どのプロファイルがアクティブかを特定し、コピーを作成します。以下の例では、throughput-performance プロファイルが使用されています。
# tuned-adm active
Current active profile: throughput-performance
  • カスタマイズしたプロファイルを作成するには、/etc/tuned ディレクトリに任意のプロファイル名で新しいディレクトリを作成します。

たとえば、以下のようになります。

# mkdir /etc/tuned/myprofile-nothp
  • これにより、myprofile-nothp に tuned.conf ファイルが新たに作成され、新しい設定情報が追加されます。

たとえば、以下のようになります。

# cat /etc/tuned/myprofile-nothp/tuned.conf 
[main]
include= throughput-performance

[vm]
transparent_hugepages=never
  • スクリプトを実行可能にします。
# chmod +x /etc/tuned/myprofile-nothp/tuned.conf 
  • myprofile を有効にします。
# tuned-adm profile myprofile-nothp
  • この変更はすぐに有効になり、再起動後も持続します。
  • THP が無効かどうかを確認するには以下のコマンドを実行します。
# cat /sys/kernel/mm/transparent_hugepage/enabled

その他の解決方法:tuned サービスを無効にする

  • これにより、tuned サービスが無効になります。

たとえば、以下のようになります。

# systemctl stop tuned
# systemctl disable tuned

または

# tuned-adm off
  • 次に、上述した方法で、grub 設定ファイルに "transparent_hugepage=never" カーネルパラメーターを追加します。
  • サーバーを再起動して、変更を反映させます。

This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.