Fehlertoleranz als Cluster-Alternative

Die Logik des Einfachen

19. Mai 2005, 23:16 Uhr | Ulrich Lenz/jos Ulrich Lenz ist Diplom-Mathematiker und bei Stratus Technologies tätig.

Nicht immer stellt ein Cluster den besten Weg zur Ausfallsicherheit dar. Stratus Technologies propagiert ein Serversystem, dessen Stärke zum großen Teil auf redundant ausgelegter Hardware beruht. Im Idealfall läuft der Betrieb auch bei Störungen reibungslos weiter. Die Geräte melden dann selbst, dass der Administrator defekte Teile austauschen muss.

Heutzutage gelten viele IT-Dienstleistungen als selbstverständlich. Wenn jemand etwa eine
Anfrage zu einer Rechnung stellt, geht er davon aus, dass der Sachbearbeiter Zugriff auf die
Kundendaten hat und die gewünschte Information prompt liefern kann. Am Check-in-Schalter der
Fluggesellschaft erwarten Kunden selbstverständlich das Vorliegen der Onlinereservierung. Aber auch
in noch komplexeren Umgebungen wie zum Beispiel in logistischen Systemen mit
Just-in-Time-/Just-in-Sequence-Lieferverpflichtungen oder in den Fertigungsprozessen der
pharmazeutischen Industrie lassen sich erfolgskritische Geschäftabläufe nur noch mit
hochqualitativer IT-Unterstützung realisieren.

Störungen in der IT wirken sich sofort auf die Geschäftsprozesse aus, wobei die Konsequenzen je
nach Einsatzgebiet zwischen geringfügigen monetären Schäden über Einstellung der Geschäftstätigkeit
bis hin zu Schäden an Leib und Leben von Personen gehen können. Abhängig von den möglichen Schäden
wird sich also der verantwortliche Manager in ökonomisch vertretbaren Grenzen mit entsprechenden
störungsfreien IT-Systemen absichern wollen.

Verfügbarkeits-Level

Angelehnt an die Formulierungen der Harvard Research Group gibt es eine fünfstufige
Klassifizierung für lokale Verfügbarkeitsumgebungen (Availability Environment Classification
(AEC)), die die Systemverfügbarkeit anhand der Auswirkungen auf den Endanwender und
Geschäftsprozess definiert. Im Einzelnen sind dies:

Conventional (AEC 0) – Geschäftsprozesse können unterbrochen werden, und die
Datenintegrität ist nicht von Relevanz. Plötzliche unkontrollierte Shutdowns sind akzeptabel, und
Daten können korrumpiert werden oder verloren gehen;

High Reliable (AEC 1) – Geschäftsprozesse können unterbrochen werden, solange
die Datenintegrität gewährleistet ist. Plötzliche unkontrollierte Shutdowns sind akzeptabel – die
Daten bleiben jedoch konsistent;

High Availability (AEC 2) – Geschäftsprozesse erlauben nur eine geringfügige
Unterbrechung der IT-Dienste – entweder in spezifischen Zeitperioden, bestimmten Tagesabschnitten
oder bestimmten Tagen in der Woche. Dies bedeutet: Im Störungsfall wird die Arbeit des Endanwenders
unterbrochen, er kann aber kurz- bis mittelfristig wieder auf die Anwendung zugreifen –
möglicherweise sind einige Transaktionen zu wiederholen, und es gibt eventuelle
Leistungseinbußen;

Fault Resilient (AEC 3) – Geschäftsprozesse erfordern eine unterbrechungsfreie
IT-Unterstützung – entweder in spezifischen Zeitperioden, in bestimmten Tagesabschnitten oder an
bestimmten Tagen in der Woche. Dies bedeutet: Der Endanwender kann ungestört weiterarbeiten, also
treten keine Arbeitsunterbrechung, kein Transaktionsverlust und keine Leistungseinbußen auf. Zum
Zeitpunkt der Störungsbeseitigung außerhalb der Geschäftszeiten ist jedoch eine geplante
Stillstandzeit erforderlich;

Fault Tolerant (AEC 4) – Geschäftsprozesse erfordern eine kontinuierliche
Verarbeitung, und jede Störung ist für den Endanwender völlig transparent. In der Konsequenz gibt
es keine Arbeitsunterbrechung, keinen Transaktionsverlust, keine Leistungseinbußen, und ein
kontinuierlicher 24-mal-7-Betrieb ist gewährleistet – auch während der Störungsbeseitigung.

Der Markt für Hochverfügbarkeitssysteme bietet heute spezielle Lösungen entlang dieser in ihrer
Auswirkung auf die Verfügbarkeit der IT sehr unterschiedlichen Verfügbarkeitsklassen.

Kritik am Clustering

Für geschäftskritische Anwendungen kommen selbstverständlich nur die Stufen AEC 2 bis AEC 4 in
Frage. Hierbei wird die Stufe 2 (High Availability) heute durch softwarebasierende Verfahren
(Clustering) gelöst. Zwei Rechnersysteme sind dabei mittels entsprechender Software so miteinander
verbunden, dass eine übergeordnete Instanz, der Cluster-Dienst, die Funktionstüchtigkeit beider
Cluster-Knoten überwacht. Fällt ein Knoten aus, gehen die Aufgaben des ausgefallenen Knoten auf den
"überlebenden" über. Dieser Prozess benötigt eine gewisse Failover-Zeit, während der die Anwender
nicht auf Applikation und Daten zugreifen können. Abhängig von der Komplexität der Applikation kann
ein Failover Minuten bis Stunden dauern (Wiederanlaufen von Diensten und Anwendungen, Rollback von
Datenbanktransaktionen etc.).

Neben der erforderlichen Wiederanlaufzeit im Störungsfall kennzeichnet die Cluster-Systeme eine
erhöhte Komplexität in der Verwaltung und im Betrieb. Um Applikationen abzusichern, sind zwei
physische Rechnersysteme mit jeweils einem eigenen Betriebssystem und ein logischer Rechner (der
Cluster-Dienst) zu verwalten. Dem Cluster-Dienst muss der Administrator mitteilen (in der Regel
durch ein individuell zu schreibendes Programm oder Skript), welche Aufgaben im Störungsfall wann
und in welcher Reihenfolge ausgeführt werden sollen. Dazu sind für zwei Systeme die entsprechenden
Updates zu verwalten, die erforderlichen Sicherheitsrichtlinien zu implementieren und zu
kontrollieren. Neben den hohen Verwaltungskosten existieren hier offensichtlich erhebliche "
manuelle" Fehlerquellen, die letztlich zu einer geringeren Gesamtverfügbarkeit eines Clusters
gegenüber einem Stand-alone-System führen können (Quelle: Standish Group 2002).

Das Konzept der Hardwareredundanz

Das US-Unternehmen Stratus Technologies positioniert seine Lösungen mit einem eigenen Konzept in
diesem Markt. Die fehlertoleranten Server des Herstellers stellen Systeme der Klassen AEC 3 und AEC
4 dar (keine Failover-Zeiten und keine Wiederanlaufzeiten), sollen jedoch die Komplexität und den
Verwaltungsmehraufwand von Cluster-Systemen vermeiden. Dazu ist die Technik für die
Systemverfügbarkeit komplett in die Hardware integriert, und zwar laut Stratus transparent für
Endanwender und Betriebssystem. Das Design der Systeme mit der Bezeichnung "Ftserver" folgt dabei
dem Gedanken, ein ausfallsicheres System auf Basis von Industriestandards zu entwickeln.

Die Produktfamilie eliminiert Single Points of Failure dadurch, dass alle Komponenten redundant
vorhanden sind. Hardwarefehlfunktionen einzelner Komponenten registriert die Überwachungslogik
automatisch und behandelt sie ohne Failover-Verzögerung oder gar Datenverlust. Durch die so
genannte Lockstep-Technik werden mehrere CPU-/Memory-Einheiten (jede für sich mit einem, zwei oder
vier Intel-Prozessoren) in einem synchronen Zustand gehalten. In jeder Einheit läuft also zum
gleichen Zeitpunkt exakt der gleiche Verarbeitungsvorgang ab. Die gesamte Fehlerüberwachung findet
ohne Beteiligung des Betriebssystems auf der Hardwareebene statt. Damit können marktübliche
Off-the-Shelf-Anwendungen oder mit hohem finanziellen Aufwand kundenspezifisch entwickelte
Anwendungen auf Basis von Standardbetriebssystemen (zum Beispiel Microsoft Windows Server 2003 oder
Linux) zum fehlertoleranten Einsatz kommen, und zwar ohne eine kostenintensive Anpassung der
Applikationen.

Des Weiteren stellt sich das Ftserver-System gegenüber dem Betriebssystem wie ein einzelner
Rechner dar (Single System Image). Dies bedeutet: Nur ein Betriebssystem ist zu installieren, die
Anwendungen müssen nur einfach aufgespielt werden, die Lizenzierung erfolgt nur für einen Rechner,
und auch der Verwaltungsaufwand ist signifikant geringer im Vergleich zur
Multinode-Cluster-Alternative, was wiederum zu erheblichen Kosteneinsparungen gegenüber einer
Cluster-Lösung führen kann.

Auf der I/O-Seite kommen redundante PCI-Busse (zwei oder vier) mit redundanten
Industriestandard-PCI-Adaptern (SCSI, Ethernet, Fibre Channel, SATA etc.) und redundanten
Endgeräten zum Einsatz. Für jede logische I/O-Transaktion stehen also mehrere Pfade zur Verfügung,
sodass sich im Fehlerfall jede Operation über einen alternativen Pfad wiederholen und abschließen
lässt.

Plattform: Windows Server 2003

Die Ftserver unterstützen Microsoft Windows Server 2003. Eine angepasste Linux-Version basierend
auf Kernel 2.6.x stellt das Haus für das vierte Quartal 2005 in Aussicht, für
Telekommunikationsanwendungen ist Linux als Stratus-eigene Distribution schon jetzt lieferbar.
Zusätzlich stellt Stratus Softwareergänzungen bereit, die die Verfügbarkeit des gesamten Systems
weiter steigern sollen. Dazu gehören unter anderem der Schutz der Software vor transienten
Hardwarefehlern, gehärtete Treiber, Tools zur zuverlässigen Analyse und Behebung von
Betriebssystemfehlern sowie Software zum Schutz von In-Memory-Daten.

Verfügbarkeit: 99,999 Prozent

Die Verfügbarkeit der Systeme liegt laut Stratus bei mehr als 99,999 Prozent, was im
24-mal-7-Betrieb eine durchschnittliche Nicht-Verfügbarkeit des Systems von 5,5 Minuten pro Jahr
bedeutet. Alle Stratus-Ergänzungen seien ohne Veränderung des Windows-Core-Operating-Codes
realisiert, sodass eine vollständige Application-Binary-Interface-(ABI-)Kompatibilität gegeben ist.
Damit nicht genug: Die Server wurden zudem dem gleichen umfangreichen
Windows-Hardware-Compatibility-Test (HCT) unterzogen, wie Systeme andere Hersteller. Somit sind
alle derzeitigen Systeme in der Microsoft Hardware Compatibility List (HCL) geführt.

Active Service Network als Support-Verbindung

Jedes produktive Ftserver-System überwacht sich ständig selbst. Falls etwa ein Hardwarefehler
auftritt, isoliert es diesen, und der Betrieb läuft auf der redundanten Komponente verzögerungsfrei
weiter. Das System erstellt einen Fehlerreport, der neben der genauen Bezeichnung des defekten
Teils weitere Informationen enthält. Dieser Report geht über eine sichere Verbindung, das globale
Active Service Network (Dial-up, VPN LAN), an das Support-Center des Herstellers.

Das Netzwerk bildet dabei eine weltweite Infrastruktur, die es den autorisierten
Support-Mitarbeitern ermöglicht, jedes kritische Problem remote zu jeder Tageszeit im betreffenden
System zu untersuchen, ohne dass ein Besuch vor Ort erforderlich wäre. In 95 Prozent aller Fälle
gelingt es den Technikern laut Stratus, die gemeldeten Probleme online zu lösen.

Ist zum Beispiel der Einbau eines Ersatzteils erforderlich, veranlasst der Ftserver automatisch
eine Bestellung des korrekten Teils. Austauschteile werden innerhalb des nächsten Arbeitstags
zugesandt. Alle diese Schritte sind ohne Störung des normalen Betriebs und ohne Zugriff auf die
Systemkonsole oder Einbeziehung des Systemadministrators möglich. Dies hat ganz praktische
Konsequenzen: Damit kann zum Beispiel der Einsatz von IT-Systemen in Zweigniederlassungen, die in
der Regel kein geschultes IT-Personal vor Ort haben, erheblich zuverlässiger gestaltet werden. Auch
das "Lights-out"-Management (remote außerhalb der Bürozeiten) und Out-of-Band-Management werden
durch entsprechende Boards (Virtual Technican Modules – VTM) vollständig unterstützt. Für das
Systemmanagement stehen Management-Tools zur Verfügung, die Stratus mit den Servern ausliefert
(siehe Kasten auf Seite 21) Für Netzwerkadministratoren dürfte vor allem der SNMP-Agent von
Interesse sein. Laut Stratus erweitert er die Funktionalität des Standardagenten von Microsoft
derart, dass Remote-Management-Tools wie HP Openview, CA Unicenter oder Tivoli Enterprise Console
in der Lage sind, auf Statusänderungen des Serversystems zu reagieren. Jede Änderung des Zustands
einer Komponente (broken, fixed, removed, inserted) löst dann einen SNMP-Trap aus, den das
Managementsystem erkennen kann.


Lesen Sie mehr zum Thema


Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu Lampertz GmbH & Co. KG

Matchmaker+