Hochverfügbarkeit
Gliederung Einführung Prozessor Kryptographischer Koprozessor Speicher Ein-/Ausgabe Weitere Hardware Parallel Sysplex Sysplex Failure Management Automatic Restart Manager Workload Balancing Software
Einführung Verfügbarkeit = Zeitanteil, zu dem das System seine Funktion wie spezifiziert erfüllt Hochverfügbarkeit ab 99,999% => 5 Min. Ausfallzeit/Jahr erreicht durch hohes Maß an Redundanz an allen möglichen Fehlerstellen Redundanz = Vorhandensein von Mitteln, die für die Funktionserfüllung nicht notwendig sind Nach außen hin kein Fehler sichtbar
Prozessor
Prozessor jede PU (Processor Unit) der zSeries 900 enthält doppelte Instruction/Execution Units, die simultan arbeiten Ergebnisse werden verglichen, bei Abweichung Instruction Retry bei weiterem Fehler Speichern des Zustands und Umschalten auf Reserve-PU falls keine freie PU vorhanden, wird der Zustand an eine andere aktive PU übergeben bei Fehler eines SAP und keiner Reserve-PU wird ein aktiver CP (Central Processor) als SAP eingeteilt SAP (System Assist Processor): I/O-Prozessor
Kryptographischer Koprozessor 2 Cryptographic Coprocessor Elements (CCE) pro System Betriebssystem wiederholt fehlgeschlagene Instruktion auf dem anderen CCE pro CCE ein Pfad zu einer primären PU sowie zu alternativer PU (immer nur 1 Pfad aktiv) Alternativ-PUs werden als letztes als Reserve- PUs benutzt
Speicher L1 Cache Parity protected L1 und L2: Löschen/Austauschen von Zeilen L2 und Memory: Error Correcting Codes (Single Error Correction/Double Error Detection) bei Parity/ECC-Fehler neuer Versuch, danach löschen der Cache-Zeile ECC auch für Daten- und Status/Kommando- Busse Speicherkarten sind mit Reservechips ausgerüstet Durch memory protect keys kann kein anderer Prozess (insbesondere kein fehlerhafter) auf Daten eines anderen Prozesses zugreifen => Isolation
Ein-/Ausgabe CPU Haupt- speicher Channel Subsystem Control Unit Channel Path Control Unit Control Unit Subchannel E/A E/A E/A E/A
Ein-/Ausgabe mehrere Channel Paths zur gleichen Control Unit ein E/A-Gerät kann mit mehr als einer Kontrolleinheit verbunden sein Verbindung einer CU mit mehr als einem System im Parallel Sysplex möglich dynamische I/O-Konfiguration ESCON 16-Port I/O-Card beinhaltet 1 Reserve- Port bei Versagen eines MBA partieller Neustart ohne entsprechende I/O-Verbindungen möglich MBA=Memory-Bus-Adapter
Weitere Hardware zur höheren Verfügbarkeit redundante Stromzufuhr, interne Batterie verfügbar redundante Kühlsysteme je System zwei External Time Reference-Karten und redundante Pfade zu den Clustern RAID (Redundant Array of Inexpensive Disks): verschiedene Level der Redundanz für Plattenspeicher (Hamming-Code, Parity) Disk Mirroring
Cluster-Typen Cluster = lose gekoppelte Anordnung mehrerer SMPs (Knoten) High Availability Cluster: Heartbeat-Monitoring- Prozess überträgt die Verarbeitung bei Ausfall des primären Servers auf einen Backup-Server, der sonst beschäftigungslos ist Parallel Cluster: manuelle Aufteilung der anfallenden Arbeit auf die Knoten Shared Cluster: WLM verteilt Arbeit dynamisch auf die einzelnen Knoten High Av.: cold standby(standby server übernimmt IP-Adresse sowie Kontrolle über Shared disks), Shared Cluster: mutual-takeover-Umgebung: aktives System übernimmt Prozesse vom fehlerhaften System Variationen: 3 Server, davon 1 Backup
Unterscheidung nach Zugriff auf Plattenspeicher Shared Nothing: nur ein Knoten kann auf einen bestimmten Plattenspeicher zugreifen => statische Aufteilung des Workloads Shared Disk: jeder Knoten kann auf alle Plattenspeicher zugreifen =>Datenkohärenzsteuerung nötig Parallel Sysplex implementiert Shared Disk(Data) Anstatt Datenkohärenzsteuerung besser Lock-Management Software?;shared Data zur höheren Skalierbarkeit
Parallel Sysplex redundante CF, ETR; Sysplex Timer wichtig für gleiche Zeiten bei Log-Recovery
Sysplex Failure Management integriert in OS/390 erlaubt Definition einer sysplex-weiten Policy Policy legt Fehlererkennungsintervalle und Wiederherstellungsaktionen für den Ausfall eines Systems im Sysplex fest Fehlerarten: Ausfall der Signalverbindung zwischen Systemen, Status Update Missing Condition Status Update Missing Condition: System erneuert nicht seinen Status innerhalb eines bestimmten Zeitintervalls =>z.B.System-Isolation Erklärung System-Isolation!
Automatic Restart Manager Teil von OS/390 ausgefallene Anwendungen können automatisch auf gesunden Systemen im Parallel Sysplex neu gestartet werden oder auf dem selben System, falls dies nicht ausgefallen ist kennt Zustände aller Prozesse auf allen Systemen, bemerkt sofort alle Systemausfälle, benutzt WLM um geeignetes System für Restart zu finden Prozesse können in Restart Groups zusammengefasst werden Zu sagen: je schneller Restart geht, desto kürzer ist die Ausfallzeit
Reihenfolge der Restart-Aktivitäten kann festgelegt werden in hot-standby-Umgebungen (Backup-Server) kann der Restart des ausgefallenen Servers unterdrückt werden Prozesse registrieren sich zum Start beim ARM, melden sich beim Herunterfahren ab
Workload Balancing nötig, um die eingehende Arbeit im Sysplex zu verteilen oder im Fehlerfall umzuleiten dabei muss der ganze Sysplex nach außen eine einzige Identität haben (Host Name oder IP- Adresse) 2 Kategorien von Lastverteilungslösungen: DNS mapping solutions, Connection dispatching
Domain Name Server mapping solutions dynamisches Wechseln der DNS-Einträge, um einem Hostnamen versch. IPs (und damit Server) zuzuordnen Round-Robin: DNS kreist durch Liste mit IP- Adressen => Workload auf Server unbetrachtet Connection Optimization: DNS betrachtet Arbeitslast der einzelnen Server, Messergebnisse vom Workload Manager Nachteil: Auswahl des Servers nur bei Verbindungsaufbau
Connection dispatching solutions Client hat Verbindung mit Verteilerknoten, dieser leitet die Daten an entspr. Server weiter, der dann direkt dem Kunden antworten kann alle Systeme im Cluster liefern Informationen über ihre aktuelle Arbeitslast an den Distribution Manager Backup-Verteilerknoten überwacht Zustand des primären Verteilers und übernimmt die Arbeit bei Ausfall Verteilerknoten in PC, im Sysplex oder im Router
Softwarefeatures MQSeries, DB2 usw. benutzen ARM MQSeries: automatic rerouting of messages if target machine is unavailable Fehlerbehandlungsmaßnahmen der Datenbanksysteme Zeit des Neustarts eines Queue-Managers hängt von der Menge der Recovery-Aufgaben ab, MQSeries benutzt ARM (bei OS/390)