Sun Cluster Entwicklerhandbuch Datendienste für Solaris OS

Definieren der Ressourcentyp-Registrierungsdatei

Die Ressourcentyp-Registrierungsdatei (RTR-Datei) in diesem Beispiel definiert die statische Konfiguration des DNS-Ressourcentyps. Ressourcen dieses Typs übernehmen die in der RTR-Datei definierten Eigenschaften.

Die Informationen in der RTR-Datei werden von RGM gelesen, wenn der Cluster-Verwalter den HA-DNS-Datendienst registriert.

Überblick über RTR-Dateien

Die RTR-Datei ist in einem klar definierten Format aufgebaut. In der Datei werden zuerst Ressourcentypeigenschaften definiert, dann systemdefinierte Ressourceneigenschaften und zuletzt Erweiterungseigenschaften. Weitere Informationen finden Sie in der Online-Dokumentation unter rt_reg(4) und unter Einstellen der Ressourcen- und Ressourcentypeigenschaften.

Dieser Abschnitt beschreibt die spezifischen Eigenschaften in der RTR-Beispieldatei. Verschiedene Teile der Datei werden aufgelistet. Eine vollständige Auflistung des Inhalts der RTR-Beispieldatei finden Sie unter Auflistung der Ressourcentyp-Registrierungsdatei.

Ressourcentypeigenschaften in der RTR-Beispieldatei

Die RTR-Beispieldatei beginnt mit Kommentaren, gefolgt von Ressourcentypeigenschaften zur Definition der HA-DNS-Konfiguration, wie in der folgenden Auflistung gezeigt.

#
# Copyright (c) 1998-2004 Sun Microsystems, Inc.
# Alle Rechte vorbehalten.
#
# Registrierungsinformationen für DNS (Domain Name Service)
#

#pragma ident   “@(#)SUNW.sample   1.1   00/05/24 SMI”

RESOURCE_TYPE = “Beispiel”;
VENDOR_ID = SUNW;
RT_DESCRIPTION = “Domain Name Service auf Sun Cluster”;

RT_VERSION =”1.0”;
API_VERSION = 2;
FAILOVER = TRUE;

RT_BASEDIR=/opt/SUNWsample/bin;
PKGLIST = SUNWsample;

START         =   dns_svc_start;
STOP          =   dns_svc_stop;

VALIDATE      =   dns_validate;
UPDATE        =   dns_update;

MONITOR_START =   dns_monitor_start;
MONITOR_STOP  =   dns_monitor_stop;
MONITOR_CHECK =   dns_monitor_check;

Tipp –

Als ersten Eintrag in der RTR-Datei müssen Sie die Resource_type-Eigenschaft deklarieren. Andernfalls schlägt die Registrierung des Ressourcentyps fehl.



Hinweis –

RGM unterscheidet bei Eigenschaftsnamen nicht zwischen Groß- und Kleinschreibung. Die Konvention für Eigenschaften in von Sun gelieferten RTR-Dateien, mit Ausnahme der Methodennamen, ist Großschreibung des ersten Buchstabens und Kleinschreibung der restlichen Buchstaben des Namens. Methodennamen werden — ebenso wie Eigenschaftsattribute — ganz in Großbuchstaben geschrieben.


Es folgen einige Informationen zu diesen Eigenschaften.

Ressourcentypeigenschaften, die nicht in dieser RTR-Datei angegeben sind, wie Single_instance, Init_nodes und Installed_nodes, rufen ihre Standardwerte ab. Eine vollständige Liste der Ressourcentypeigenschaften mit den jeweiligen Standardwerten finden Sie in Tabelle A–1.

Der Cluster-Verwalter kann die für Ressourcentypeigenschaften in der RTR-Datei angegebenen Werte nicht ändern.

Ressourceneigenschaften in der RTR-Beispieldatei

Der Konvention gemäß werden Ressourceneigenschaften in der RTR-Datei nach den Ressourcentypeigenschaften deklariert. Ressourceneigenschaften sind sowohl die von Sun Cluster bereitgestellten systemdefinierten Eigenschaften als auch vom Benutzer definierte Erweiterungseigenschaften. Für jeden Typ können Sie eine Reihe von Eigenschaftsattributen angeben, die Sun Cluster vorgibt, wie zum Beispiel “minimum”, “maximum” und Standardwerte.

Systemdefinierte Eigenschaften in der RTR-Datei

Die folgende Auflistung zeigt die systemdefinierten Eigenschaften in der RTR-Beispieldatei.

# Eine Liste von Ressourceneigenschaftsdeklarationen in Klammern
# folgt auf die Ressourcentypdeklarationen. Die Eigenschaftsnamensdeklaration
# muss das erste Attribut nach der geöffneten geschweiften Klammer für jeden Eintrag sein.

# Die <Methode>_timeout-Eigenschaften stellen den Wert in Sekunden ein,
# nachdem RGM schließt, dass der Methodenaufruf fehlgeschlagen ist.

# Der MIN-Wert für alle Methoden-Zeitüberschreitungen ist auf 60 Sekunden eingestellt.
# So können die Verwalter keine kürzen Zeitüberschreitungen einstellen, die keine
# Verbesserung der Switchover-/Failover-Leistung bewirken würden und unerwünschte RGM-
# Aktionen zur Folge haben könnten (falsche Failover, Knotenneustart oder Verschieben der
# Ressourcengruppe in den Zustand ERROR_STOP_FAILED, was einen Bedienereingriff
# erforderlich macht). Wenn zu kurze Methoden-Zeitüberschreitungen eingestellt werden,
# führt dies zu einem *Absinken* der Datendienstverfügbarkeit insgesamt.
{
   PROPERTY = Start_timeout;
   MIN=60;
   DEFAULT=300;
}

{
   PROPERTY = Stop_timeout;
   MIN=60;
   DEFAULT=300;
}
{
        PROPERTY = Validate_timeout;
        MIN=60;
        DEFAULT=300;
}
{
        PROPERTY = Update_timeout;
        MIN=60;
        DEFAULT=300;
}
{
        PROPERTY = Monitor_Start_timeout;
        MIN=60;
        DEFAULT=300;
}
{
        PROPERTY = Monitor_Stop_timeout;
        MIN=60;
        DEFAULT=300;
}
{
        PROPERTY = Thorough_Probe_Interval;
        MIN=1;
        MAX=3600;
        DEFAULT=60;
        TUNABLE = ANYTIME;
}

# Die Anzahl der Wiederholversuche, die innerhalb eines bestimmten Zeitraums
# ausgeführt werden, bevor geschlossen wird, dass die Anwendung auf diesem
# Knoten nicht erfolgreich gestartet werden kann.
{
        PROPERTY = Retry_Count;
        MIN=0;
        MAX=10;
        DEFAULT=2;
        TUNABLE = ANYTIME;
}

# Retry_Interval als Vielfaches von 60 einstellen, da der Wert von
# Sekunden in Minuten konvertiert und aufgerundet wird. Ein Wert von 50
# (Sekunden) wird zum Beispiel zu einer Minute aufgerundet. Diese Eigenschaft
# verwenden, um die Anzahl der Wiederholversuche festzustellen (Retry_Count).
{
        PROPERTY = Retry_Interval;
        MIN=60;
        MAX=3600;
        DEFAULT=300;
        TUNABLE = ANYTIME;
}

{
        PROPERTY = Network_resources_used;
        TUNABLE = AT_CREATION;
        DEFAULT = ““;
}

Sun Cluster stellt zwar die systemdefinierten Eigenschaften bereit. Sie können jedoch mithilfe der Ressourceneigenschaftsattribute andere Standardwerte einstellen. Eine vollständige Auflistung der Attribute, die für Ressourceneigenschaften zur Verfügung stehen, finden Sie unter Ressourceneigenschaftsattribute.

Beachten Sie folgende Aspekte der systemdefinierten Ressourceneigenschaften in der RTR-Beispieldatei:

Erweiterungseigenschaften in der RTR-Datei

Am Ende der RTR-Datei befinden sich die Erweiterungseigenschaften, die in der folgenden Auflistung gezeigt werden.

# Erweiterungseigenschaften

# Der Cluster-Verwalter muss den Wert dieser Eigenschaft so einstellen, dass
# er auf das Verzeichnis zeigt, das die von der Anwendung verwendeten
# Konfigurationsdateien enthält. Für diese Anwendung, DNS, wird der Pfad der
# DNS-Konfigurationsdatei auf PXFS angegeben (in der Regel named.conf).
{
   PROPERTY = Confdir;
   EXTENSION;
   STRING;
   TUNABLE = AT_CREATION;
   DESCRIPTION = “Pfad zum Konfigurationsverzeichnis”;
}

# Zeitüberschreitungswert in Sekunden, bevor das Testsignal als fehlgeschlagen
# deklariert wird.
{
        PROPERTY = Probe_timeout;
        EXTENSION;
        INT;
        DEFAULT = 120;
        TUNABLE = ANYTIME;
        DESCRIPTION = “Zeitüberschreitungswert für das Testsignal (Sekunden)”;
}

Die RTR-Beispieldatei definiert zwei Erweiterungseigenschaften, Confdir und Probe_timeout. Confdir gibt den Pfad zum DNS-Konfigurationsverzeichnis an. Dieses Verzeichnis enthält die in.named-Datei, die der DNS für einen erfolgreichen Betrieb benötigt. Die Start- und Validate-Methoden des Beispieldatendienstes verwenden diese Eigenschaft, um vor dem Starten von DNS zu überprüfen, ob auf das Konfigurationsverzeichnis und die in.named-Datei zugegriffen werden kann.

Nach Konfigurieren des Datendienstes überprüft die Validate-Methode, ob das neue Verzeichnis zugänglich ist.

Bei der PROBE-Methode des Beispieldatendienstes handelt es sich nicht um eine Sun Cluster-Rückmeldemethode, sondern um eine benutzerdefinierte Methode. Daher stellt Sun Cluster keine Probe_timeout-Eigenschaft für sie bereit. Der Entwickler hat eine Erweiterungseigenschaft in der RTR-Datei definiert, mit deren Hilfe der Cluster-Verwalter einen Probe_timeout-Wert konfigurieren kann.