説明
InterScan WebManager(以下、ISWM)の最大コネクション数に関しては、"HTTP"、"HTTPS"、"FTP over HTTP"といったフィルタリングサービスのプロセス数の変更にて設定いただけます。これらのプロセス数に対して大きな数値が設定されている場合は、Linux OSのPID上限(kernel.pid_max)に達してしまい、新規のプロセス作成やコマンドの実行といったPIDの確保が必要となる処理が失敗する事例が報告されています。
これにより、ISWMのプロセスが正常起動しない動作の発生や、サーバ上で各種OSコマンドが失敗する可能性があります。
対処方法
フィルタリングサービスに関するプロセス数の算出方法
フィルタリングサービスは、主にプロキシ処理プロセスおよびフィルタリング処理プロセスの2つから構成されており、クライアントからのコネクション数に応じて、フィルタリング処理プロセスがプロキシ処理プロセスと同等の数まで増加していく仕組みとなります。仮にフィルタリングサービスのプロセス数を15000と設定した場合は、15000(プロキシ処理プロセス)+15000(フィルタリング処理プロセス)の和となる30000プロセスが値となります。
対処方法1
プロセス数の見直しならびにISWMのサーバ台数を追加します。対処方法2
フィルタリング処理プロセスの起動数上限をプロキシ処理プロセスの半数に設定します。これにより、ISWMによって利用されるPIDが減少され、事象が緩和されます。
- /conf/sys/system.inf を開きます。
- [PROXY_CFG] セクションに、以下のパラメータを追記します。以下のパラメータは隠しキーとなっているため、初期設定では記載されていません。
例:フィルタリング処理プロセスの起動数上限を5000にする場合
------------------------------
[PROXY_CFG]
ICAP_CONNECTION_POOL_SIZE=5000
------------------------------ - フィルタリングサービスを再起動します。フィルタリングサービス再起動中は、ISWM を経由したインターネットの通信が約数分間、一時的に停止いたします。
停止:/bin/amsproxy stop
起動:/bin/amsproxy start
対処方法3
kernel.pid_maxの上限を変更します。kernel.pid_maxの適切な値については、弊社では分かりかねます。OSに必要なプロセス数の見積もりおよび動作を十分ご確認のうえ、設定変更をご検討ください。