Ich habe kürzlich einen unserer Redis-Prozesse daraufhin überprüft, welche Ulimits angewendet wurden:
cat /proc/<redis-pid>/limits
Und war überrascht zu erfahren, dass es sich um den niedrigen Standardwert handelt:
Limit Soft Limit Hard Limit
Max open files 4016 4016
Ich war überrascht, weil wir folgendes konfiguriert haben:
# /etc/sysctl.conf
fs.file-max = 100000
.
# /etc/security/limits.conf
* soft nofile 100000
* hard nofile 100000
.
# /etc/ssh/sshd_config
UsePAM yes
.
# /etc/pam.d/sshd
session required pam_limits.so
Kann mir jemand sagen, warum das erhöhte ulimit nicht auf den laufenden Redis-Prozess angewendet wird?
Der Redis-Prozess wird ausgeführt, während der Benutzer "redis" ausgeführt wird. Der Server wurde neu gestartet, da die Grenzwerte erhöht wurden. Wir sind bei Debian Squeeze.