ZIDline
Solaris Cluster für den Software-Server
Helmut Mastal, Werner Steinmann
Die adäquate Software-Struktur für das Ausweichrechenzentrum

Solaris Cluster ist das komfortable Software-System zum Betreiben von Solaris Servern, wie dem Software-Server, an den zwei Standorten Freihaus und ARZ. Solaris Cluster harmoniert, wie wir zeigen konnten, mit der bewährten Replication Software TrueCopy von Hitachi, die bei uns seit drei Jahren erfolgreich zum Synchronisieren von zwei Storage-Systemen eingesetzt wird, und bildet so den vorläufigen Abschluss einer jahrelangen Entwicklung in Richtung Hochverfügbarkeit.

Ein zweites Storage-System mit TrueCopy verbunden

Der Software Distribution (SWD) Server lief schon viele Jahre hindurch auf zwei Hosts im aktiv/passiv Betrieb, zunächst 2x SunFire E450, später SunFire 3800 + E450 mit gemeinsamem Storage. Im Jahr 2007 wurden die jetzt noch laufenden SunFire T2000 Maschinen in Betrieb genommen. Diese scheinbar hohe Redundanz konnte aber die Verfügbarkeit des Servers insgesamt nicht wesentlich steigern. Das lag daran, dass die Stabilität der Server Hardware schon ein sehr hohes Maß erreicht hatte, Software- und Konfigurations-Probleme meist aber auch das Storage mit betrafen, welches damit zu einem Single Point of Failure wurde, obwohl seine eigene Verfügbarkeit doch schon sehr hoch war.

Es wurde daher Anfang 2008 ein zweites Storage AMS 500 angeschafft, welches den Namen AMS 502 erhielt, und das ein bitgenaues Abbild der Bereiche des bestehenden AMS 500 darstellt, die dem SWD-Server zuzurechnen sind. Schließlich wurde noch Mitte 2008 ein weiterer SunFire T2000 Host angeschafft, der ständig mit dem AMS 502 verbunden, der "remote" SWD-Server für einen zweiten Standort werden sollte. Es standen somit ab diesem Jahr zwei komplette SWD-Server Hosts betriebsbereit zur Verfügung, wobei weiterhin zu jedem Zeitpunkt einer der Primary und der andere der Secondary war (Abb. 1).

Die Storage-Daten werden mit der Replication Software TrueCopy von Hitachi synchron auf einer Trunk-Verbindung über die Brocade Switches 200e übertragen. Der Primary ist aktiver SWD-Server, der Secondary hat zwar read-only Zugriff auf seine eigenen Datenbereiche (LUNs), da aber kein Zugriff auf die noch im Cache des Primary befindlichen Datenblöcke besteht, sieht er immer ein inkonsistentes Bild der Filesysteme. Nur nach einem synchronisierenden Unmount und anschließendem Takeover kann der nun zum Primary gewordene Secondary wirklich mit konsistenten Daten arbeiten.

Die Uptime des Software-Servers im Folgejahr 2009 konnte mit TrueCopy auf den bisherigen Höhepunkt von 99,93 % der Gesamtzeit gesteigert werden. Allerdings war das Umschalten auf den anderen Host nur halb automatisch möglich, und die gegenseitigen Abhängigkeiten von TrueCopy, Logical Volume Manager (LVM) und Filesystem Mounts mussten händisch in einzelnen Schritten aufgelöst werden, da es keine übergeordnete Steuerungssoftware gab.

Abbildung 1: Hosts und Storage mit TrueCopy nach einem Takeover

Die Solaris Cluster Software

Auf der Suche nach einem geeigneten Softwarepaket, welches ein weitgehend automatisches Takeover ermöglicht, stößt man auf Solaris Cluster. Diese sehr leistungsfähige Software von Sun (jetzt Oracle) ermöglicht sowohl High Availability (HA) Applications wie auch scalable Applications (also Applikationen, die auf mehreren der verfügbaren Hosts im Cluster gleichzeitig laufen können). Selbstverständlich werden alle bei Sun üblichen Filesysteme und Volume Manager unterstützt (LVM Metasets, Veritas, Raw Devices als Datenbankbereiche sowie ZFS). Auch globale Mounts von Filesystemen an allen Hosts des Clusters sind möglich. Die Caches werden dann über das Cluster Interconnect synchron gehalten. Die prinzipielle Topologie, die Solaris Cluster zu Grunde liegt, ist in Abb. 2 dargestellt.

Was wir aber lange nicht herausfinden konnten, war die Verträglichkeit von Solaris Cluster mit dem bereits auf den Storages des SWD-Bereichs laufenden TrueCopy von Hitachi. Dass sie zumindest in einem Cluster koexistieren können, war schon bald klar. Aber erst vor einem Jahr bekamen wir Dokumente von Sun, in denen beschrieben wurde, wie die Switch-Mechanismen von Solaris Cluster und von Replication Paketen, wie Hitachi TrueCopy oder EMC SRDF aufeinander abgestimmt werden können. Tatsächlich gibt es dieses Feature ab Solaris Cluster 3.2 Update 1, und wir strebten das damals höchste Solaris Cluster 3.2 Update 3 an. Zu diesem Zeitpunkt war bereits beschlossen worden, den NAS-Server als Solaris Cluster zu implementieren, wobei in diesem Cluster ein Testbereich für den SWD-Server vorzusehen war, auf dem alle erforderlichen Eigenschaften, insbesondere die Verträglichkeit mit TrueCopy Replication, untersucht werden können. In der Folge ist es uns dann auch gelungen, zwei LUNs im Cluster so einzurichten, dass sie mit TrueCopy repliziert werden und gleichzeitig als Device Group im Solaris Cluster aufscheinen.

Abbildung 2: Prinzipielle Topologie eines Solaris Clusters

Das Ausweichrechenzentrum

Während über die Möglichkeiten von Solaris Cluster intensiv nachgedacht wurde, nahm das Ausweichrechenzentrum Gußhausstraße (ARZ) konkretere Formen an. Es war das Ziel, für die wichtigen Services jeder Abteilung zumindest einen Host auch im ARZ zu betreiben, der dort im Notfall auch autonom laufen könnte. Die Abteilung Standardsoftware ließ sich rechtzeitig vier Farben einer Verbindung über Glasfaser nach dem CWDM-Verfahren (Coarse Wavelength Division Multiplex) reservieren (Abb. 3). Diese wird seit Dezember 2010 für TrueCopy Replication verwendet, nachdem bereits lokale Tests im Jahr 2009 gute Ergebnisse gebracht hatten und das CWDM-Verfahren sich als stabiles und verlustfreies Multiplexing erwiesen hatte.

Zur Inbetriebnahme des ARZ für den SWD-Server hat man sich entschlossen, das bestehende AMS 500 Storage-System nicht mehr zu übersiedeln, was mit einem großen Risiko und Versicherungskosten verbunden gewesen wäre. Vielmehr wurde das neue Ersatzsystem AMS 2103 (Abb. 4) direkt ins ARZ geliefert und dort installiert. Das hatte darüber hinaus den Vorteil, dass ein modernes und leistungsfähiges Storage direkt in die 19 Zoll Rittal-Schränke montiert werden konnte und wegen des geringeren Stromverbrauchs über Pulsare (Abb. 5) an normale 16A-Steckerleisten angeschlossen werden konnte. Die zugehörigen Brocade Switches 200e swdswc und swdswd wurden ganz einfach übersiedelt (Abb. 6).

Der auf dieser Hardware-Basis installierte Solaris Cluster für den SWD-Server läuft daher derzeit noch etwas unsymmetrisch, bis das letzte AMS 500 Storage durch ein gleichwertiges, aber leistungsfähigeres Storage vom Typ AMS 2100 abgelöst wird, welches dann AMS 2101 heißen wird. Abbildung 7 zeigt die Struktur des SWD-Clusters mit dem NAS-Cluster in einem Zustand nach der Ablöse Mitte dieses Jahres. Zur Installation der Solaris Cluster Software Version 3.2 Update 8 ist zu sagen, dass diese relativ einfach und wie beschrieben erfolgt. Die Vorbereitungen dazu erwiesen sich aber auf Grund von sehr komplexen Hardware- und Software-Abhängigkeiten mit AMS 2100, HDLM 6.x, Solaris OS Version 10 Update 8 (muss auf allen Hosts gleich sein) und dem LVM als äußerst mühsam und zeitaufwendig. Daher laufen jetzt alle in einen Cluster eingebundenen Hosts mit Solaris 10 Update 8.

Abbildung 3: CWDM Multiplexer im ARZ
Abbildung 4: Hitachi Tagma Storage AMS 2103 im ARZ
Abbildung 5: Pulsare im ARZ
Abbildung 6: Brocade Switches 200e im ARZ
Abbildung 7: STS-SAN mit SWD-Cluster und NAS-Cluster
 

Was ist noch zu tun?

Im März dieses Jahres wird noch das lokale, älteste AMS 500 Storage-System gegen das moderne, leistungsfähigere und stromsparende AMS 2101 ausgetauscht. Der Solaris Cluster des SWD-Servers wird damit wieder vollkommen symmetrisch. Die SunFire T2000 Maschine swdr, die älteste, aus der Vorserie stammende, soll zu einem so genannten Quorum Server (dient zur Verhinderung von Split Brain oder Amnesia) hochgezogen werden, der dann die Quorum Devices der beiden Solaris Cluster ablösen kann. Dieser Schritt ist vermutlich mit einem gewissen Software-Aufwand verbunden. Da zwar die Release-Stände der beiden Cluster identisch sind, aber die Patch-Stände durch die zeitliche Abfolge unterschiedlich, ist auch hier noch ein gewisser Upgrade-Aufwand notwendig.

Zu einem voll funktionsfähigen Cluster-System ist es auch noch notwendig, Anpassungen am hier entwickelten Software Distribution System (SDS) vorzunehmen. Ein Fernziel, das wir aber nicht aus dem Auge verlieren wollen, ist, den Software-Server zu einer Scalable Application zu machen, also im Wesentlichen Downloads von beiden Hosts gleichzeitig zu ermöglichen, und damit die Leistungsfähigkeit des Solaris Clusters zu vervielfachen. Dieser würde dann die Bezeichnung Iguazú verdienen (= 5x Niagara T2000).

Literatur

Rolf Dietze: Sun Cluster. Springer Verlag, ISBN 978-3-540-33805-5

Joseph Bianco, Peter Lees, Kevin Rabito: Sun Cluster 3 Programming: Integrating Applications into the SunPlex Environment, Prentice Hall, ISBN 0-13-047975-6

Richard Elling, Tim Read: Designing Enterprise Solutions with Sun Cluster 3.0, Prentice Hall, ISBN 0-13-008458-1

Kristien Hens, Michael Loebmann: Creating Highly Available Database Solutions: Oracle Real Application Clusters (RAC) and Sun Cluster 3.x Software, Prentice Hall, ISBN 0-13-186390-8

How to Install and Configure a Two-Node Cluster. An Oracle White Paper, June 2010

Oracle Solaris and Oracle Solaris Cluster: Extending Oracle Solaris for Business Continuity. An Oracle White Paper, September 2010

Sun Cluster System Administration Guide for Solaris OS, part number 820-7458 for Sun Cluster 3.2 Update 3

Sun Cluster Software Installation Guide for Solaris OS, part number 820-7356 for Sun Cluster 3.2 Update 3

Sun Cluster Concepts Guide for Solaris OS, part number 821-0259 for Sun Cluster 3.2 Update 3

Hitachi Dynamic Link Manager Software. User’s Guide for Solaris Systems, MK-92DLM114-17

Hitachi TrueCopy/TCE Synchronous Remote Replication. Software User’s Guide, MK-95DF710