CentOS 6/リソース割り当て変更



リソース割り当て変更

CMSなど運用する場合など、運用によっては最大オープンファイル数の制限に引っかかり運用に支障が出ることもあります。
またメールなどで imap にて運用する場合も変更した方がいい場合もあります。

下記の方法で現在のリソース割り当て状況を見ることができます。

# ulimit -a
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 30490
max locked memory       (kbytes, -l) 64
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 10240
cpu time               (seconds, -t) unlimited
max user processes              (-u) 1024
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited

最大ファイルオープン数がデフォルトでは 1024 なので 49152 に変更します。

# ulimit -n 49152

再度下記のコマンドで open files が 49152 に変更されたことを確認します。

# ulimit -a
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 30490
max locked memory       (kbytes, -l) 64
max memory size         (kbytes, -m) unlimited
open files                      (-n) 49152
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 10240
cpu time               (seconds, -t) unlimited
max user processes              (-u) 1024
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited

これを再起動時も有効にするため設定を変更します。

# vi /etc/security/limits.conf

下記を追記します。

	*			soft	nofile		  49152
	*			hard	nofile		  49152


最大プロセス数の制限変更

CentOS 5 では max user processes の設定は unlimited でしたが、CentOS 6 より 1024 に変更となりました。

# vi /etc/security/limits.d/90-nproc.conf

下記を修正します。(運用指針しだいではコメントアウトを検討する)

*          soft    nproc     1024
↓↓
*          soft    nproc     65535

backlogの制限について

一度に受け入れるTCPセッションの数。
デフォルトでは 1024 に設定されています。
制限を越えたものについては SYNパケットを拒否します。

現在値の確認方法

# sysctl net.ipv4.tcp_max_syn_backlog

一度に受け入れるTCPセッションのキューの数。
デフォルトでは 128 に設定されています。
制限を越えたものについてはキューに格納されます。

現在値の確認方法

# sysctl net.core.somaxconn

一時的に変更する場合は

# sysctl -w net.core.somaxconn=4096

とし、再起動後も有効にするためには /etc/sysctl.conf に記述します。

# vi /etc/sysctl.conf

下記を追記

net.core.somaxconn = 4096


Last-modified: 2015-08-07 (金) 16:31:40 (933d)