Schöner die Cluster nie schwenken
Es gibt Dinge über die kann man wunderbar streiten: vim oder vi, grub oder lilo, nvidia oder ati und natürlich routinemäßige Clusterschwenks. Ich bin dabei ein großer Anhänger von letzteren, denn vernünftig und kontrolliert ausgeführt gibt es im Normalfall keine Probleme. Das heisst man schwenkt regelmäßig, automatisiert und wenn alle an Bord sind.
Denn seien wir doch mal ehrlich: viele Cluster werden installiert und dann sich selbst überlassen. Man verlässt sich auf die vermeintliche Hochverfügbarkeit nur um festzustellen, das der zweite Knoten nicht funktioniert wie er soll wenn es darauf ankommt. Es ist tiefe Nacht, kurz vor Heiligabend und niemand ist zu erreichen.
Sicherlich kann es bei Routineschwenk zu Probleme kommen, aber dafür weiss man wann dieser passiert und man hat (hoffentlich) das benötigte Personal an Bord. Gefahr erkannt, Gefahr gebannt. Als Lohn gibt es die Gewissheit, das der nächste Schwenk ohne Probleme verläuft und wenn nicht sammelt man genug Erfahrungen um damit umzugehen.
$KUNDE hatte mehrere tausend identische Server, die jeden Sonntag alle rebootet wurden. Bei jedem Reboot ist natürlich mindestens ein halbes Dutzend davon verstorben. Das klingt zwar erstmal häßlich, aber bei dieser Landschaft wußte man Montag morgens wenigstens ohne den Hauch eines Zweifels, woran man war.
Gerade vorletztes WE wieder ein paar kontrollierte Clusterschwenks gemacht. Dabei auch in bestimmten Sonderfällen das ein oder andere Problemchen gefunden, dass im Fall des Falles zu Schweißperlen auf der Stirn geführt hätte.
In dem Fall ist also Vorsicht tatsächlich besser als Nachsicht. Denn nur dann kann man gefundene Probleme proaktiv angehen…
Normalerweise installiert man ja keinen Cluster sofort produktiv. Sinnvollerweise gibt es vorher Clustertests, Desaster-Recovery Tests usw. Erst dann geht man in die Produktion. Wo dann zwar immer noch Probleme auftreten können, die man vorher nicht sah. Aber eben nicht mehr die “Anfängerfehler”.
Idealerweise wird mit dem Kunden vereinbart, regelmäßige Clusterschwenks zum Testen durchzuführen.
Hoffen wir alle, dass Weihnachten ruhig bleibt. :)
Wenn ein Clusterknoten ausfällt, wird dessen Ressource auf den anderen Knoten geschwenkt und dort ausgeführt. Problematisch ist, dass dieser Knoten nun die ganze Last allein trägt, bei linearer Verteilung also doppelt so viel leisten muss.
.oO(Klingt wie eine indirekte Kritik…) ;)
@stef
Es gibt immer Gründe warum der andere Konten nicht will, da helfen auch umfangreiche Vorab-Tests nicht.
@kraut
Kein Stück. Das automatische Schwenken deckt Lücken auf und das ist gut.
Es ist auch immer wieder schön, wenn $Admin “denkt” seine crontab wird per rsync auf Node2 gespiegelt, und der Clusterschwenk von $Admin-Urlaubsvertretung beweist das Gegenteil. Ergo: PRO Regelschwenk! Je dicker die Umgebung desto häufiger schwenken! Gerne auch mal mit 300 aktiven Usern auf der geneigten Solaris. Dem Oracle auf der HP-UX hats auch noch nie geschadet…