Wenn man Dovecot und Postfix für das Mailsetup verwendet, kann dies einem virtuellen Server schnell zu viel werden.
Das Problem hierbei sind die numothersocks, die Sockets die geöffnet werden müssen damit das Betriebssystem und die Programme intern kommunizieren können.
Sind hier zu viele Sockets offen, hängen einzelne Programme oder der ganze V-Server. Dies macht sich unter anderem mit Meldungen wie
"socket: cannot allocate memory..."
in den Logfiles bemerkbar.
Um das Problem in den Griff zu bekommen bietet sich folgende Lösung an:
Editiert werden müssen:
/etc/dovecot/dovecot.conf
login_processes_count = 4
login_max_processes_count = 20
/etc/postfix/master.cf
smtp inet n - - - 10 smtpd
/etc/postfix/main.cf
default_process_limit = 10
Beachtet bitte, dass sich die Werte natürlich bei jedem System unterscheiden müssen. Diese Werte verwende ich bei einem Vserver, der als Mailserver für einen Bekannten dient.
Die Anzahl der Sockets könnt ihr euch mit folgendem Befehl anzeigen lassen:
netstat -uxpen|wc -l
Eine ausführliche Statistik der Sockets findet ihr mit
cat /proc/user_beancounters
Da dieses Thema für mich auch neu ist, freue ich mich wenn ihr Verbesserungen oder Feedback in den Kommentaren postet.
Jim Knuth meint
Das hat sich leider mit der V 2* von Dovecot erledigt.
login_processes_count = 4
login_max_processes_count = 20
ist obsolet
Benjamin meint
Hi!
Ich bastel gerade an dem gleichen Problem rum. Da es 3 Jahre lang lief, muss irgendwas passiert sein, denn sonst hatte ich dort nie Probleme. Die Logs sagen aber nicht viel aus.
Was bei deinem Tipp noch fehlt ist der Diensteneustart, also /etc/init.d/dovecot reload und genauso postfix reload.
Je nachdem, ob man ein Control Panel nutzt oder nicht, kann man dort auch noch viel deaktivieren um Ressourcen beim vServer zu sparen.
Ps. Coole Mischung: Fotografie, PC und PS3. Könnte meine Seite sein 😉
Grüße
Benjamin