Sun Cluster Entwicklerhandbuch Datendienste für Solaris OS

Probe_command-Eigenschaft

Der Testsignal-Befehl prüft in regelmäßigen Abständen die Fehlerfreiheit einer bestimmten Anwendung. Dabei muss es sich um einen UNIX-Befehl zusammen mit den entsprechenden Argumenten handeln, der direkt an eine Shell zum Testen der Anwendung übergeben werden kann. Der Testsignal-Befehl gibt einen Beendigungsstatus von 0 zurück, wenn die Anwendung fehlerfrei läuft.

Der Beendigungsstatus des Testsignal-Befehls dient zum Feststellen, wie schwerwiegend der Fehler der Anwendung ist. Dieser Beendigungsstatus, der als Testsignal-Status bezeichnet wird, muss eine Ganzzahl zwischen 0 (Erfolg) und 100 (Totalfehlschlag) sein. Der Testsignal-Status kann auch der Sonderwert 201 sein, was ein sofortiges Failover der Anwendung zur Folge hat, es sei denn, Failover_enabled ist auf “false” eingestellt. Der Testsignal-Status wird innerhalb des GDS-Testalgorithmus verwendet (siehe scds_fm_action(3HA)), um zu entscheiden, ob die Anwendung lokal neu gestartet oder ob ein Failover auf einen anderen Knoten ausgeführt wird. Bei einem Beendigungsstatus von 201 wird für die Anwendung sofort ein Failover ausgeführt.

Wenn der Testsignal-Befehl ausgelassen wird, stellt der GDS sein eigenes einfaches Testsignal bereit, mit dem eine Verbindung mit der Anwendung über den Satz von IP-Adressen hergestellt wird, die aus der Eigenschaft Network_resources_used bzw. der Ausgabe von scds_get_netaddr_list(3HA) abgeleitet werden. Wenn die Verbindung erfolgreich ist, wird sie sofort wieder getrennt. Wenn sowohl die Verbindungsherstellung als auch die Verbindungstrennung erfolgreich verlaufen, wird davon ausgegangen, dass die Anwendung fehlerfrei läuft.


Hinweis –

Das von dem GDS bereitgestellte Testsignal soll lediglich ein einfacher Ersatz für das voll funktionsfähige anwendungsspezifische Testsignal sein.