Skip to content

Sun Cluster

Sun Cluster ist Suns Produktname für eine Reihe von Technologien, die unter Solaris den Betrieb von Failover oder Loadbalancing Clustern erlauben. Dazu gehrt insbesondere ein Cluster Manager der Nodes und Resourcen verwalten kann. Es gehrt auch eine IP Loadbalancing Technik dazu (vergleichbar mit Windows Network Load Balancing). Sun Cluster 3.1 ist Teil der Java Availability Suite (Das Wort Java ist nur ein cooles Tag, darunter fallen auch Non-Java Dienste) und kostenfrei mit Solaris erhältlich. Ich war beim Design und der Umsetzung eines HA Agents für eine unserer Anwendungen (Sun nennt diese Data Service) beteiligt. Im wesentlichen gehts es darum ein Solaris Package zu erstellen, das dem Cluster Manager einen neuen Resource Typen bekannt macht. Der Cluster Manager selbst ist ausgereift, und die Erstellung der Agents dank ausführlicher Doku und umfangreichen Schnittstellen ist auch kein großes Problem. Allerdings ist die zu erstellende Software unnötig komplex. Gerade bei Dingen wie Systemmonitoring ist dies Fatal, da robustes Verhalten oberstes Gebot ist. Meine Detailerfahrungen will ich hier mal in lockerer Folge festhalten. Was mir zuerst aufgefallen ist war, dass sich der Resource Manager des Sun Clusters nicht in den Bereich Restart und Failover einmischt. Der Manager startet Resourcen ("Data Services" genannt) in vordefinierter Reihenfolge (dank einer Reihe von unterschiedlichen Dependencies). Danach startet der Manager einen Monitor Prozess. Was der Cluster aber nicht tut sind irgendwelche Überwachungen, auch nicht vom Monitor Prozess. Der Monitor Prozess ist dafür verantwortlich die Anwendung zu monitoren (z.B. oder der Prozess noch läuft oder ob dieser erreichbar ist). So weit so gut, aber was der Monitoring Prozess ebenso tun muss ist die Anwendung neu zu starten oder die Entscheidung zu treffen, ob der Cluster Manager einen Failover auslösen soll.
Die Entscheidung nach wievielen Fehlern in welchem Zeirtahmen der Failover stattfindet ist dabei auch dem Script überlassen. Wenn das Monitoring Script irgendwelche korrektiven Schritte vornimmt, so wird der Cluster Manager darüber nicht in Kentniss gesetzt. Das Monitoring Script wird somit komplex. Man kann zwar den SunPlex Agent Builder verwenden (ein Java Wizard um ein Grundgerüst eines Agents in C oder ksh zu erstellen), aber die so erzeugten Scripte und Programme lassen doch einige Features missen und sind wenig Robust, dafür aber ziemlich komplex. Es gibt viele Aufgaben die man somit öfters lösen muss. Z.b. das starten von Prozessen, das Überwachen oder Abschießen. Dazu die Überwachung von Timeouts oder Locks. Die wichtigsten Tools dazu sind das PMF (das Prozess Management Facility) und einige Utilities. Mehr dazu im nächsten Artikel.

Trackbacks

No Trackbacks

Comments

Display comments as Linear | Threaded

gehteuchnian on :

und wie viele rechner kann man maxial zusammenschließen hmmmmmmmm?

Bernd Eckenfels on :

Ich vermut mal 32-128 Knoten. Aber da es sich hier ja um HA und nicht MP/HPC Cluster Knoten handelt dürften die selten eine Grenze darstellen. (Sorry den Kommentar hab ich eben erst im Spamfilter gefunden).

Add Comment

BBCode format allowed
Enclosing asterisks marks text as bold (*word*), underscore are made via _word_.
E-Mail addresses will not be displayed and will only be used for E-Mail notifications.
To leave a comment you must approve it via e-mail, which will be sent to your address after submission.

To prevent automated Bots from commentspamming, please enter the string you see in the image below in the appropriate input box. Your comment will only be submitted if the strings match. Please ensure that your browser supports and accepts cookies, or your comment cannot be verified correctly.
CAPTCHA