Sun Cluster Entwicklerhandbuch Datendienste für Solaris OS

Steuerungs- und Initialisierungs-Rückmeldemethoden

Die primären Steuerungs- und Initialisierungs-Rückmeldemethoden starten und stoppen eine Ressource. Andere Methoden führen für eine Ressource Initialisierungs- und Beendigungscode aus.

Start

Diese erforderliche Methode wird auf einem Cluster-Knoten aufgerufen, wenn die Ressourcengruppe mit der Ressource auf diesem Knoten online gebracht wird. Die Methode aktiviert die Ressource auf dem Knoten.

Eine Start-Methode darf erst dann beendet werden, wenn die von ihr aktivierte Ressource gestartet wurde und auf dem lokalen Knoten verfügbar ist. Daher muss die Start-Methode vor Beendigung die Ressource abrufen, um festzustellen, ob sie gestartet wurde. Außerdem muss für diese Methode ein ausreichend langer Zeitüberschreitungswert eingestellt werden. Einige Ressourcen, wie zum Beispiel Datenbankdämone, brauchen mehr Zeit zum Starten. Daher benötigt die entsprechende Start-Methode einen höheren Zeitüberschreitungswert.

Die Reaktion von RGM auf einen Fehlschlag der Start-Methode hängt von der Einstellung der Failover_mode-Eigenschaft ab.

Die START_TIMEOUT-Eigenschaft in der Ressourcentyp-Registrierungsdatei stellt den Zeitüberschreitungswert für die Start-Methode einer Ressource ein.

Stop

Diese erforderliche Methode wird auf einem Cluster-Knoten aufgerufen, wenn die Ressourcengruppe mit der Ressource auf diesem Knoten offline gebracht wird. Die Methode deaktiviert die Ressource, wenn sie aktiv ist.

Eine Stop-Methode darf erst dann beendet werden, wenn die von ihr gesteuerte Anwendung vollständig gestoppt wurde, alle Aktivitäten eingestellt und alle Dateideskriptoren geschlossen hat. Andernfalls nimmt RGM an, dass die Ressource gestoppt wurde, während sie in Wirklichkeit noch läuft, was zu Datenfehlern führen kann. Der sicherste Weg zum Vermeiden von Datenfehlern besteht darin, alle Prozesse auf dem lokalen Knoten zu stoppen, die mit der Ressource in Zusammenhang stehen.

Die Stop-Methode muss vor der Beendigung die Ressource abrufen, um festzustellen, ob sie gestoppt wurde. Außerdem muss für diese Methode ein ausreichend langer Zeitüberschreitungswert eingestellt werden. Einige Ressourcen, wie zum Beispiel Datenbankdämone, brauchen mehr Zeit zum Stoppen. Daher benötigt die entsprechende Stopp-Methode einen höheren Zeitüberschreitungswert.

Die Reaktion von RGM auf einen Fehlschlag der Stop-Methode hängt von der Einstellung der Failover_mode-Eigenschaft ab (siehe Tabelle A–2).

Die STOP_TIMEOUT-Eigenschaft in der Ressourcentyp-Registrierungsdatei stellt den Zeitüberschreitungswert für die Stop-Methode einer Ressource ein.

Init

Diese optionale Methode wird aufgerufen, um eine einmalige Initialisierung der Ressource auszuführen, wenn diese in einen verwalteten Zustand versetzt wird — entweder weil die Ressourcengruppe, in der sie sich befindet, aus einem nicht verwalteten in einen verwalteten Zustand versetzt wird, oder weil die Ressource in einer bereits verwalteten Ressourcengruppe erstellt wird. Die Methode wird auf den in der Init_nodes-Ressourceneigenschaft festgelegten Knoten aufgerufen.

Fini

Diese optionale Methode wird aufgerufen, um nach der Ressource zu bereinigen, wenn diese in einen unverwalteten Zustand versetzt wird — entweder, weil die Ressourcengruppe, in der sie sich befindet, in einen unverwalteten Zustand versetzt wird, oder weil die Ressource aus einer verwalteten Ressourcengruppe gelöscht wird. Die Methode wird auf den in der Init_nodes-Ressourceneigenschaft festgelegten Knoten aufgerufen.

Boot

Diese Init ähnliche optionale Methode wird aufgerufen, um die Ressource auf Knoten zu initialisieren, die dem Cluster beitreten, nachdem die Ressourcengruppe mit der Ressource bereits unter RGM-Verwaltung gestellt wurde. Die Methode wird auf den in der Init_nodes-Ressourceneigenschaft festgelegten Knoten aufgerufen. Die Boot-Methode wird aufgerufen, wenn der Knoten dem Cluster beitritt bzw. wenn er als Ergebnis eines Starts oder Neustarts erneut beitritt.


Hinweis –

Ein Fehlschlag der Init-, Fini- oder Boot-Methode bewirkt das Generieren einer Fehlermeldung durch die syslog()-Funktion, hat aber ansonsten keine Auswirkungen auf die RGM-Verwaltung der Ressource.