NonStop
Das NonStop-Verfahren bezeichnet besonders fehlertolerante Computersysteme mit hoher Verfügbarkeit, die im Bereich unternehmenskritischer, transaktionsintensiver Anwendungen verwendet werden.[1][2] Sie wurde ab 1974 von Tandem Computers entwickelt und 1976 mit dem System Tandem NonStop I erstmals auf den Markt gebracht. Seit Tandem 1997 zunächst von Compaq und dann 2002 von Hewlett-Packard übernommen wurde, sind die Systeme heute unter der Marke HP Integrity NonStop Server ein Teil der HP Integrity Server-Familie.
NonStop-Systeme sind grundsätzlich Mehrprozessorsysteme, um im Falle von Hardware- oder Softwarefehlern ohne Ausfall weiterarbeiten zu können. Mit den 2008 eingeführten Blade Systemen sind auch Mehrkernprozessoren (Doppelkern und Vierkern) verfügbar.
Geschichte und Technische Entwicklung
Gründung
Tandem Computers wurde 1974 von James Treybig gegründet. Er war Mitarbeiter von HP und arbeitete an der HP-3000-Serie. Früh erkannte er den Bedarf für fehlertolerante OLTP (Online-Transaktionsverarbeitung) Systeme. Nach einem Wechsel zu Kleiner Perkins Caufield & Byers arbeitet er zwei Jahre an seiner Tandem-Idee, bevor er die Firma ins Leben rief. Die Hälfte der ersten 18 Mitarbeiter waren frühere Mitarbeiter von HP.[3]
NonStop I
Das erste System war die Tandem/16 oder T/16, später umbenannt in NonStop I.[4] 1975 wurde das Hardwaredesign vollendet und 1976 das erste System ausgeliefert. Das System bestand aus 2 bis 16 CPUs. Jede CPU hatte einen eigenen unshared Memory, einen eigenen I/O Prozessor, einen eigenen Bus; darüber hinaus gab es eine redundante Verbindung zwischen allen CPU über eine übergreifende Backplane, genannt Dynabus. Jeder Disk- und Netzwerkcontroller hatte Verbindung zu zwei CPUs und I/O-Controllern. Jede Festplatte war gespiegelt (RAID 1) und hatte physisch getrennte Verbindungen zu zwei Disk-Controllern. Beim Ausfall einer Festplatte konnte auf der Spiegelplatte weitergearbeitet werden. Beim Ausfall einer CPU, eines Controllers oder eines Bus war die Festplatte immer noch über alternative Wege erreichbar. Auch die Stromversorgung war innerhalb des Systems redundant ausgelegt. Die Systemkonfiguration wurde in sogenannten Mackie-Diagrammen dokumentiert, benannt nach dem Tandem-Mitarbeiter David Mackie.[5] Kein Bauteil war als reiner Ersatz konstruiert, sondern alle wurden auch im Regelbetrieb genutzt.
Die T/16 CPU hatte ein proprietäres Design, eng verwandt mit der HP3000. Jede CPU bestand aus zwei Boards mit TTL Logic und SRAMs und arbeitete mit ca. 0,7 MIPS.[6]
Die erste Version der T/16 hatte nur eine Programmiersprache: TAL, für Tandem Application Language. TAL war eine effektive, maschinenabhängige Systemprogrammiersprache (für Betriebssystem, Compiler etc.), die aber auch für – nicht portable – Anwendungen genutzt werden konnte. Sie war abgeleitet aus der HP3000 SPL language. Von der Semantik her gab es Ähnlichkeiten zu C, während die Syntax auf Burroughs ALGOL basierte. Darauf folgende Veröffentlichungen unterstützten Cobol74, Fortran, und Mumps.
Die Tandem-Systeme hatten ein proprietäres Betriebssystem, das sich deutlich von Unix oder HP3000 MPE unterschied. Die erste Bezeichnung T/TOS (Tandem Transactional Operating System) wurde wegen seiner Fähigkeit, Datenbanken vor Hardware- oder Softwareausfällen zu schützen, bald in Guardian umbenannt, was so viel wie ‚Wächter‘ bedeutet. Im Gegensatz zu allen anderen kommerziellen Betriebssystemen war Guardian ein nachrichtenbasiertes Betriebssystem, in dem alle Prozesse miteinander kommunizieren können (ohne die Nutzung von Shared Memory), unabhängig davon, in welcher CPU die Prozesse laufen.[7][8] Diese Herangehensweise ermöglicht Cluster von prinzipiell unbegrenzt vielen Einzelrechnern, was zu dieser Zeit revolutionär war.
Alle wichtigen System- und Anwendungsprozesse waren als Master/Slave-Paare ausgelegt, die in verschiedenen CPUs liefen. Der Slave-Prozess bekam periodisch einen Speicherauszug vom Speicher des Master-Prozesses (Checkpointing) und konnte übernehmen, wenn der Master-Prozess in Probleme kam. Das ermöglichte der Anwendung, Fehler in einer CPU oder in einem Controller ohne Datenverlust zu überstehen. Das Checkpointing zwischen Primär- und Backup-Prozess erzeugte zwar einen gewissen Overhead, aber bei weitem nicht 100 % wie in anderen Systemen.
NonStop II
Im Jahr 1981 wurden die T/16 CPUs durch die NonStop II ersetzt. Der Hauptunterschied zur T/16 war die Unterstützung der 32-Bit-Adressierung durch das vom Benutzer umschaltbare „extended data segment“. Das ermöglichte die nächsten zehn Jahre der Softwareweiterentwicklung und war ein großer Vorteil gegenüber T/16 oder HP3000. Allerdings hatten die sichtbaren Register weiterhin 16-Bit Breite, was zusätzliche Instruktionen im Vergleich zu 32-Bit Systemen erforderlich machte. Alle folgenden Systeme der TNS-Architektur waren durch diesen ineffizienten Befehlssatz beeinträchtigt. Auch die NonStop II CPU hatte keinen größeren internen Datenbus, was zusätzlichen Mikrocode für 32-Bit-Adressen erforderlich machte. Eine NonStop II CPU hatte 3 Boards, mit ähnlichen Chips und Design wie die T/16, außerdem wurde der Hauptspeicher durch batteriegepufferten DRAM-Speicher ersetzt.
NonStop TXP
Im Jahr 1983 war die NonStop TXP CPU die erste Neuimplementierung der TNS Befehlssatzarchitektur.[9][10][11] Sie bestand aus Standard TTL-Chips und Programmable-Array-Logic-Chips, mit 4 Boards pro CPU Modul. Zum ersten Mal wurde Cache Memory genutzt. Die CPU hatte eine direktere Implementierung der 32-Bit-Adressierung, aber immer noch einen 16-Bit Datenbus. Ein erweiterter Mikrocode erlaubte eine Reduzierung der Prozessor-Taktzyklen pro Instruktion; die Geschwindigkeit der CPU erhöhte sich auf 2,0 MIPS. Rack, Controller, Backplane und Bus blieben gleich. Der Dynabus und I/O Bus wurden bereits in der T/16 überarbeitet.
Bis zu 14 TXP und NonStop II Systeme konnten nun mittels FOX (Fiber Optics Extension – ein fehlertoleranter Glasfaser-Bus) miteinander verbunden werden; ein Cluster aus Clustern mit insgesamt 224 CPUs. Dies ermöglichte weitere Skalierung, um auch größte Mainframe-Applikationen zu übernehmen.[12]
NonStop VLX
Im Jahr 1986 führte Tandem die dritte CPU-Generation ein, die NonStop VLX.[13] Sie hatte 32-Bit-Datenpfade, einen erweiterten Mikrocode, 12 MHz Taktfrequenz und konnte eine Anweisung pro Mikrozyklus ausführen. Sie bestand aus 3 Boards ECL Gate-Array-Chips (mit TTL-Kontaktbelegung) sowie einen erweiterten Dynabus mit einer erhöhten Geschwindigkeit von 20 MByte/s pro Link, 40 MByte/s insgesamt. FOX II erhöhte die physikalische Entfernung von TNS-Clustern auf 4 km, zu dieser Zeit ein technisches Alleinstellungsmerkmal.
Tandem unterstützte zu Beginn nur hierarchische, nicht jedoch relationale Datenbanken mittels des Enscribe-Dateisystems. Dieses wurde später zu einer relationalen Datenbank erweitert, genannt ENCOMPASS.[14] 1986 führte Tandem die erste fehlertolerante SQL-Datenbank ein und nannte sie NonStop SQL.[15] 1989 wurden knotenübergreifende Transaktionen eingeführt, ein Feature, das einige Zeit lang einzigartig war.
NonStop CLX
Im Jahr 1987 wurde NonStop CLX eingeführt, ein fehlertolerantes System für den Niedrigpreissektor.[16][17] Die initiale Performance war vergleichbar mit der TXP; spätere Versionen waren ungefähr 20 % langsamer als die VLX. Das relativ kleine Gehäuse passte in jeden „Kopierraum“. Es befand sich eine CLX CPU auf dem Board, die sechs „compiled silicon“ ASIC CMOS Chips enthielt. Die CPU war zweifach vorhanden, und es fand ein Lock-Stepping statt, um maximale Fehlererkennung zu ermöglichen. Die Pinbelegung war Hauptbegrenzung dieser Chiptechnologie. Mikrocode, Cache und TLB waren extern zur CPU und hatten einen Bus und eine SRAM-Speicherbank. Daher brauchte die CLX mindestens zwei Taktzyklen für eine Instruktion.
NonStop Cyclone
Im Jahr 1989 wurde die NonStop Cyclone eingeführt, ein schnelles, aber teures System für den oberen Bereich des Großrechnermarktes.[18][19] Jede CPU hatte 3 Boards mit ECL Gate-Array Chips und Speicherboards. Obwohl sie mikroprogrammiert war, war die CPU superskalar ausgelegt und schaffte zwei Instruktionen pro Cache-Zyklus. Dies wurde durch separate Mikrocode-Routinen für jedes gemeinsame Paar von Instruktionen erreicht.[20] Dieses gemeinsame Paar von Instruktionen bewältigte die gleiche Arbeit wie Einzelinstruktionen in normalen 32-Bit-Systemen. Cyclone Prozessoren waren in Viererpaketen verbaut, die untereinander mit einer Glasfaserversion des Dynabus verbunden waren.
Die Deutsche Bundesbahn verwendete ein solches System als zentralen Server für das System Kurs 90.
TNS/R NonStop Migration nach MIPS
Als Tandem 1974 gegründet wurde, musste jeder Computerhersteller seine CPUs (mit einem proprietären Befehlssatz und eigenen Compilern etc.) selbst entwerfen und bauen. Nach dem auch heute noch gültigen Mooreschen Gesetz passen durch die fortschreitende Halbleiterentwicklung von Jahr zu Jahr mehr Schaltkreise in einen Chip, wodurch diese in kontinuierlich exponentiell wachsender Größenordnung schneller (und damit auch billiger) werden. Wegen der schnellen Produktzyklen und des hohen Innovationstempos wurde es für die Computerindustrie immer teurer, eigene Chips zu entwerfen und zu bauen. Ungefähr ab 1991 konnten nur noch die größten Computerhersteller eigene konkurrenzfähige Chips herstellen. Tandem war nicht groß genug für diesen Prozess und musste daher seine NonStop-Produktlinie auf Chips umstellen, die von anderen produziert wurden.
Tandem gründete eine Partnerschaft mit MIPS und verwendete deren R3000 und folgende Chipsätze. NonStop Guardian Systeme, die den MIPS-Befehlssatz verwendeten, wurden als TNS/R Maschinen bezeichnet.
NonStop CLX/R
1991 stellte Tandem die Cyclone/R, auch bekannt als CLX/R, vor. Dieses kostengünstige System basierten auf CLX-Komponenten, benutzte aber R3000 Mikroprozessoren anstelle der langsameren CLX-Prozessorboards. Um das System schnell auf den Markt zu bringen, wurde zu Anfang keine native MIPS Software ausgeliefert. Alle Programme, auch das Betriebssystem NSK und die SQL-Datenbank, wurden zu TNS Stack Maschinencode kompiliert. Der entstandene Objektcode wurde dann während der Kernel-Installationsphase für den MIPS Befehlssatz übersetzt. Das dazu verwendete Tool war der Accelerator.[21] Aber die Anwendungsprogramme konnten mittels eines TNS Code Interpreters auch ohne Übersetzung in den MIPS Befehlssatz durchgeführt werden. Diese Migrationstechnik war sehr erfolgreich und wird bis heute eingesetzt. Um Prozessorfehler auszuschließen, liefen jeweils zwei Prozessoren im Lock-Stepping.
NonStop Himalaya K-Serie
Im Jahr 1993 brachte Tandem die NonStop Himalaya K-Serie mit schnelleren MIPS R4400 und einem Native Mode Kernel auf den Markt.
1994 wurde der NonStop-Kernel mit einer Unix-ähnlichen POSIX-Umgebung namens Open System Services (OSS) erweitert.
NonStop Himalaya S-Serie
Im Jahr 1997 führte Tandem die NonStop Himalaya S-Serie ein; ihre neue Systemarchitektur basierte auf ServerNet-Verbindungen. Das viele schnellere ServerNet ersetzte damit den Dynabus, FOX und den I/O Bus. Tandem entwarf ServerNet für die eigene Verwendung, veröffentlichte aber das Konzept gleichzeitig, so dass es sich schließlich zum InfiniBand Industriestandard entwickelte.
Alle S-Serie Systeme nutzten MIPS Prozessoren, den R4400, R10000, R12000, und R14000.
Durch das sinkende Geschäft des damaligen MIPS-Produzenten Silicon Graphics und dem Erfolg von Intels Pentium Pro wurden keine neuen Investitionen in die MIPS Prozessorreihe mehr getätigt, so dass sich Tandem wiederum nach einem neuen konkurrenzfähigen Prozessor umsehen musste.
Akquisition durch Compaq, versuchte Migration zu Alpha
Jimmy Treybig blieb bis 1996 CEO und dynamisches Zentrum des Unternehmens, das er gegründet hatte.
Compaqs x86-basierende Serverlinie war einer der ersten Anwender der ServerNet/Infiniband Technologie. Im Jahr 1997 übernahm Compaq die Firma Tandem Computers, um den eigenen Unternehmensschwerpunkt auf PCs auszubalancieren. Compaq übernahm ebenso Digital Equipment Corporation und deren DEC Alpha RISC Server. Nach zwischenzeitlichen Überlegungen, deren Alpha-Prozessoren zu verwenden, entschied man sich letztendlich dafür, auf Intel Itanium 2 zu migrieren.
Akquisition durch Hewlett Packard, TNS/E Migration zu Itanium
2002 wurde Compaq mit HP verschmolzen. In gewisser Weise kam Tandem über den Weg von einem von HP inspirierten Startup mit anschließender Phase als Konkurrent von HP zurück zu seinen Wurzeln als eigene Serverlinie bei HP.
NonStop Integrity
Die Migration der NonStop-Produktlinie von MIPS Prozessoren zu Itanium Prozessoren wurde 2005 abgeschlossen und als 'HP Integrity NonStop Server' vermarktet.
Das Systemdesign unterstützt Lock-Stepping in Form von Dual (DMR) und Triple Mode Redundanz (TMR), mit entweder zwei oder drei physikalischen Prozessoren pro logischem Itanium Prozessor. Die TMR Version wird an Kunden mit höchsten Verfügbarkeitsanforderungen ausgeliefert. Diese Architektur trägt den Namen NSAA, NonStop Advanced Architecture.[22]
NonStop Blade
Im Jahr 2008 führte HP die NonStop Multicore Architecture (NSMA) ein.[23] Durch die Verwendung von Standard-Hardware konnten die Kosten weiter gesenkt werden. Die HP NonStop Blade Systeme arbeiten mit Mehrkernprozessoren (Zweikern und Vierkern).
Java, Open Source und Eclipse
HP portiert zunehmend Open-Source-Software auf die NonStop-Plattform und bietet sie als Produkt an, wie z. B. SOAP[24], JavaServer Pages (Tomcat + Pathway)[25] oder JBoss (ab 2013). Zudem sind diverse Open-Source-Java-Frameworks (MyFaces, Axis2/Java, Spring, Hibernate = SASH.[26]) zertifiziert worden, um auf der Plattform zusammen mit der HP NonStop Development Environment for Eclipse[27] Java-Projekte[28] implementieren zu können.
Migration zu x86 / Xeon Technologie
Im November 2013 hat HP angekündigt, die NonStop-Technologie auf die x86-Prozessorarchitektur zu erweitern.[29] Seit April 2015 ist sie als NonStop X NS3 X1 und als NonStop X NS7 X1 verfügbar.[30]
NonStop in der Cloud
Seit dem Frühjahr 2017 bietet HPE eine Virtualized NonStop an, die in einer Cloud betrieben werden kann.[31]
Usergruppen
- GTUG (German NonStop User Group)
- ITUG (International NonStop User Group) jetzt Teil der Connect (Users Group)
Weblinks
- HPE NonStop Systems – die Hauptseite der HPE Integrity NonStop Server
- Tandem Technical Reports – a page at HP with a number of Tandem white papers
- Tandem Systems Review PDFs 1983–1994
- GTUG German NonStop User Group
- HP Connect Community
- Open Source für HP NonStop
Einzelnachweise
- Thomas Pelkmann,: Ausfallsicherheit im Rechenzentrum: HP-NonStop-Systeme im Mission-Critical-Einsatz. In: Computerwoche. 28. April 2011, abgerufen am 6. November 2011.
- Klaus Manhart: HP NonStop Server: Mainframe-Zuverlässigkeit auf Standard-Architektur. In: Computerwoche. 10. Dezember 2010, abgerufen am 6. November 2011.
- Stephen Shankland: Top-end server group comes home to HP. 13. Juni 2002, abgerufen am 6. November 2011 (englisch).
- James A. Katzman, "The Tandem 16: A Fault-tolerant Computing System", Proc. 11th Hawaii Conf. on System Sciences(11th HICSS'78), IEEE Computer Society, Honolulu, Hawaii, 1978, pp. 85–102. Reproduced in D. P. Siewiorek, C. G. Bell, A. Newell "Computer Structures: Principles and Examples," McGraw-Hill, 1982, pp. 470–480, this is chapter 29.
- http://www.clusters4all.com/home/history.html
- Tandem Technical Report TR-86.2 (PDF; 975 kB), Fault Tolerance in Tandem Computer Systems, Joel Bartlett, Jim Gray, Bob Host
- A NonStop Operating System, Joel F. Bartlett, Eleventh Hawaii International Conference on System Sciences, Jan 1978, pp 103–117.
- Tandem Technical Report TR-81.4, June 1981 (PDF; 658 kB), A NonStop Kernel, Joel F. Barlett
- The High-Performance NonStop TXP Processor, http://www.hpl.hp.com/hpjournal/tandem/vol2num1win84.pdf
- The NonStop TXP Processor: A Powerful Design for Online Translation Processing, http://www.hpl.hp.com/hpjournal/tandem/vol2num3sum84.pdf
- New System manages hundreds of transactions per second, Electronics magazine, April 1984, reprinted as 'A Technical Overview of the Tandem TXP Processor', Robert Horst and Sandy Metz, Tandem Technical Report TR-84.1
- Tandem Technical Report TR-85.3 (PDF; 580 kB), The Hardware Architecture and Linear Expansion of Tandem NonStop Systems, Robert Horst and Tim Chou
- NonStop VLX Hardware Design, Tandem Systems Review Dec 1986, http://www.hpl.hp.com/hpjournal/tandem/vol2num3dec86.pdf
- Tandem Technical Report TR-81.5 (PDF; 930 kB), Relational Data Base Management for On-Line Transaction Processing, Stewart A. Schuster
- Tandem Technical Report TR-87.4 (PDF; 2,0 MB), NonStop SQL, A Distributed, High-Performance, High-Availability Implementation of SQL
- A Highly Integrated, Fault-Tolerant Minicomputer: The NonStop CLX, http://www.hpl.hp.com/techreports/tandem/TR-87.5.pdf
- NonStop CLX: Optimized for Distributed Online Processing, http://www.hpl.hp.com/hpjournal/tandem/vol5num1apr89.pdf
- Tandem Systems Review April 1991 (PDF; 4,8 MB), Fault Tolerance in the NonStop Cyclone System
- Tandem Tech Report TR-90.5 (PDF; 4,1 MB), Fault Tolerance in Tandem Computer Systems
- Tandem Technical Report TR-90.6 (PDF; 609 kB), Multiple Instruction Issue in the NonStop Cyclone System, Robert Horst, Richard Harris, and Robert Jardine
- Migrating a CISC Computer Family onto RISC via Object Code Translation, K. Andrews and D. Sand, Proceedings of ASPLOS-V, October, 1992 online
- HP NonStop Advanced Architecture, a business white paper, http://h71028.www7.hp.com/ERC/downloads/NSAABusinessWP.pdf
- HP NonStop Multi-core Architecture, white paper, http://h20195.www2.hp.com/v2/GetDocument.aspx?docname=4AA2-0026ENW&doctype=white%20paper&doclang=EN_US&searchquery=&cc=il&lc=he@1@2Vorlage:Toter+Link/h20195.www2.hp.com (Seite+nicht+mehr+abrufbar,+Suche+in+Webarchiven) Datei:Pictogram+voting+info.svg Info:+Der+Link+wurde+automatisch+als+defekt+markiert.+Bitte+prüfe+den+Link+gemäß+Anleitung+und+entferne+dann+diesen+Hinweis.+
- NonStop SOAP 4.1 User's Manual, http://bizsupport2.austin.hp.com/bc/docs/support/SupportManual/c02186507/c02186507.pdf
- NonStop Server for Java 7.0 Programmer's Reference, http://bizsupport2.austin.hp.com/bc/docs/support/SupportManual/c03684416/c03684416.pdf
- Open-Source-Frameworks auf HP NonStop-Servern, http://www.computerwoche.de/subnet/hp-instant-on/1933461/
- HP NonStop Development Environment for Eclipse v5.0, Archivierte Kopie (Memento des Originals vom 16. November 2013 im Internet Archive) Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.
- In 28 Tagen in die Java-NonStop-Welt, http://www.commitwork.de/attachments/053_d-28-tage.pdf@1@2Vorlage:Toter+Link/www.commitwork.de (Seite+nicht+mehr+abrufbar,+Suche+in+Webarchiven) Datei:Pictogram+voting+info.svg Info:+Der+Link+wurde+automatisch+als+defekt+markiert.+Bitte+prüfe+den+Link+gemäß+Anleitung+und+entferne+dann+diesen+Hinweis.+
- HP erweitert HP NonStop auf die x86-Serverplattform, http://www8.hp.com/de/de/hp-news/press-release.html?id=1519965&pageTitle=HP-erweitert-HP-NonStop-auf-die-x86-Serverplattform
- HPE Integrity NonStop X,https://www.hpe.com/us/en/servers/nonstop.html
- HPE Virtualized NonStop, https://www.hpe.com/h20195/V2/GetDocument.aspx?docname=a00001556ENW