Viele sich ergänzende Wege führen zur Hochverfügbarkeit. Zwei von ihnen sind Virtualisierung und Automatisierung. Allen Wegen ist gemein, dass sie nicht den Charakter von Durststrecken haben, sondern dass bereits jede Teilstrecke, sinnvoll bemessen, technische und wirtschaftliche Nutzeffekte mit sich bringt.
"Always on" heißt die Forderung und bedeutet, dass Netze, Datenhaltung, Server, Betriebssysteme,
Middleware und Anwendungssoftware spontan nutzbar und ständig verfügbar sein müssen. Ziel der
Hochverfügbarkeit ist deshalb, geplante und ungeplante Stillstandszeiten für Anwendungen auf ein
Minimum zu reduzieren. Anwendungen sind auch dann noch am Laufen zu halten oder möglichst schnell
wieder zum Laufen zu bringen, wenn die Standardinfrastruktur wegen Wartung oder Upgrades
abgeschaltet oder nach einem Ausfall repariert werden muss. Ein Ignorieren dieser Erfordernisse –
etwa unter Hinweis darauf, Ausfallsicherheit sei letztlich ohnehin nicht erreichbar – kann im
schlimmsten Fall desaströse Folgen für ein Unternehmen haben. Aber auch wenn ein solcher Worst Case
nicht eintritt, geht schon jede einzelne Stunde Ausfall auf Kosten der Wirtschaftlichkeit und der
Reputation eines Unternehmens. Klar ist, dass 100-prozentige Ausfallsicherheit unerreichbar bleibt.
Zudem ist es in fast allen Fällen erheblich teurer, eine Verfügbarkeit von 99,99 Prozent auf 99,999
Prozent anzuheben, als eine von 99,9 auf 99,99 Prozent – und das obwohl die Ausfallzeit pro Jahr im
zweiten, günstigeren Fall um fast acht Stunden, im ersten dagegen nicht einmal um eine Stunde
sinkt.
Das Ziel der Hochverfügbarkeit kann ein Administrator auf verschiedenen Wegen angehen. Dabei
bietet jeder Ansatz für sich bereits lohnende Zwischenstationen auf dem Weg zum Ziel. Eine
Möglichkeit ist der Einsatz von Fehlerdetektoren und -generatoren, die die bestehenden IT-Systeme
als gegeben hinnehmen und "einfach" gegen Fehler absichern. Einen Schritt weiter geht das Verfahren
der Konsolidierung, das bei der Neustrukturierung der IT-Landschaft ansetzt: Die Verringerung der
Anzahl der eingesetzten Server, Speicher und Anwendungen gewährleistet eine bessere Steuerbarkeit,
Auslastung und Wirtschaftlichkeit des Gesamtsystems. Auch die Standardisierung ist der
Hochverfügbarkeit förderlich, trägt doch das Abschaffen beziehungsweise Überbrücken unnötiger
Komplexitäten und Inkompatibilitäten zu einem fehlerfreieren Systembetrieb bei.
Dieser Beitrag befasst sich mit zwei weiteren Ansätzen, die eng zusammengehören: Virtualisierung
und Automatisierung: Die Zusammenfassung und automatische Zuteilung der IT-Ressourcen sorgt für
eine optimale Auslastung und steigert so – neben anderem – die Verfügbarkeit der Systeme.
Grundprinzip der Virtualisierung ist die Trennung von Hardware, Software und Daten. Dadurch wird
die Hardware disponibel (Pool-fähig), sodass insgesamt auch weniger Hardware vorgehalten werden
muss. Denn heute existieren in den Unternehmen häufig so genannte Silo-Architekturen. Das heißt,
jeder Applikation werden ein eigener Server, eine eigene Datenbank und eigene Speichersysteme
zugewiesen. Und jeder Silo hat aus Gründen der Ausfallsicherheit ein Maximum an Ressourcen zur
Verfügung, um auftretende Spitzenbelastungen abzufangen. Die Virtualisierung löst die Applikationen
und Daten von den dedizierten Systemen und sorgt damit für eine bessere Auslastung und zugleich für
eine höhere Verfügbarkeit, da jede Ressource im Idealfall für jede Anwendung bereit steht.
Um diese Wirkung zu erzielen, stehen vier Basistechnologien zur Verfügung: Die zentrale
Bereitstellung von Software speichert Betriebssystem und Applikationssoftware auf einer zentralen
Instanz. Bei höherem Leistungsbedarf werden sie auf zusätzlichen Servern bereitgestellt. Dies
erfolgt entweder durch das Laden auf das Zielsystem oder das Booten von der zentralen
Speichereinheit. Die dynamische Partitionierung unterteilt einen Server mithilfe von
Hardwarefunktionen in virtuelle Server (Partitionen). Die Größe der Partitionen lässt sich online
ändern. Bei virtuellen Maschinen laufen verschiedene Betriebssysteminstanzen auf einem realen
System. Dabei kann es sich um verschiedene Versionen, aber auch um unterschiedliche Betriebssysteme
handeln. Die dynamische Arbeitslastverteilung verteilt die Arbeitslast von Diensten automatisch auf
verschiedene Server.
Erstmals umgesetzt wurde die Idee der Servervirtualisierung bei den Mainframes. Die anfangs rein
physikalisch erfolgende Partitionierung erlaubte es, bestimmten Anwendungen Prozessoren,
Arbeitsspeicher und I/O-Kanäle zuzuordnen. Als diese Zuteilung dann softwaretechnisch möglich
wurde, konnte ein physikalischer Server in viele logische Server aufgeteilt werden. Und umgekehrt:
Aus vielen physikalischen (auch verstreut installierten) Servern wurde im Bedarfsfall ein logischer
Server. Entscheidend dabei – damals wie heute, wo längst nicht mehr nur die Mainframes
virtualisierbar sind – ist die systemübergreifende Administration. Sie ermöglicht es erst,
Prozessoren oder deren Logikbereiche, interne Festplatten, Systembusse, Memory und I/O-Kanäle in
Pools zu bündeln und, neu kombiniert und optimiert, für Anwendungen bereitzustellen.
Das Zuordnen der Ressourcen kann festen Zeitvorgaben folgen und beispielsweise die monatlichen
Lohn- und Gehaltsabrechnungen einplanen; es kann aber auch spontan auf Ereignisse reagieren, die
zusätzliche Ressourcen erfordern wie etwa das Erreichen einer definierten
Service-Level-Agreement-(SLA-)Untergrenze.
Wirklich zuverlässig funktionieren kann eine derart virtuell angelegte IT-Landschaft nur, wenn
das Systemmanagement die vielen, oft sehr kurzfristigen Wechsel in der Belegung der Ressourcen
automatisiert durch das Anstoßen von Prozessen, Hinzuschalten von Rechenleistung etc. steuert.
Allerdings wird der Beitrag, den Automatisierung zur Hochverfügbarkeit leisten kann, in der
Unternehmens-IT noch nicht voll ausgeschöpft. Skripts und Batch-Jobs, die bestimmte manuelle
Vorgehensweisen zusammenfassen und die bisher nur in größeren Rechenzentren zum Einsatz kommen,
sind nur ein erster kleiner Schritt. Erst im Zusammenhang mit einem Workload-Manager kommen diese
Prozesse zu ihrer richtigen Entfaltung. Mit diesem Tool lässt sich jederzeit der Istzustand aller
Systemressourcen kontrollieren. Treten Laständerungen auf, greifen vordefinierte Regelwerke ein,
die zum Beispiel zusätzliche (physikalische und/oder logische) Komponenten aktivieren und
anschließend die entsprechende Migration von Anwendungen veranlassen, um wieder den gewünschten
Optimalzustand herzustellen. Dies funktioniert sogar dann, wenn Hardware überraschend ausfällt.
Während im traditionellen Rechenzentrum die Regeln für jede Anwendung einzeln aufgestellt werden
müssen, erlaubt die Virtualisierung die Definition zentraler Regelwerke über alle Applikationen
hinweg.
Ein gutes Administrations-Tool reagiert aber nicht nur auf Ereignisse aller Art, es warnt auch
automatisch vor drohenden Problemen und bietet detaillierte Analysemöglichkeiten auf mehreren
Ebenen, damit der Systemverantwortliche im Bedarfsfall eine beliebig tief gehende Untersuchung und
Auswertung des Problems vornehmen kann. Verglichen mit einer manuellen Steuerung sind
Automatisierungslösungen weit weniger anfällig für Fehler. Da sie sich zudem schnell an veränderte
Lastprofile anpassen können, leisten sie insgesamt einen wichtigen Beitrag zur Verfügbarkeit der
eingesetzten Systeme.
Bei der Speichervirtualisierung werden logische, von den physikalischen Gegebenheiten
unabhängige Speicherbereiche eingerichtet. Die Aufhebung des direkten Kontakts zwischen Server- und
Speichersystemen erschließt die Möglichkeit, dem Server die Gesamtheit der in einem SAN
befindlichen Speicherressourcen als (virtuelle) Festplatte erscheinen zu lassen. Durch diese
Trennung der logischen von der physikalischen Schicht brauchen sich die angeschlossenen Server
nicht mehr um die Eigenheiten der verschiedenen physikalischen Storage-Geräte und -Medien zu
kümmern. Für die selbstoptimierende Verwaltung der physikalischen Speicher sorgt eine interne
Eigenintelligenz im virtualisierten System.
Virtuelle Tape Appliances zum Beispiel ermöglichen mit einer relativ kleinen Anzahl von
physikalischen Speichermedien allen angeschlossenen Anwendungen die benötigte Laufwerkskapazität
virtuell zur Verfügung zu stellen. Sie entkoppeln die realen Bandarchive von den Servern und können
sich so Veränderungen in der Systemumgebung problemlos anpassen, da keine Abhängigkeiten mehr zu
Treibern, Host-Bus-Adaptern, Firmware-Ständen und Betriebssystemversionen bestehen. Während die
Anwendung beispielsweise weiterhin davon ausgeht, mit normalen Magnetbandkassetten (MBK)-Laufwerken
zu arbeiten, erfolgt im virtuellen Bandarchiv eine Zwischenspeicherung auf Magnetplatte; erst nach
ihrer vollständigen Übertragung auf das virtuelle Volume werden die Daten physikalisch auf einer
MBK abgelegt. Um die Datensicherheit während dieser Zeit zu garantieren, kommt als interner
Speicher für die virtuellen Volumes ein leistungsfähiges RAID (Redundant Array of Independent
Disks)-System zum Einsatz.
Die Trennung der logischen von der physikalischen Sicht ermöglicht sowohl eine höhere
Verarbeitungsgeschwindigkeit beim Zugriff auf die Speicher als auch eine optimale Ausnutzung der
vorhandenen Kassettenkapazität. Gegenüber herkömmlichen Archiven ergibt sich eine erhebliche
Performance-Verbesserung bei gleichzeitig verringertem Ressourcenbedarf. Darüber hinaus lassen sich
die Speicher dynamisch erweitern und defekte Laufwerke im laufenden Betrieb austauschen, ein
wichtiger Beitrag zum Thema Hochverfügbarkeit.
Durch Virtualisierung und Automatisierung lässt sich die Gesamtverfügbarkeit der Systeme
wesentlich erhöhen. Gleichzeitig tragen diese Technologien zu einer dauerhaften Effizienz und
Flexibilität der betrieblichen IT bei. Sie sind damit ein wesentlicher Baustein in einer
dynamischen IT-Infrastruktur, die ebenso hochverfügbar wie wirtschaftlich ist und sich gleichzeitig
flexibel an aktuelle Anforderungen anpassen lässt.