システムを再起動すると、ファイル記述子の制限が失われます。

システムを再起動すると、ファイル記述子の制限が失われます。

私のシステムのプロセスのデフォルトのファイル記述子の制限を増やそうとしています。特に、私はマシンの起動時にCondorデーモンとそのサブプロセスに適用される制限を取得しようとしています。ただし、これらの制限は機械の起動には適用されません。

私は制限を次のように設定しました/etc/sysctl.conf

[root@mybox ~]# cat /etc/sysctl.conf
# TUNED PARAMETERS FOR CONDOR PERFORMANCE
# See http://www.cs.wisc.edu/condor/condorg/linux_scalability.html for more information

# Allow for more PIDs (to reduce rollover problems); may break some programs
kernel.pid_max = 4194303

# increase system file descriptor limit
fs.file-max = 262144

# increase system IP port limits
net.ipv4.ip_local_port_range = 1024 65535

そして/etc/security/limits.conf

[root@mybox ~]# cat /etc/security/limits.conf
# TUNED PARAMETERS FOR CONDOR PERFORMANCE
# See http://www.cs.wisc.edu/condor/condorg/linux_scalability.html for more information
# Increase the limit for a user continuously by editing etc/security/limits.conf.
*        soft  nofile        32768
*        hard  nofile      262144 #65536

私が経験している問題は、システムを再起動したときにCondorとそのプロセスに制限が適用されないようです。再起動後にCondorプロセスのファイル記述子の制限を見ると、次のようになります。

[root@mybox proc]# cat /proc/`/sbin/pidof condor_schedd`/limits | grep 'Max open files'
Max open files            1024                1024

ただし、condor_schedd再起動後にプロセスを再起動すると、制限が期待どおりに増加します。

[root@mybox proc]# cat /proc/`/sbin/pidof condor_schedd`/limits | grep 'Max open files'
Max open files            32768                262144

boot.logこれは、私のCondorデーモンとそのプロセスが開始される前にこれらの制限が設定されていることを意味します。

May 18 07:51:52 mybox sysctl: net.ipv4.ip_forward = 0
May 18 07:51:52 mybox sysctl: net.ipv4.conf.default.rp_filter = 1
May 18 07:51:52 mybox sysctl: net.ipv4.conf.default.accept_source_route = 0
May 18 07:51:52 mybox sysctl: kernel.sysrq = 0
May 18 07:51:52 mybox sysctl: kernel.core_uses_pid = 1
May 18 07:51:52 mybox sysctl: kernel.pid_max = 4194303
May 18 07:51:52 mybox sysctl: fs.file-max = 262144
May 18 07:51:52 mybox sysctl: net.ipv4.ip_local_port_range = 1024 65535
May 18 07:51:52 mybox network: Setting network parameters: succeeded
May 18 07:51:52 mybox network: Bringing up loopback interface: succeeded
May 18 07:51:57 mybox ifup: Enslaving eth0 to bond0
May 18 07:51:57 mybox ifup: Enslaving eth1 to bond0
May 18 07:51:57 mybox network: Bringing up interface bond0: succeeded
May 18 07:52:17 mybox hpsmhd: smhstart startup succeeded
May 18 07:52:17 mybox condor: Starting up Condor
May 18 07:52:17 mybox rc: Starting condor:  succeeded
May 18 07:52:17 mybox crond: crond startup succeeded

明らかに、私はマシンを起動し、これらの増加した制限を適用する必要があるプロセスを再起動するのを避けたいと思います。マシンの起動時にこれらの制限がプロセスに適用されないようにするには、何が間違っていますか?

答え1

次へ追加ulimit -n 262144Condor初期化スクリプトで。

関連情報