ページの先頭行へ戻る
Interstage Application Server V13.0.0 Interstage HTTP Server 2.4運用ガイド
FUJITSU Software

5.4 運用時に必要なシステム資源(Linux)

Interstage HTTP Server 2.4の運用時は、Webサーバで使用している機能や環境定義ファイル(httpd.conf)の定義内容に応じて、システム資源を拡張する必要がある場合があります。

以下の表を参照して必要なシステム資源の設定値を算出し、本値がシステムのデフォルト値を超える場合、本値を設定してください。ファイルディスクリプタおよびプロセス・スレッドのシステムパラメタ、リソース制限(unit)については、ファイルディスクリプタ数またはプロセス・スレッド数が不足する現象が発生した場合、システムパラメタに本値を設定してください。


■パラメタと必要数

システム資源

パラメタ

種類

必要数

ファイルディスクリプタ

システム全体のファイルディスクリプタの最大数

[システムパラメタ(/etc/sysctl.conf)]
fs.file-max

設定値
(注1)

10 以上

[以下の機能を使用する場合]
上記に以下の値を加算してください。

  • 基本認証機能:2 × m

  • SSL運用:m

  • CGI機能:3 × m (注2)

  • HTTP/2機能:1 + m

[環境定義ファイル(httpd.conf)に以下のディレクティブを設定している場合]
上記に以下の値を加算してください。

  • CustomLog("|コマンド実行文"指定):ディレクティブ数

  • CustomLog(ファイル名指定):ディレクティブ数

  • ErrorLog:ディレクティブ数

  • Listen:ディレクティブ数 × 2

ファイルディスクリプタの最大数

[リソース制限(unit)]
LimitNOFILE (注3)

設定値

上記と同じ値

ユーザにおいてオープン可能なファイルディスクリプタの最大数

[リソース制限(/etc/security/limits.conf)]
nofile

設定値

上記と同じ値

プロセス・スレッド

システム全体のプロセス・スレッドの最大数

[システムパラメタ(/etc/sysctl.conf)]
kernel.threads-max

設定値
(注1)

1 + n 以上

[以下の機能を使用する場合]
上記に以下の値を加算してください。

  • CGI機能:(注4)

  • HTTP/2機能:p × (n ÷ m)

[環境定義ファイル(httpd.conf)に以下のディレクティブ("|コマンド実行文"指定)を設定している場合]
上記に以下の値を加算してください。

  • CustomLog:ディレクティブ数

  • ErrorLog:ディレクティブ数

  • TraceLog:ディレクティブ数

プロセス・スレッドの最大数

[リソース制限(unit)]
LimitNPROC (注3)

設定値
(注1)

上記と同じ値

ユーザにおいて作成可能なプロセス・スレッドの最大数

[リソース制限(/etc/security/limits.conf)]
nproc

設定値
(注1)
(注5)

n 以上

[以下の機能を使用する場合]
上記に以下の値を加算してください。

  • CGI機能:(注4)

  • HTTP/2機能:p × (n ÷ m)

m:環境定義ファイル(httpd.conf)のThreadsPerChildディレクティブの設定値

n:環境定義ファイル(httpd.conf)のMaxRequestWorkersディレクティブの設定値

p:環境定義ファイル(httpd.conf)のH2MaxWorkersディレクティブの設定値(未定義の場合は、プロセスあたり利用可能なファイルディスクリプタの値に基づいて決定される値)

注1)複数のWebサーバを運用している場合は、Webサーバごとに必要数を加算してください。

注2)動作するCGIプログラム内で必要となるファイルディスクリプタの数を別途加算してください。

注3)RHEL7/RHEL8を使用して、オペレーティングシステム起動時にWebサーバを自動起動する場合に設定してください。

注4)動作するCGIプログラム内で必要となるプロセス数・スレッド数を別途加算してください。

注5)rootユーザに対する設定値に、必要数を加算してください。環境定義ファイル(httpd.conf)のUserディレクティブに設定したユーザを、Interstage HTTP Server 2.4以外のプログラムでも使用する場合は、Userディレクティブに設定したユーザに対する設定値にも、必要数を加算してください。


システムパラメタの変更手順/etc/sysctl.conf

システムパラメタを変更する手順を以下に示します。詳細については、オペレーティングシステムのドキュメントを参照してください。

  1. /etc/sysctl.confファイルを編集します。
    上記の表の「種類」欄が「設定値」の場合は、/etc/sysctl.confファイルのパラメタの値を、上記で算出した値に変更します。

  2. 以下のコマンドを実行するか、またはオペレーティングシステムを再起動します。

    sysctl -p /etc/sysctl.conf

リソース制限の変更手順(/etc/security/limits.conf)

システムのリソースを制限する手順を以下に示します。詳細については、オペレーティングシステムのドキュメントを参照してください。

  1. /etc/security/limits.confファイルを編集します。/etc/security/limits.confファイルのパラメタ値を、上記で算出した値に変更します。

  2. オペレーティングシステムを再起動します。


リソース制限の変更手順unit

RHEL7/RHEL8においてシステムのリソースを制限する手順を以下に示します。詳細については、「チューニングガイド」の「RHEL7/RHEL8のunitファイルでの環境定義」を参照してください。

  1. 環境定義用unitファイル(FJSVahs_start.service)を作成し、パラメタの値を以下の例のように記述します。

    FJSVahs_start.service記述例

    [LimitNOFILEの場合]

    .include /usr/lib/systemd/system/FJSVahs_start.service
    
    [Service]
    LimitNOFILE=値

    [LimitNPROCの場合]

    .include /usr/lib/systemd/system/FJSVahs_start.service
    
    [Service]
    LimitNPROC=値
  2. /etc/systemd/system配下に、1.で作成したFJSVahs_start.serviceを格納します。

  3. 管理者権限で、以下のコマンドを実行します。

    /usr/bin/systemctl enable FJSVahs_start.service
  4. オペレーティングシステムを再起動します。