@Thomas Hertweck: sorry for die PM. Hier nochmals an die Liste. Thomas Hertweck schrieb:
Günther Zisham wrote:
[...] # /sbin/sysctl -a 2>/dev/null | grep overcommit vm.overcommit_memory = 0 vm.overcommit_ratio = 50
OK, overcommit_memory steht auf 0.
Zur Erklaerung: genau wie Fluege ueberbucht werden koennen (um eine moeglichst gute Auslastung zu erzielen), unter der Annahme, dass zum eigentlichen Flugtermin nicht alle Passagiere erscheinen, so kann auch der Speicher "ueberbucht" werden, unter der Annahme, dass nicht alle Prozesse gleichzeitig ihren maximal angeforderten Speicher benoetigen (overcommit_memory=2; in dem Falle kommt dann overcommit_ratio ins Spiel, das gibt quasi die Ueberbuchung vor). In gewissen Faellen kann das fuer eine erhebliche Performance-Verbesserung des Systems sorgen. Allerdings funktioniert das nur mit gewissen Programmen, wie man sich leicht selbst ausmalen kann und fuehrt ansonsten zu erheblichen Problemen (aehnlicher Natur wie auf Deinem System).
also dann lasse ich es so...
[...] wie sortiere ich es am besten nach Prozess+Childprozesse (per Command-Line, damit ich es in ein Log bekomme)?
so? ps --sort=ppid -eo "%p %P %y %x %z %a"
Ich glaube, automatisch kann man die Dinge nicht addieren. Spontan haette ich jetzt mal etwas wie
ps -eo ppid,rss,vsize,pid,state,cputime,ni,comm --sort rss \ --cumulative | tail -15
ok, läuft ebenfalls als Cron-Job, momentan noch 2 Mal pro Stunde, demnächst alle 5 oder 10 Minuten.
verwendet, um zu schauen, was sich auf einem System so tut. Das sortiert erst einmal nach Resident Memory Size. Wenn das nicht den gewuenschten Erfolg bringt, muss man wohl ein wenig experimentieren und ppid oder vsize etc. in das Sortieren mit aufnehmen...
ich verstehe nur nicht, warum es dann wochenlang problemlos funktioniert und dann innerhalb von 2 Stunden mehrmals zu diesem Problem kommt.
Bei diesem Server war es 17x Amavis innerhalb von 2 Stunden. Beim anderen Server waren es 10 Tage davor allerhand andere Prozesse (innerhalb von 24 Stunden): mysqld (33 Male), sh (1 Mal), amavisd (81 Male), httpd2-prefork (6 Male), nagios (333 Male)
Das ist in der Tat etwas seltsam. Es kann sich theoretisch um ein Hardwareproblem handeln (oder um ein Problem vom Kernel mit der Hardware), oder aber um ein Softwareproblem, wo einfach ein Prozess Amok laeuft. Das Problem ist ein wenig tueckisch. Evtl. hilft experimentieren mit einem anderen Kernel, oder der Ausbau von nicht unbedingt benoetigter Hardware zu Testzwecken, oder das Abschalten der verschiedenen Dienste (mysqld, httpd, amavisd, etc.) zu Testzwecken bis das System stabil ist...
mysqld läuft nur am 2. Server. amavisd+postfix wird eigentlich nur am 1. Server von außen angesprochen und läuft am 2. Server eigentlich im Leerlauf.
Hast Du den Speicher getestet (memtest86) und ist er in Ordnung? Wenn natuerlich ein physikalisches Problem mit dem RAM vorliegt, dann kann alles schief laufen...
Speicher: der müßte dann auf beiden Servern defekt sein (Fehler trat inzwischen je ein Mal auf beiden Servern auf) Habe auch (wie erwähnt) schon von Kernel 2.6.20.4 auf 2.6.21.3 gewechselt, aber mit dem selben einen Patch und mit der selben Kernel-Konfiguration. Werde das auch mal wechseln. Auch den Original-Suse-Kernel habe ich noch drauf. Werde da mal etwas variieren. Ach, bevor ich's vergesse: Damit der Rechner mit den 3 Gigabit-Netzwerkkarten funktioniert, brauche ich als weiteren Start-Parameter: memmap=256M$2560M Sonst fährt er nicht mehr vollständig herunter, kann auch keinen Neustart mehr machen und geht auf "schwerwiegenden Hardwarefehler". Mit diesem Parameter (wurde mir vom Serverhersteller empfohlen) sieht's dann aber normal aus. Könnte der Kernel mit diesem Parameter ein Problem haben? Besten Dank, Günther -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org