Gegeben sei ein Clusterfilesystem (GPFS), das auf SAN liegt und auf zwei Knoten schreibbar gemountet ist. Man unterbreche jetzt entweder den Link zum SAN oder das Netzwerk, worüber die Synchronisation läuft (wozu hat man eigentlich IPMP?). Die Java-Anwendung, die auf das Clusterfilesystem Dateien schreiben will (sie arbeitet parallel auf beiden Clusterknoten und machen die Synchronisation über besagtes Clusterfilesystem), fällt natürlich
auf die Nase. Verständlich, geht halt nicht anders. Nach ein paar Minuten ist wieder alles da, das Clusterfilesystem ist gemountet, man erwartet, daß alles wieder tut.
Ja, tut vordergründig auch. Die laufende Java-Anwendung kann bestehende Dateien öffnen, schreiben und auch korrekt wieder schließen. Nur, will man eine neue Datei anlegen, kommt weiterhin die Fehlermeldung "
Ich habe gar kein Filesystem, wo ich drauf schreiben kann". Wunderbar. Schon allein die Detektion dieses Problems ist schwierig, weil diese Anwendung so wunderbar gestrickt ist, daß ihr das vollständig egal, daß die Schreibaktionen fehlschlagen. Sie jammert nur ein bisschen ins Log und gut ist. Dem Anwender gaukelt sie vor, alles sei erfolgreich gelaufen. Man könnte ihn ja mit einer Fehlermeldung überfordern.
Man mache jetzt aus irgendeinem Grund einen Restart. Sehr schlechte Idee. Nach dem Restart ist natürlich von den angelegten Dateien nix mehr da. Wenn man die Logfiles nicht auch noch auf dem Clusterfilesystem liegen hat (immer eine sehr gute Idee, die Logfiles lokal auf Platte zu haben), kann man die Reste identifizieren und vielleicht eine Abschätzung machen, wo denn überall Nach(t)arbeit notwendig ist.
Man lerne: "HA-Cluster" und entsprechendeclusterfähige Dateisysteme sollten man nicht einfach mal kaufen (selbst wenn I** draufsteht), sondern zumindest mal ernsthaft mit der eigenen Applikation testen. Sonst macht man nämlich aus einem 5minütigen Netzwerkausfall in der Nacht die verlorene Arbeit von 20 Benutzern an einem Tag.
Ausrede: Beim S*-Cluster in der vorigen Umgebung war das nie ein Problem. Es gab schlichtweg keine Ausfälle des Clusterfilesystems.