Mit dem Sun Cluster-System können Anwendungen als hoch verfügbare und skalierbare Ressourcen ausgeführt und verwaltet werden. Der Ressourcengruppen-Manager (RGM) bietet den geeigneten Mechanismus für eine hohe Verfügbarkeit und Skalierbarkeit. Folgende Elemente bilden die Programmierschnittstelle für Folgendes:
Einen Satz Rückmeldemethoden, die Sie schreiben und mit denen RGM eine Anwendung im Cluster steuern kann.
Die Ressourcenverwaltungs-API (RMAPI), ein Satz API-Befehle niedriger Ebene und Funktionen, die Sie zum Schreiben der Rückmeldemethoden verwenden können. Diese APIs sind in der libscha.so-Bibliothek implementiert.
Process Monitor Facility (PMF) zur Überwachung und zum Neustarten von Prozessen im Cluster.
Die Data Service Development Library (DSDL), ein Satz Bibliotheksfunktionen, der die API niedriger Ebene und die Prozessverwaltungsfunktionen einkapselt. Die DSDL bietet zusätzliche Funktionen zur Vereinfachung des Schreibens von Rückmeldemethoden. Diese Funktionen sind in der libdsdev.so-Bibliothek implementiert.
Die folgende Abbildung stellt die Beziehung dieser Elemente zueinander dar.
SunPlex Agent Builder, das in Kapitel 9, SunPlex Agent Builder beschrieben wird, ist ein Tool im Sun Cluster-Paket, mit dem der Prozess zum Erstellen eines Datendienstes automatisiert wird. Agent Builder generiert einen Datendienstcode in C (unter Verwendung der DSDL-Funktionen zum Schreiben der Rückmeldemethoden) oder in der Korn-Shell-Befehlssprache (ksh) (unter Verwendung der API-Befehle zum Schreiben von Rückmeldemethoden).
RGM führt an jedem Cluster-Knoten einen Dämon aus und startet und stoppt die Ressourcen an den ausgewählten Knoten entsprechend der vorkonfigurierten Richtlinien automatisch. RGM sorgt im Falle eines Knotenfehlers oder Neustarts für eine hohe Verfügbarkeit, indem die Ressourcen am betroffenenen Knoten angehalten und an einem anderen Knoten gestartet werden. RGM startet und stoppt auch ressourcenspezifische Monitore automatisch. Diese Monitore entdecken Ressourcenfehler und leiten fehlerhafte Ressourcen an andere Knoten weiter oder überwachen andere Aspekte der Ressourcenleistung.
RGM unterstützt sowohl Failover-Ressourcen, die jeweils nur an einem Knoten online sein können, als auch skalierbare Ressourcen, die an mehreren Knoten gleichzeitig online sein können.