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

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

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

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


■パラメタと必要数

システム資源

パラメタ

種類

必要数

セマフォ

セマフォIDあたりのセマフォの最大数

[システムパラメタ(/etc/sysctl.conf)]
para1 (kernel.sem)

設定値

1以上

システム全体のセマフォの最大数

[システムパラメタ(/etc/sysctl.conf)]
para2 (kernel.sem)

加算値
(注1)

1以上

セマフォコールあたりのセマフォ操作の最大数

[システムパラメタ(/etc/sysctl.conf)]
para3 (kernel.sem)

設定値

1以上

セマフォIDの最大数

[システムパラメタ(/etc/sysctl.conf)]
para4 (kernel.sem)

加算値
(注1)

1以上

ファイルディスクリプタ

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

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

加算値
(注1)

n + 10 以上

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

  • 基本認証機能:n

  • SSL運用:21 × n ÷ m

  • プロキシ機能:n

  • CGI機能:13 + n ÷ m (注2)

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

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

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

  • ErrorLog:ディレクティブ数 × 2 × n ÷ m

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

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

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

設定値
(注1)

上記と同じ値

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

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

設定値

m + 10 以上

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

  • 基本認証機能:m

  • SSL運用:21

  • プロキシ機能:m

  • CGI機能:1 (注2)

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

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

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

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

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

プロセス・スレッド

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

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

加算値
(注1)

2 + n + (n ÷ m) × 2 以上

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

  • SSL運用:1

  • CGI機能:(注4)

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

  • CustomLog:ディレクティブ数

  • ErrorLog:ディレクティブ数

  • IHSTraceLog:ディレクティブ数

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

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

設定値
(注1)

上記と同じ値

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

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

設定値
(注1)
(注5)

1 + n + (n ÷ m) × 2 以上

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

  • CGI機能:(注4)

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

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

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

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

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

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

注5)環境定義ファイル(httpd.conf)のUserディレクティブで設定したユーザに対する値を設定してください。


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

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

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

    注意

    セマフォのパラメタは、以下の形式で指定します。

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

    sysctl -p /etc/sysctl.conf

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

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

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

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


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

RHEL7においてシステムのリソースを制限する手順を以下に示します。詳細については、「チューニングガイド」の「RHEL7の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. オペレーティングシステムを再起動します。