Die LooksAlive und IsAlive Checks im Cluster

Wie überprüft der Cluster Service die Verfügbarkeit einzelner Ressourcen?

Um zu überprüfen, ob Cluster Ressourcen noch verfügbar sind gibt es im allgemeinen zwei Checks, die der Clusterdienst periodisch ausführt: Den LooksAlive check und den IsAlive check.
Der LooksAlive check ist eine einfache Überprüfung, ob eine Ressource ansprechbar ist. Der IsAlive check geht -je nach Ressourcentyp- darüber hinaus.

Die LooksAlive und IsAlive checks fallen je nach Ressourcentyp unterschiedlich aus, hier anhand des Beispiels einer Cluster Print Spooler Ressource:

LooksAlive
Der Windows Service Control Monitor (SCM) wird abgefragt, ob der Spooler Dienst läuft

IsAlive
Ein API Call auf das Printer Subsystem (localspl.dll) wird abgesetzt

Der LooksAlive-/IsAlive check einer Ressource ist also stark davon abhängig, welche Funktion eine Ressource inne hat. Folgender KB Artikel gibt einem eine gute Übersicht wie die üblichen Cluster Standardressourcen überprüft werden:

» Behavior of the LooksAlive and IsAlive functions… (KB 914458)

Im Falle einer Physical Disk Ressource prüft der Clusdisk.sys Clusterdienst zusätzlich alle 3 Sekunden mittels eines SCSI Reserve Kommandos, ob die LUN noch verfügbar ist. Weiterhin wird eine Lese-/Schreiboperation auf den sog. „Private Sector“, den Sektor 12 einer LUN, ausgeführt.

Um die LooksAlive-/IsAlive checks zu unterdrücken, um beispielsweise ein „chkdsk /f“ exklusiv und vor allem unterbrechungsfrei auf einer Shared Disk auszuführen zu können, gibt es seit Windows Server 2003 SP1 den Maintenance Mode. Mittels folgendem cluster.exe Parameter kann eine Disk in diesen Wartungsmodus versetzt werden:

cluster.exe . res "ADisk" /maint:on

Weiterführende Informationen zum Wartungsmodus:
» http://support.microsoft.com/kb/903650/en-us

Das LooksAlive-/IsAlive Intervall kann alternativ dazu über ein cluster.exe Parameter angepasst werden:

» Cluster.exe Parameters: LooksAlivePollInterval – IsAlivePollInterval

Die Defaultwerte sollten nur in begründeten Fällen angepasst werden, zB. um die Zeit für einen Restore zu erhöhen. In der Regel können ab W2K3 SP1 anstatt der manuellen Anpassung die Werte des Maintenance Mode verwendet werden.

Stay tuned,
N.Own