6. September 2009

Unix-Systeme partitionieren

Ich bin Informatiker im Unix-/Linux-/Netzwerk-Bereich.

Neulich war ich bei einem "Kunden", der einen Unix-Server mit diversen Daemons betreibt. Darunter ein Squid. Die Partitionierung war offensichtlich beim Default der entsprechenden Distribution belassen: Eine Root- und eine "/daten"-Partition.

Der eigentliche Betreuer des System bekam das Feedback, dass "das Web irgendwie nicht richtig funktioniert". Nach einer ersten Durchsicht, die ihm keine Auffälligkeiten zeigte, rief er seinen Vorgänger an, der ihm sagte, dass er in einem solchen Fall dann immer den Inhalt des Caches unter "/var/cache/squid/" gelöscht habe und dann wieder alles funktionierte...

Das folgende ist kein Urteil! Ich habe in meiner eigenen beruflichen Laufbahn oft genug erlebt, dass man Sachen tut, die definitiv sinnvoll sind, für andere aber nicht unbedingt so aussehen - beispielsweise remote ein System von einer versagenden Platte auf eine neue zu migrieren und dabei gewissen Zugeständnisse zu machen. Insofern trotz fehlender Hintergrundinformationen:Warum wird bloß so selten nach dem eigentlichen Fehler gesucht! Bestimmte Meldungen im Syslog weisen darauf hin, dass der Plattenplatz zur Neige ging. Da "/var/log/" und "/var/cache/squid" durch die fast alles umfassende Root-Partition auf der selben Partition liegen und mehr als ein Logfile nachträglich oder from Source installierter Software nicht rotiert wurde, haben diese Logfiles dem Squid den zugestandenen Sekundärspeicher-Platz abgegraben. Dadurch konnte der Squid nicht mehr den ihm zugesicherten Platz beanspruchen, was in Folge zu den beobachteten Problemen geführt haben dürfte.

Der Squid-Cache gehört eigentlich auf eine eigene geeignet bemessene Partition, damit nur er drauf schreibt und mit den internen Algorithmen die Auslastung und Verwendung des Caches steuern kann. Kaum ein Algorithmus in diesem Bereich kommt mit einem fast moving target zurecht...

Entsprechend mein Rat an Leute, die Systeme aufsetzen: Macht euch bitte Gedanken zur Partitionierung der Systeme. Es ist nicht schwer, in diesem Bereich sinnvoll zu handeln. Mit ein wenig Nachdenken mit gesundem Menschenverstand macht man bereits mindestens achtzig Prozent richtig. Und mit ein wenig Erfahrung und noch mehr Gedanken dann auch deutlich über neunzig Prozent. Es lohnt sich! Vor allen Dingen kommt man deutlich weniger in Situationen, in denen die Ursache eines Problems durch schlecht auffindbare Seiteneffekte verdeckt wird!

Keine Kommentare: