オープンファイル記述子とユーザープロセス制限

Linuxでは、EUMサーバーマシン上のオープンファイル記述子とユーザープロセス制限が十分な値に設定されていることも確認してください。EUMサーバーの場合、ハードおよびソフト制限は以下のとおりです。

  • オープンファイル記述子の制限(nofile):65535
  • プロセス制限(nproc):8192

ユーザー制限の確認と設定方法については、以下の「Linux におけるユーザー制限の構成」を参照してください。

Linuxにおけるユーザー制限の構成

以下のログでの警告は、制限が不十分であることを示している可能性があります。

  • データベースログでの警告: 「max_open_filesの数をxxxx以上に増やせませんでした。」
  • サーバーログでの警告: 「これ以上の接続を割り当てられません。」

既存の設定を確認するには、ルートユーザーで以下のコマンドを入力します。

ulimit -S -n
ulimit -S -u

出力には、オープンファイル記述子のソフト制限と、プロセス数のソフト制限がそれぞれ示されます。これらの値が推奨値より低い場合は、値を変更する必要があります。

設定を構成する場所は、使用する Linux ディストリビューションに応じて異なります。

  • システムに /etc/security/limits.d ディレクトリがある場合は、このディレクトリに新しいファイルを適切な名前で作成し、そこに設定を追加します。
  • /etc/security/limits.d ディレクトリがない場合は、/etc/security/limits.conf に設定を追加します。
  • システムに /etc/security/limits.conf ファイルがない場合は、ulimit コマンドを /etc/profile に配置することができます。ただし、ご使用の Linux ディストリビューションのドキュメントでシステムに固有の推奨事項を確認してください。

制限を構成するには

  1. システムに /etc/security/limits.d ディレクトリがあるかどうかを確認し、その結果に応じて以下のいずれかのステップを実施します。
    • /etc/security/limits.d ディレクトリがない場合
      1. ルートユーザーで、limits.conf ファイルを開いて編集します。/etc/security/limits.conf

      2. 次の行を追加し、<login_user> を EUM サーバーが実行されるオペレーティングシステムのユーザー名に置き換えて、オープンファイル記述子の制限を設定します。

        <login_user> hard nofile 65535
        <login_user> soft nofile 65535
        <login_user> hard nproc 8192
        <login_user> soft nproc 8192
    • /etc/security/limits.d ディレクトリがある場合
      1. ルートユーザーで、limits.d ディレクトリに新しいファイルを作成します。ファイルに /etc/security/limits.d/appdynamics.conf のようなわかりやすい名前を付けます。

      2. 作成したファイルに、次のように制限に関する構成設定を追加します。その際、<login_user> を EUM サーバーが実行されるオペレーティングシステムのユーザー名に置き換えます。

        <login_user> hard nofile 65535
        <login_user> soft nofile 65535
        <login_user> hard nproc 8192
        <login_user> soft nproc 8192
  2. 以下のようにして、ファイル記述子とプロセスの制限を有効にします。
    1. 以下のファイルを開いて編集します。/etc/pam.d/common-session

    2. 次の行を追加します。session required pam_limits.so

  3. 変更をファイルに保存します。

login_user で識別されるユーザーでログインしなおすと、制限が有効になります。