die fabasoft referenzarchitektur im microsoft windows

Werbung
die fabasoft referenzarchitektur im microsoft
windows-umfeld
die fabasoft referenzarchitektur
im microsoft windows-umfeld
ISBN: 3-902495-04-9
Helmut Fallmann, Oliver Albl, Robert Hell, Christoph Jerschitz
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 1
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 2
ISBN: 3-902495-04-9
Alle Rechte der Verbreitung, auch durch fotomechanische Wiedergabe,
Tonträger jeder Art, auszugsweisen Nachdruck oder Einspeicherung und Rückgewinnung in Datenverarbeitungsanlagen aller Art, sind vorbehalten.
Es wird darauf verwiesen, dass alle Angaben in diesem Fachbuch trotz
sorgfältiger Bearbeitung ohne Gewähr erfolgen und eine Haftung der Autoren
oder des Verlages ausgeschlossen ist.
Aus Gründen der einfacheren Lesbarkeit wird auf die geschlechtsspezifische
Differenzierung, z.B. Benutzer/-innen, verzichtet. Entsprechende Begriffe gelten im
Sinne der Gleichbehandlung grundsätzlich für beide Geschlechter.
Fabasoft und das Fabasoft Logo sind registrierte Warenzeichen der Fabasoft AG.
Microsoft, MS-DOS, Windows, das Windows-Logo, Windows 95, Windows 98,
Windows Me, Windows XP, Windows NT, Windows 2000, Windows Server,
Active Directory, Outlook, Excel, Word, PowerPoint, Visual Studio, Visual Basic,
Visual C++ sind entweder registrierte Warenzeichen oder Warenzeichen der
Microsoft Corporation.
Alle anderen verwendeten Hard- und Softwarenamen sind Handelsnamen
und/oder Marken der jeweiligen Hersteller.
© Fabasoft Intl. Software GmbH, Linz 2004
Honauerstraße 4, 4020 Linz
Tel.: +43 (732) 606162
http://www.fabasoft.at
Gestaltung: SCHRANGL’PRESLMAYER’SCHAURHOFER Marketing GmbH, Linz
Druck: Gutenberg-Werbering GmbH, Linz
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 3
die fabasoft referenzarchitektur
im microsoft windows-umfeld
Helmut Fallmann, Oliver Albl,
Robert Hell, Christoph Jerschitz
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 4
inhaltsverzeichnis
2004
die fabasoft referenzarchitektur
im microsoft windows-umfeld
______________________________________________
1
2
einleitung und zieldefinition
____________________________________________________
definition von hochverfügbarkeit
______________________________________
1
10
16
2.1 Fehler ____________________________________________________________________________________________________________ 17
2.2 MTBF
____________________________________________________________________________________________________________
17
2.3 MTTR
____________________________________________________________________________________________________________
19
2.4 Systemstillstandszeit (engl. Downtime) __________________________________________________________ 19
2.5 Service-Level-Management
__________________________________________________________________________
21
2.6 Verfügbarkeit (engl. Availability) ____________________________________________________________________ 21
2.7 Verfügbarkeitsgrade ______________________________________________________________________________________ 22
2.8 Hochverfügbarkeit
________________________________________________________________________________________
3
die fabasoft referenzarchitektur 5.0
im überblick
4
technologien für hochverfügbarkeit
__________________________________________________________________________________________
4.1 Lastverteiler (Load-Balancer, Content-Switch)
24
28
________________________________
38
______________________________________________
39
Verteilungsalgorithmen (Load Balancing Policies) __________________________________________________ 40
Sitzungsaffinität (Session Affinity) ______________________________________________________________________ 42
Fehlerstrategien (Server Failure Policies) ______________________________________________________________ 45
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 5
5
4.2 Microsoft Windows Server 2003 Clustering Services
____________________________________
48
Architektur der Servercluster – Virtuelle Server ____________________________________________________ 48
Clustertaugliche Dienste ____________________________________________________________________________________ 49
Clusterressourcen ____________________________________________________________________________________________ 50
Active/Active versus Active/Passive ____________________________________________________________________ 50
Quorum __________________________________________________________________________________________________________ 51
Heartbeat ________________________________________________________________________________________________________ 51
Failover __________________________________________________________________________________________________________ 51
Failback __________________________________________________________________________________________________________ 54
4.3 Hochverfügbare Server __________________________________________________________________________________ 57
Lüfter ______________________________________________________________________________________________________________ 57
Netzteile__________________________________________________________________________________________________________ 57
Systemplatten __________________________________________________________________________________________________ 57
Speicher __________________________________________________________________________________________________________ 57
Netzwerkanbindung __________________________________________________________________________________________ 58
SAN-Anbindung ________________________________________________________________________________________________ 59
5
die subsysteme der fabasoft
referenzarchitektur 5.0
________________________________________________________________
62
5.1 Arbeitsplatz (Webbrowser-Client) __________________________________________________________________ 64
Beschreibung __________________________________________________________________________________________________ 64
Verfügbarkeit____________________________________________________________________________________________________ 65
5.2 Arbeitsplatz-LAN (Client-LAN) ________________________________________________________________________ 66
Beschreibung __________________________________________________________________________________________________ 66
Hochverfügbarkeit ____________________________________________________________________________________________ 67
5.3 Client-Firewall
______________________________________________________________________________________________
68
Beschreibung __________________________________________________________________________________________________ 68
Hochverfügbarkeit ____________________________________________________________________________________________ 69
5.4 WAN ______________________________________________________________________________________________________________ 71
Beschreibung __________________________________________________________________________________________________ 71
Hochverfügbarkeit ____________________________________________________________________________________________ 71
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 6
5.5 Anschaltknoten ______________________________________________________________________________________________ 72
Beschreibung __________________________________________________________________________________________________ 72
Hochverfügbarkeit ____________________________________________________________________________________________ 73
5.6 Server-Firewall ______________________________________________________________________________________________ 75
Beschreibung __________________________________________________________________________________________________ 75
Hochverfügbarkeit ____________________________________________________________________________________________ 75
5.7 Lastverteiler (Load-Balancer, Content-Switch)
______________________________________________
78
Beschreibung __________________________________________________________________________________________________ 78
Hochverfügbarkeit ____________________________________________________________________________________________ 79
5.8 Frontend-LAN
________________________________________________________________________________________________
85
Beschreibung __________________________________________________________________________________________________ 85
Hochverfügbarkeit ____________________________________________________________________________________________ 85
5.9 Webserver-Farm ____________________________________________________________________________________________ 87
Beschreibung __________________________________________________________________________________________________ 87
Performance-Überlegungen ________________________________________________________________________________ 88
Hochverfügbarkeit ____________________________________________________________________________________________ 89
5.10 Backend-LAN ________________________________________________________________________________________________ 91
Beschreibung __________________________________________________________________________________________________ 91
Hochverfügbarkeit ____________________________________________________________________________________________ 92
5.11 Konvertierungsserver-Farm ____________________________________________________________________________ 95
Beschreibung __________________________________________________________________________________________________ 95
Performance-Überlegungen ________________________________________________________________________________ 95
Hochverfügbarkeit ____________________________________________________________________________________________ 96
5.12 AT-Server (Automated Tasks)
________________________________________________________________________
98
Beschreibung __________________________________________________________________________________________________ 98
Hochverfügbarkeit ____________________________________________________________________________________________ 99
5.13 Backendserver-Cluster
________________________________________________________________________________
100
Beschreibung __________________________________________________________________________________________________ 100
Hochverfügbarkeit ____________________________________________________________________________________________ 101
Performance-Überlegungen ______________________________________________________________________________ 101
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 7
7
5.14 Datenbankserver-Cluster ______________________________________________________________________________ 103
Beschreibung __________________________________________________________________________________________________ 103
Hochverfügbarkeit __________________________________________________________________________________________ 104
Performance-Überlegungen ______________________________________________________________________________ 104
5.15 Storage Area Network (SAN) ________________________________________________________________________ 106
Beschreibung __________________________________________________________________________________________________ 106
Hochverfügbarkeit __________________________________________________________________________________________ 107
Performance-Überlegungen ______________________________________________________________________________ 107
5.16 Storagesystem ______________________________________________________________________________________________ 108
Beschreibung __________________________________________________________________________________________________ 108
Hochverfügbarkeit __________________________________________________________________________________________ 109
Performance-Überlegungen ______________________________________________________________________________ 109
5.17 Tape-Library__________________________________________________________________________________________________ 112
Beschreibung __________________________________________________________________________________________________ 112
Hochverfügbarkeit __________________________________________________________________________________________ 112
Performance-Überlegungen ______________________________________________________________________________ 112
5.18 Server für Basisdienste ________________________________________________________________________________ 113
Microsoft Windows-Domaincontroller ________________________________________________________________ 113
Mailserver ______________________________________________________________________________________________________ 115
Managementserver __________________________________________________________________________________________ 117
Backupserver __________________________________________________________________________________________________ 120
Indexserver ____________________________________________________________________________________________________ 122
6
datensicherheit: online-backup, recovery
________________
126
6.1 Voraussetzungen __________________________________________________________________________________________ 127
6.2 Datensicherung und Wiederherstellung einer
Fabasoft Components Domäne (Backup und Recovery)
________________________________
128
Konsistenz ______________________________________________________________________________________________________ 128
Die Microsoft SQL Server Datenbanken ______________________________________________________________ 129
Fabasoft Components MMC-Service-Bereiche ______________________________________________________ 129
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 8
6.3 Beispiel ________________________________________________________________________________________________________ 130
Beschreibung der Infrastruktur __________________________________________________________________________ 131
EMC2 Symmetrix Device Group Layout ________________________________________________________________ 136
Datensicherung (Backup) __________________________________________________________________________________ 137
Wiederherstellung (Restore / Recovery) ______________________________________________________________ 138
Beispiele für die Prozeduren fsc_settxmark und fsc_setlocaltxmark ________________________ 141
7
betriebsprozesse und
systemmanagement
__________________________________________________________________
144
7.1 Installation der wesentlichen Fabasoft Services __________________________________________ 146
Backendserver-Rollout ______________________________________________________________________________________ 146
Webserver-Rollout __________________________________________________________________________________________ 147
Konvertierungsserver-Rollout ____________________________________________________________________________ 149
Überprüfung der Produktionsumgebung vor Inbetriebnahme____________________________________ 150
7.2 Systemmanagement für die Fabasoft Referenzarchitektur ____________________________ 152
Kurzbeschreibung einiger Systemmanagementwerkzeuge ______________________________________ 154
8
glossar
9
abbildungsverzeichnis
10
literaturverzeichnis
__________________________________________________________________________________________________
160
______________________________________________________________
164
______________________________________________________________________
168
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 9
9
05Referenzarchitektur
1
04.04.2005
12:25 Uhr
Seite 10
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 11
11
1 einleitung und zieldefinition
Der Erfolg eines Unternehmens im globalen Wettbewerb basiert auf dem Einsatz der Informationsund Kommunikationstechnologie. Dazu ist eine Infrastruktur Voraussetzung, die den Anforderungen
des jeweiligen Unternehmens entspricht sowie ausbau- und anpassungsfähig an zukünftige Anforderungen ist.
Am Beispiel von E-Government vom Antrag bis zur Zustellung (siehe Abbildung 1) ist absehbar, dass aufgrund
des Nutzenversprechens jedenfalls im Bereich der Kommunikation mit dem Bürger der Bedarf an einem hochverfügbaren Betrieb von 24 Stunden an allen Tagen eines Jahres (7x24-Betrieb) besteht.
Darüber hinaus stellen die über E-Government angebotenen Dienste in Form von Webanwendungen und WebServices einen wesentlichen Standortfaktor dar, beispielsweise im Bereich des globalen Wettbewerbes um
(Konzern)-Standorte. Dazu findet auch jährlich ein Benchmarking der EU-Kommission (ein Vergleich von
15 EU-Mitgliedsstaaten sowie Island, Norwegen und Schweiz) statt [EuUn04]. Österreich konnte sich hinsichtlich des Online-Umsetzungsgrades der öffentlichen Serviceangebote vom Platz 11 im Jahr 2002 auf Platz 4 im
Jahr 2003 steigern. Bei den vollständig elektronisch abwickelbaren E-Government-Diensten liegt Österreich auf
Platz 2.
Unter Webanwendungen werden solche Systeme verstanden, deren Benutzerschnittstelle auf den Standards
HTML (grafische Darstellung im Webbrowser-Client) und HTTP (Übertragungsprotokoll) basiert.
Die Benutzerschnittstelle einer Webanwendung kann überall im Internet (zu jeder Zeit, an jedem Ort, idealerweise in jedem Webbrowser) zur Verfügung stehen.
Die Softwareprodukte Fabasoft eCRM-Suite 5.0 (Customer Relationship Management, Enterprise Content
Management etc.), Fabasoft eGov-Suite 5.0 (Elektronische Aktenverwaltung, Public Records Management),
Fabasoft eGov-Forms 5.0 (Online-Formulare) und Fabasoft Zustellung 5.0 (Elektronische Zustellung, in Österreich geregelt durch das Zustellgesetz und E-Government Gesetz) bedienen sich der Fabasoft Referenzarchitektur 5.0, um Hochverfügbarkeit, Skalierbarkeit und Managebarkeit zu erreichen.
Die Informationstechnologie spielt aber auch hinsichtlich sozialpolitischer Fragestellungen eine entscheidende
Rolle. Beispielsweise zeigt die Diskussion zu den Ladenöffnungszeiten in der Europäischen Union die Wünsche
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 12
der Konsumenten und der Arbeitgeber einerseits sowie die Sorgen der Angestellten andererseits recht deutlich
auf:
Die Konsumenten wollen längere Öffnungszeiten. Ihre Konsumbedürfnisse sollen außerhalb ihrer – immer
flexibler werdenden Arbeitszeiten – gedeckt werden können.
Die Arbeitgeber müssen im Wettbewerb zwischen großen und kleinen Unternehmen, globalen und lokalen
Marktteilnehmern ihre Entscheidungen über den Erfolg ihres Unternehmens treffen.
Die von den verlängerten Ladenöffnungszeiten betroffenen Angestellten verteidigen ihr Privatleben, sehen
aber auch die Arbeitsplatzsituation (z.B. Arbeitslosenrate in Deutschland).
Abbildung 1
E-Government: Von Antrag
bis Zustellung
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 13
1 Einleitung und Zieldefinition
In vielen Bereichen sind Online-Dienste ein Lösungsansatz für diesen scheinbaren Widerspruch, beispielsweise:
Online Banking (z.B. www.ba-ca.com, www.netbanking.at, www.elba.at)
bargeldloses Bezahlen mit Karte und Code (z.B. Maestro-Karte, Kreditkarten)
E-Government (z.B. www.help.gv.at)
Buchhandel (z.B. www.amazon.de)
etc.
Um erfolgreich sein zu können, muss ein Online-Dienst zumindest folgende Kriterien erfüllen:
massentaugliche Geschäftsprozesse: einfachste Bedienung ohne Schulung
7 Tage mal 24 Stunden Verfügbarkeit in jeder Woche
Als Beispiel für ein solches einfach zu bedienendes und – für uns alle selbstverständlich – hochverfügbares
System ist das internationale Telefonsystem. Es ist dies wohl das bislang global erfolgreichste Netzwerksystem.
Zehn Tasten (Ziffern), ein Hörer und ein internationales Telefonverzeichnis reichen aus, um mittlerweile jeden
Punkt der Erde (inkl. Satellitentelefon) erreichen zu können.
Unternehmen, die ihre Geschäftsprozesse einmal auf E-Business umgestellt haben, sind von der Verfügbarkeit
ihrer Systeme abhängig. Jeder Systemstillstand gefährdet den Bestand des Unternehmens. Der Wettbewerb findet global statt. Ein Systemstillstand führt nicht nur zu einem Umsatzentgang, sondern insbesondere zu einem
Verlust von Kunden. Die Loyalität der Kunden hängt von der Verfügbarkeit der Online-Dienste ab.
Systemstillstandszeiten können in zwei Kategorien klassifiziert werden. Die geplanten Systemstillstandszeiten
(Planned Downtime) werden von der Betriebsführung für Wartungsarbeiten und Aktualisierungen der Hard- und
Software genutzt. Die ungeplanten Systemstillstandszeiten (Unplanned Downtime) werden von unvorhersehbaren Ereignissen wie beispielsweise Stromausfällen, Hardware- und Softwarefehlern, menschlichem Versagen
oder Naturkatastrophen verursacht.
Um die Verfügbarkeit zu maximieren, müssen diese Systemstillstandszeiten und deren negative Auswirkungen
auf die Nutzer des Systems minimiert werden.
13
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 14
Die Technologie zur Erreichung von hoher Verfügbarkeit und fehlertoleranten Systemen hat sich in den letzten
Jahren wesentlich weiterentwickelt. Die Preise dieser Technologien sind gefallen. Hochverfügbarkeit ist leistbar geworden.
Hier wird eine Architektur für hochverfügbare Online-Dienste vorgestellt, die als Implementierung unter dem
Betriebssystem Microsoft Windows Server 2003 dem Stand der Technik entspricht.
Für die Fabasoft Referenzarchitektur 6.0 wird zusätzlich eine Implementierung auf Basis des Betriebssystems
Linux sowie als Mischform Microsoft Windows und Linux unterstützt werden.
Die Kapitel dieses Buches sind folgendermaßen aufgebaut:
Einleitung
Motivation zum Thema Hochverfügbarkeit für Anwendungsgebiete im Bereich Web-Services und Webanwendungen insbesondere am Beispiel E-Government.
Definition von Hochverfügbarkeit
Die grundlegenden Definitionen und Formeln für Hochverfügbarkeit, Stillstandszeiten und Verfügbarkeitsklassen.
Die Fabasoft Referenzarchitektur 5.0 im Überblick
Vermittlung des Basiswissens über die Fabasoft Softwarearchitektur in der Version 5.0 der auf der Fabasoft
Components Technologie basierenden Softwareprodukte und die zugehörige Fabasoft Referenzarchitektur 5.0
für die einer Produktionsumgebung zugrunde liegende Infrastrukturtechnologie.
Technologien für Hochverfügbarkeit
Beschreibung der von der Fabasoft Referenzarchitektur verwendeten Technologien für die Bereitstellung der in
den einzelnen Subsystemen benötigten Redundanz.
Die einzelnen Subsysteme der Fabasoft Referenzarchitektur 5.0
Kurzbeschreibungen, Überlegungen zur Hochverfügbarkeit und Leistungsfähigkeit sowie konkrete Beispiele zu
jedem einzelnen Subsystem der Fabasoft Referenzarchitektur 5.0.
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 15
1 Einleitung und Zieldefinition
Datensicherheit: Online-Backup, Recovery
Online-Backup und Recovery der Geschäftsobjekte einer Fabasoft Components Domäne am Beispiel von EMC2
TimeFinder und Microsoft SQL Server 2000.
Betriebsprozesse und Systemmanagement
Kurzanleitungen zur Installation der Server und zu den Aufgaben einer Betriebsführung.
Dieses Buch soll mit dem Überblick über die Fabasoft Referenzarchitektur ein gemeinsames Verständnis zu den
Komponenten und zur Begrifflichkeit hinsichtlich einer Infrastruktur für die Fabasoft Softwareprodukte herstellen.
Für die Umsetzung der Fabasoft Referenzarchitektur 5.0 in einem konkreten Projekt inklusive Dimensionierung
der Infrastrukturkomponenten sollte im Einzelfall auf die Beratungsleistungen des Produktherstellers Fabasoft
zurückgegriffen werden.
15
05Referenzarchitektur
2
04.04.2005
12:25 Uhr
Seite 16
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 17
definition von
2 hochverfügbarkeit
Die hier dargestellten Definitionen und Grundregeln zur Erreichung einer hohen Verfügbarkeit von
IT-Systemen stellen die Eckpfeiler für die Fabasoft Referenzarchitektur 5.0 dar.
2.1
fehler
„[engl. error, fault], eine Diskrepanz zwischen den wahren, festgelegten bzw. theoretisch korrekten Werten,
Bedingungen und Vorgängen einerseits und den berechneten, eingegebenen oder beobachteten Werten, Bedingungen und Vorgängen im Rechner andererseits. Daneben gibt es Systemstörungen oder Abweichungen vom
Sollzustand eines Geräts (z. B. bei einem Drucker Papierstau, entleerte Tintenpatrone, fehlendes Papier o. Ä.),
die zwar nicht von der obigen Definition erfasst werden, aber trotzdem auch als Fehler bezeichnet werden. Je
nach Schwere eines Fehlers führt ein Fehler zum Systemausfall (fataler Fehler), zu schwerer, deutlicher oder
geringer Funktionsbeeinträchtigung (kritischer Fehler, Hauptfehler, Nebenfehler) oder ein Fehler äußert sich
überhaupt nicht (belangloser Fehler). Die Auslegung eines Systems auf Fehlertoleranz, z. B. durch Schaffung von
Redundanz, begünstigt das unbeeinträchtigte Ablaufen eines fehlerhaften Programms. Aus historischen
Gründen wird ein Fehler oft Bug genannt.” [Broc02]
2.2
mtbf
„[Abk. für Mean Time Between Failures, dt. »mittlere Zeit zwischen Ausfällen«], ein Wert, der angibt, wie lange ein Gerät störungsfrei läuft, bis es durch einen Defekt ausfällt. Üblicherweise sollte die Zahl mit einer Zeiteinheit versehen sein; wo sie fehlt, sind meist Stunden gemeint. Ein MTBF von 500 000 bedeutet beispielsweise, dass ein Gerät 500 000 Stunden fehlerfrei läuft, entsprechend etwas mehr als 57 Jahre.
Die Zahlen entsprechen i. d. R. nicht den technischen Gegebenheiten. Würden die Geräte wirklich so lange
getestet, wären sie schon längst veraltet, wenn sie in den Handel kämen. Vielmehr ermittelt man den MTBF in
statistischen Versuchen, indem man eine große Zahl von Geräten, meist mehrere Tausend, über eine bestimmte Zeitspanne, die einige Tage bis wenigen Wochen umfasst, ununterbrochen laufen lässt. Danach zählt man die
defekten Geräte, addiert die störungsfreien Betriebsstunden aller Geräte auf und teilt die so ermittelte Stunden-
17
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 18
zahl durch die Anzahl der Störungen. Dies liefert als Resultat direkt den MTBF, der also nur einen groben Hinweis gibt, wie robust ein bestimmtes Gerät ist.
Die Garantiezeiten, in denen ein Hersteller für seine Produkte haftet, sind i. d. R. weitaus geringer als der MTBF.
Sie sind meist ein Resultat unterschiedlicher betriebswirtschaftlicher Schätzungen der Hersteller, z. B. wie lange es dauern wird, bis das aktuelle Gerät aus dem Handel verschwunden ist und durch ein Nachfolgemodell
ersetzt werden kann. Die Anfang 2002 in der EU eingeführte einheitliche Mindestgarantie von zwei Jahren auf
Elektrogeräte ist eine politische Vorgabe.” [Broc02]
Diese Definition hat die Definition MTTF [Mean Time To Failure, dt. »mittlere Zeit bis zum Ausfall«] – ein Wert,
der angibt, wie lange ein Gerät ab Inbetriebnahme störungsfrei läuft, bis es durch einen Defekt ausfällt – abgelöst. Historisch gesehen basiert die Formel für die Berechnung der Verfügbarkeit auf der MTTF.
Abbildung 2
MTTF einiger
Hardwarekomponenten
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 19
2. Definition von Hochverfügbarkeit
2.2 MTBF
2.3 MTTR
2.4 Systemstillstandszeit (engl. Downtime)
2.3
mttr
„[Abk. für Mean Time To Recovery, dt. »mittlere Zeit bis zur Fehlerbehebung«], ein statistischer Wert, der angibt,
wie lange es dauert, bis ein Defekt behoben ist.“ [Broc02]
Die Fehlerbehebung besteht aus drei Phasen:
1. Bemerken (Erkennen) des Fehlers
2. Diagnose der Fehlerursache
3. Behebung des Fehlers
Es ist wichtig, die MTTR möglichst klein zu halten. Maßnahmen dazu sind beispielsweise häufige Voll-Backups
auf Festplatten, ein Lager mit Ersatzteilen vor Ort, „selbstheilende“ Softwarekomponenten etc.
2.4
systemstillstandszeit (engl. downtime)
Wenn ein Nutzer seine Arbeit nicht in der dafür vorgesehenen Zeit erledigen kann, dann steht das System still.
Diese Systemstillstandszeit setzt sich aus Zeiten geplanter Stillstände (engl. Planned Downtime) und Zeiten
ungeplanter Stillstände (engl. Unplanned Downtime) zusammen.
Je mehr die externe, globale Nutzung der angebotenen Dienste durch Kunden im Wege des Internets im Vordergrund steht, umso mehr Gewicht bekommen auch die geplanten Stillstände im Hinblick auf die zugesicherten
Service-Levels.
Diese enge Auslegung definiert Stillstandszeit als die Summe der geplanten und der ungeplanten Systemstillstandszeiten.
Die (statistisch) voraussichtliche Stillstandszeit pro Jahr bei bekannter Verfügbarkeit wird wie folgt
berechnet:
19
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 20
1 Jahr
= 525.960 [Minuten]
ν
= Verfügbarkeit in Prozent
Stillstandszeit pro Jahr
= 525.960 – ν × 525.960
Eine Statistik zu den Ursachen für Systemstillstände wird in Abbildung 3 wiedergegeben. Ausdrücklich sei hier
auf den kritischen Erfolgsfaktor Serversoftware hingewiesen. Insbesondere Treibersoftware für die im Serverbereich eingesetzten Hardwarekomponenten ist genau zu beobachten.
Abbildung 3
Ursachen für Systemstillstände [IEEE95]
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 21
2. Definition von Hochverfügbarkeit
2.4 Systemstillstandszeit (engl. Downtime)
2.5 Service-Level-Management
2.6 Verfügbarkeit (engl. Availability)
2.5
service-level-management
„Das Service Level Management beschäftigt sich mit den Verhandlungen für Service Level Agreements (SLAs)
sowie mit deren Management. Die Verfügbarkeit ist dabei eines der wichtigsten Themen, die es festzulegen
gilt.“ [vBKP02]
2.6
verfügbarkeit (engl. availability)
„Merkmal von Computersystemen, Geräten oder Komponenten, zur Nutzung bereitzustehen und Nutzern Zugang
zu gewähren.“ [Broc02]
Der Verfügbarkeit liegen folgende Rahmenbedingungen zugrunde:
Die Definition der Qualität der zur Verfügung stehenden Dienste (Service-Level)
Die Definition des Beobachtungszeitraumes (7x24 Stunden pro Woche)
Die Verfügbarkeit wird als Prozentwert angegeben
Verfügbarkeit =
MTBF
(MTBF + MTTR)
Daraus ergeben sich folgende, in der Architektur und deren Umsetzung zu berücksichtigende Schlussfolgerungen:
Wenn die MTTR sehr klein (gegen Null) gehalten werden kann, dann strebt die Verfügbarkeit gegen 100 %.
Eine vorausschauende Planung mit umfassenden Tests und einer lückenlos dokumentierten Umsetzung samt
laufend zu aktualisierendem Betriebshandbuch für alle vorhersehbaren Störfälle schaffen hierzu für ein trainiertes Team die geeignete Voraussetzung.
Wenn die MTBF sehr groß ist, dann hat die MTTR weniger Einfluss auf die Verfügbarkeit. Durch den Einsatz
von Redundanz wird die MTBF für jeweils parallel geschaltete Komponenten erhöht.
21
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 22
Die Verfügbarkeit eines großen Gesamtsystems wird aus den Verfügbarkeiten der parallel und seriell geschalteten Komponenten entlang des Datenpfades – erkennbar im Blockdiagramm des Systems – berechnet.
ν = Verfügbarkeit der einzelnen Komponente
n
Serielle Verfügbarkeit
=
∏ν
i
i=1
n
Parallele Verfügbarkeit
1 – ∏ (1 – νi )
i=1
Eine Komponente in diesen Gleichungen kann sowohl eine Einzelkomponente, als auch eine zusammengesetzte
Komponente sein.
Die Gleichung für die parallele Verfügbarkeit gilt für einfache parallel geschaltete Komponenten. Darüber hinaus
sei noch die n+m-Redundanz erwähnt, für die gesonderte Gleichungen existieren. Bei einer n+m-Redundanz
werden n Komponenten für die Funktion benötigt und m Komponenten stehen als redundante Reserve bereit.
Beispielsweise werden im Bereich der modularen Rechenzentrumsklimatisierung bevorzugt n+1 Klimageräte
eingesetzt.
2.7
verfügbarkeitsgrade
Systeme werden nach den Anforderungen ihrer Nutzung im entsprechenden Verfügbarkeitsgrad ausgelegt.
Beispiele für die in Abbildung 4 definierten Verfügbarkeitsgrade sind:
Für den privaten Gebrauch trifft man häufig keine besonderen Vorkehrungen (lediglich Sicherungen der
Daten).
In Abteilungsrechnern werden die Daten durch Plattenspiegelung (RAID-1) geschützt.
Für unternehmenskritische Anwendungen werden hochverfügbare Systeme konzipiert. Seit einigen Jahren
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 23
2. Definition von Hochverfügbarkeit
2.6 Verfügbarkeit (engl. Availability)
2.7 Verfügbarkeitsgrade
werden diese Systeme immer häufiger geographisch auf zwei Rechenzentren mit zusätzlicher Redundanz
(z.B. durch synchrone Spiegelung zwischen zwei Storagesystemen) verteilt um für ein Desaster (Stromausfall, Hochwasser, Naturkatastrophen, Terroranschlag etc.) vorzusorgen.
In Anlagen wie Atomkraftwerken und Raumfahrzeugen werden fehlertolerante Systeme benötigt. Diese
Anforderung wird oftmals durch eine dreifache Redundanz auf der Gesamtsystemebene und einem Mehrheitsquorum für die Entscheidungsfindung im Fehlerfall umgesetzt, d.h. dass das Ergebnis der Mehrheit der
Systeme als Gesamtergebnis herangezogen wird.
Abbildung 4
Verfügbarkeitsgrade
23
05Referenzarchitektur
2.8
04.04.2005
12:25 Uhr
Seite 24
hochverfügbarkeit
Als Voraussetzung für eine hohe Verfügbarkeit (siehe Abbildung 5) wird jede einzelne Komponente der Architektur so ausgelegt, dass im Fall eines einzelnen Fehlers eine andere, gleichwertige Komponente die ausgefallene
Komponente in möglichst kurzer Zeit ersetzt (kein Single Point of Failure: SPOF).
Diese Definition beeinflusst viele Entscheidungen in Bezug auf die Festlegung der Architektur, der Technologie,
der Topologie und der Auswahl der einzelnen Komponenten.
Darüber hinaus beeinflussen die Regeln 2 und 3 aus Abbildung 5 insbesondere die Festlegungen an den Schnittstellen der Architektur (elektrischer Strom, Kühlung, Internet, Betriebsführung, Systemmanagement).
Abbildung 5
Voraussetzungen
für Hochverfügbarkeit
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 25
2. Definition von Hochverfügbarkeit
2.8 Hochverfügbarkeit
Wie kann Redundanz (gemäß Regel 1) erreicht werden?
Eine Komponente wird redundant ausgelegt, indem Komponenten gruppiert werden. Folgende drei Hauptarten
solcher Gruppen können die in Abbildung 5 definierten Voraussetzungen erfüllen:
1. Hochverfügbarkeitspaar (primäre und sekundäre Komponente oder so genannte Peers)
Bestimmte Produkte haben die eingebaute Funktionalität, als redundante Paare verwendet werden zu können.
Dies entweder im Sinne einer (primären) Hauptkomponente und einer sekundären Komponente ohne Last, die
im Fehlerfall die Arbeit übernimmt, oder im Sinne zweier parallel unter Teillast arbeitender Komponenten
(Peers).
2. Rechnercluster
„Ein Rechner-Cluster ist eine Gruppe von Computern, die zu einem Verbundsystem zusammengeschlossen
sind und die gemeinsam genutzt werden, um eine Aufgabe zu bewältigen. Im engeren Sinne spricht man dann
von einem Rechnercluster, wenn in einem solchen Verbundsystem alle Rechner ausschließlich für diese Aufgabe zur Verfügung stehen, ihre Einzelaufgaben zugeteilt bekommen und auf einen gemeinsamen Datenbestand zugreifen.
Im Cluster arbeiten die Rechner (Nodes) im Prinzip parallel an gleichartigen Aufgaben, die auf sie verteilt werden. … Das Zusammenwirken der Nodes führt zu hoher Ausfallsicherheit: Tritt in einem Node eine Störung
auf, können die anderen Nodes seine Aufgaben mit übernehmen.“ [Broc02]
3. Thread-Pool
Wenn die Komponenten einer Gruppe Threads eines Software-Prozesses sind, so spricht man von einem
Thread-Pool. Ein Thread-Pool benötigt eine dedizierte Instanz zur Verteilung der Aufgaben und zur Einhaltung
von Regel 2 und Regel 3 der Voraussetzungen. Diese Instanz kann auch die Anzahl der Threads an die aktuelle
Last anpassen.
Nach der Höhe der Verfügbarkeit werden Hochverfügbarkeitsklassen (siehe Abbildung 6) unterschieden.
25
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 26
Abbildung 6
Hochverfügbarkeitsklassen
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 27
2. Definition von Hochverfügbarkeit
2.8 Hochverfügbarkeit
Zusammenfassung
Abbildung 7
Zusammenfassung
Verfügbarkeit
27
05Referenzarchitektur
04.04.2005
3
12:25 Uhr
Seite 28
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 29
die fabasoft referenz3 architektur 5.0 im überblick
Die Fabasoft Produktfamilie (Fabasoft eCRM-Suite, Fabasoft eGov-Suite, Fabasoft eGov-Forms,
Fabasoft Zustellung etc.) ist – in Ergänzung zu einer Microsoft Windows basierten Client-/ServerArchitektur – als verteilte Webanwendung implementiert. Die Kommunikation mit den Diensten
erfolgt einerseits interaktiv im Wege einer grafischen Benutzeroberfläche, wobei für die Darstellung ein Webbrowser-Client genutzt wird, und andererseits programmatisch über Web-Services
(SOAP-Aufrufe insbesondere zur Integration von Fachanwendungen).
Für die Interaktion mit dem Anwender wird eine grafische Benutzeroberfläche (Thin-Client) auf Basis von HTML
und JavaScript zur Verfügung gestellt Die Funktionalität der Fabasoft Softwareprodukte kann somit im Wege
eines marktüblichen Standard-Webbrowsers (z.B. Microsoft Internet Explorer) genutzt werden.
Für Anwendungen, die mit der Betriebssystem-Umgebung des Arbeitsplatzes interagieren, stehen Controls zur
Verfügung. Das betrifft z.B.
die Integration von Bearbeitungswerkzeugen, wie etwa Microsoft Office-Anwendungen,
das Ausführen einer digitalen Signatur oder
die Nutzung von COM-Add-ins für eingebundene Schaltflächen beispielsweise in Microsoft Outlook oder
Microsoft Word.
Die eintreffenden Benutzeranfragen werden vom Microsoft Internet Information Service an das Fabasoft
Components Webservice (Thread-Pool des Web-Tiers der verteilten Anwendung, ISAPI-Erweiterung des
Microsoft Internet Information Service) weitergereicht. Die verteilte Anwendung implementiert im Fabasoft
Components Webservice die Verarbeitungslogik (Business Logic) und generiert die Darstellung (HTML für den
Webbrowser-Client).
Durch den Fabasoft Components Kernel wird im Fabasoft Components Webservice das Objektmodell zur Verfügung gestellt, die Objektplatzierung und der Zugriffsschutz festgelegt bzw. überprüft, Eigenschaften werden
zwischengespeichert, Methodenaufrufe zugeteilt und Transaktionen ausgeführt.
29
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 30
Das Fabasoft Components Webservice verarbeitet die Benutzeranfrage durch den Zugriff auf die von den
Backendservices verwalteten Daten. Die Kommunikation zwischen Fabasoft Components Webservices und
Backendservices erfolgt über ein internes Kommunikationsprotokoll auf TCP/IP-Basis.
Die Fabasoft Components Backendservices (Fabasoft Components COO-Services und Fabasoft
Components MMC-Services) werden für den Zugriff auf und die Speicherung von Daten in den Fabasoft
Components Stores verwendet (siehe Abbildung 8).
Fabasoft Components Stores sind logische Datenspeicher, die Geschäftsobjekte in einem relationalen Datenbanksystem (des Datenbankserver-Clusters) und im Dateisystem (des Backendserver-Clusters) speichern.
Durch die Fabasoft Components Konvertierungsservices wird die Konvertierung von Inhalten ermöglicht.
Konvertierungsanfragen werden von den Fabasoft Components Webservices zu den Fabasoft Components
Konvertierungsservices weitergeleitet. Es erfolgt keine direkte Kommunikation mit dem Webbrowser-Client.
Eine Fabasoft Components Domäne besteht aus den logisch zusammengehörigen Fabasoft Components
Webservices, den Fabasoft Components Konvertierungsservices, den Fabasoft Components Backendservices,
den Fabasoft Components AT-Services, den Fabasoft iArchive-Services und den Fabasoft Components
Anwendungsintegrationsservices (beispielsweise Fabasoft iArchiveLink-Services als ArchiveLinkSchnittstelle für SAP/R3). Jede Fabasoft Components Domäne ist über eine weltweit eindeutige Domänenidentifikation (Domain-ID) gekennzeichnet.
Die Zustandsänderungen in Geschäftsobjekten werden als Transaktionen abgearbeitet (siehe Abbildung 9). Im
Zuge dieser Transaktionen können sowohl Daten in den Datenbanken der Fabasoft Components COO-Services
als auch Inhalte in den Dateisystemen der Fabasoft Components MMC-Services transaktional verändert werden.
Dafür werden die MMC-Logged-Areas der Fabasoft Components MMC-Services eingesetzt, welche auch die
Basis für ein Point-in-Time-Recovery bilden (siehe Kapitel „Datensicherheit: Online-Backup, Recovery“ auf
Seite 127).
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 31
3. Die Fabasoft Referenzarchitektur
5.0 im Überblick
Abbildung 8
Fabasoft Components
Softwarearchitektur
Abbildung 9
Fabasoft Components
Transaktionen
31
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 32
Sind in einer Transaktion Änderungen in unterschiedlichen Fabasoft Components COO-Services erforderlich,
wird die Transaktion als verteilte Transaktion abgewickelt. Diese verteilten Transaktionen werden vom Fabasoft
Components Kernel als Teil der Fabasoft Components Webservices unter Verwendung des Microsoft Distributed
Transaction Coordinators (MSDTC) überwacht und können im Fehlerfall vom Fabasoft Components Kernel unter
bestimmten Bedingungen auch wiederholt werden (siehe Abbildung 10).
Die Fabasoft Referenzarchitektur 5.0 wurde für unternehmenskritische Anwendungen im Sinne der Erreichung
eines hochverfügbaren Gesamtsystems konzipiert.
Die Subsysteme können auch geographisch auf zwei Rechenzentren mit zusätzlicher Redundanz (z.B. durch synchrone Spiegelung zwischen zwei Storagesystemen) verteilt werden, um für einen Desasterfall (Stromausfall,
Hochwasser, Naturkatastrophen, Terroranschlag etc.) vorzusorgen. Dies ist allerdings mit höheren Kosten und
höherer Komplexität verbunden.
Die Grundprinzipien für die Fabasoft Referenzarchitektur 5.0 sind in Abbildung 11 dargestellt.
Für den effizienten und kosteneffektiven Betrieb dieser Softwarearchitektur wurde die Fabasoft Referenzarchitektur 5.0 entworfen. Abbildung 12 gibt einen Überblick über diese Infrastruktur-Architektur für Webanwendungen und Web-Services basierend auf der Fabasoft Components Technologie.
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 33
3. Die Fabasoft Referenzarchitektur
5.0 im Überblick
Abbildung 10
Verteilte Transaktionen mit
Fabasoft Components
Abbildung 11
Ausgewählte
Architektur-Prinzipien für
Hochverfügbarkeit
33
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 34
Abbildung 12
Referenzarchitektur
Ein Gesamtsystem (eine verteilte Webanwendung oder ein Web-Service) basierend auf der Fabasoft Referenzarchitektur 5.0 besteht aus folgenden Subsystemen:
1. Arbeitsplatz (Webbrowser-Client)
Arbeitsplatzrechner mit grafischer Benutzerschnittstelle auf Basis von HTML. Die Darstellung der HTMLInhalte wird von einem Webbrowser übernommen.
2. Arbeitsplatz-LAN (Client-LAN)
Das Arbeitsplatz-LAN verbindet die Arbeitsplätze mit der Client-Firewall.
3. Client-Firewall
Die Client-Firewall soll das Arbeitsplatz-LAN und somit die Arbeitsplätze vor Angriffen aus dem WAN (aus
dem Internet) schützen.
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 35
3. Die Fabasoft Referenzarchitektur
5.0 im Überblick
4. WAN
Netzwerkverbindung (beispielsweise als VPN auf Basis des Internets) zwischen dem Arbeitsplatz-LAN und
dem Anschaltknoten des Rechenzentrums.
5. Anschaltknoten
Der Anschaltknoten ist der Übergabepunkt für die Anwendung und der Messpunkt für den Service-Level.
6. Server-Firewall
Die Server-Firewall soll das Rechenzentrum vor Angriffen aus dem WAN (aus dem Internet) schützen.
7. Lastverteiler (Load-Balancer, Content-Switch)
Der Lastverteiler verteilt die eintreffenden Anfragen der Benutzer auf die Webserver-Farm und damit auf die
Fabasoft Components Webservices.
8. Frontend-LAN
Das Frontend-LAN verbindet den Lastverteiler mit der Webserver-Farm.
9. Webserver-Farm
Die Webserver-Farm besteht aus jenen Servern, auf welchen die Fabasoft Components Webservices (Verarbeitungslogik der Anwendung und Generierung der Darstellung) ablaufen.
10. Backend-LAN
Das Backend-LAN verbindet die Webserver mit den Backendserver-Clustern und den Konvertierungsservern
sowie die Backendserver-Cluster mit den Datenbankserver-Clustern. Darüber hinaus verbindet das BackendLAN auch die Server für die Basisdienste mit den anderen Servern.
11. Konvertierungsserver-Farm (Conversionserver-Farm)
Die Konvertierungsserver-Farm besteht aus jenen Servern, auf welchen die Fabasoft Components Konvertierungsservices (Formatkonvertierungen für Dokumente) ablaufen.
12. AT-Server (Automated Tasks)
Am AT-Server laufen die Fabasoft Components AT-Services für die Durchführung automatischer Aufgaben im
Kontext eines Benutzers ohne Benutzerinteraktion ab.
35
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 36
13. Backendserver-Cluster
Der Backendserver-Cluster erledigt die Datenhaltung (Persistenz) für die Geschäftsobjekte im Wege der
Fabasoft Components COO-Services für die strukturierten Daten (in relationalen Datenbanken) und im Wege
der Fabasoft Components MMC-Services für die unstrukturierten Daten (Dokumente, Bilder, Multimediadaten im Dateisystem).
14. Datenbankserver-Cluster
Das auf dem Datenbankserver-Cluster laufende relationale Datenbanksystem (Microsoft SQL Server) speichert die strukturierten Daten in je einer Datenbank für jedes Fabasoft Components COO-Service.
15. Storage Area Network (SAN)
Das SAN verbindet die Backend-Cluster (Speicherung von Dokumenten im Dateisystem) sowie die Datenbank-Cluster (Speicherung der Datenbankdateien) mit dem Storagesystem.
16. Storagesystem
Das (Enterprise) Storagesystem ist ein großer Festplattenspeicher (Kapazität bis in den Terabytes-Bereich).
17. Tape-Library
Die Tape-Library (Bandroboter) verwendet schnelle und zuverlässige Bandlaufwerke für die Datensicherungen.
18. Server für Basisdienste
Domaincontroller
Mailserver
Managementserver
Backupserver
Indexserver
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 37
3. Die Fabasoft Referenzarchitektur
5.0 im Überblick
Die Messung der Qualität der Dienste erfolgt, wenn nicht anders vereinbart, am Anschaltknoten als dem Übergabepunkt für die Dienstleistungen. Die Verfügbarkeiten auf der Seite des Dienstebeziehers (Arbeitsplatz-LAN,
Client-Firewall, WAN) können durch entsprechende Verträge beispielsweise mit dem Internetdiensteanbieter
(Internet Service Provider: ISP) vereinbart werden.
37
05Referenzarchitektur
4
04.04.2005
12:25 Uhr
Seite 38
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 39
technologien für
4 hochverfügbarkeit
Im Kapitel „Definition von Hochverfügbarkeit“ wird die Gruppierung von Komponenten zur Bildung
von Redundanz beschrieben. Im Folgenden sollen konkret verfügbare Technologien für Rechnercluster (Server-Farmen mit Hardware-Lastverteilern, Microsoft Windows Server 2003 Clustering
Services) und Technologien für hochverfügbare Server auf Basis von Paarbildungen (z.B. redundante Netzteile) vorgestellt und beschrieben werden.
Die Gruppierung von Komponenten und die hier vorgestellten Technologien für Hochverfügbarkeit werden, wie
im Folgekapitel beschrieben, in der Fabasoft Referenzarchitektur auf jeder Subsystemebene gezielt eingesetzt.
4.1
lastverteiler (load-balancer, content-switch)
Der Lastverteiler stellt eine virtuelle IP-Adresse zur Verfügung und verteilt die eintreffenden Anfragen der Benutzer auf die Webserver-Farm, konkret auf die einzelnen Fabasoft Components Webservices. Aus PerformanceGründen ist unbedingt anzuraten, auf softwarebasierte Lastverteilung zu verzichten und stattdessen HardwareLastverteiler (beispielsweise Cisco Catalyst 6500 mit Content Switch Module) einzusetzen.
Der Lastverteiler muss folgende Aufgaben erfüllen:
Verteilungsalgorithmen (Load Balancing Policies)
Für die Skalierbarkeit der Webserver und für ausgewogene Antwortzeiten müssen neue Sitzungen (Sessions) so auf die Fabasoft Components Webservices verteilt werden, dass alle Fabasoft Components Webservices möglichst gleich belastet werden. Kommt es im Laufe des Tages durch wechselnde Arbeitsaktivität
sowie durch An- und Abmeldungen zu starken Ungleichgewichten, sind auch einzelne bereits zugeordnete
Sitzungen nach längerer Inaktivität auf einen geringer belasteten Server umzusiedeln. Die Verteilung erfolgt
in der Regel auf Basis von TCP-Sessions. D.h. der Lastverteiler ordnet die TCP-Session beim Eintreffen der
ersten Benutzeranfrage einem Webserver zu, der dann für diese TCP-Session gleich bleibt.
Sitzungsaffinität (Session Affinity, Persistence Policies)
Webbrowser beenden nach kurzer Inaktivität des Benutzers die offenen TCP-Sessions und bauen diese bei
weiteren Anfragen wieder neu auf. Aufeinander folgende Anfragen derselben Sitzung eines Benutzers (nicht
39
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 40
mit TCP-Session zu verwechseln) sollten jedoch demselben Fabasoft Components Webservice zugeteilt werden. Die Fabasoft Components Webservices erlauben zwar den Wechsel des Fabasoft Components Webservice sogar innerhalb einer Transaktion, der zeitliche Mehraufwand für einen solchen Wechsel ist aber erheblich, da die für die laufende Transaktion benötigten Daten zuerst vom neu zugeteilten Fabasoft Components
Webservice in den Cache geladen werden müssen.
Hohe Verfügbarkeit der Fabasoft Components Webservices und Unterstützung verschiedener Fehlerstrategien (Server Failure Policies)
Der Lastverteiler muss alle Fabasoft Components Webservices laufend überwachen. Fehlerstrategien werden aktiv, wenn eines der Fabasoft Components Webservice in der Webserver-Farm keine – oder eine ungültige – Antwort auf eine Testanfrage (Health-Check-Probe) liefert. Die Fehlerstrategien legen fest, was mit
aktiven Verbindungen auf dem ausgefallenen Fabasoft Components Webservice passiert. Fällt ein Fabasoft
Components Webservice aus, müssen die darauf befindlichen Sitzungen auf andere Fabasoft Components
Webservices verteilt werden. Dem fehlerhaften Fabasoft Components Webservice dürfen keine neuen Sitzungen zugeteilt werden. Ist das Fabasoft Components Webservice wieder verfügbar, soll dieses automatisch wieder Anfragen erhalten.
Hohe Verfügbarkeit des Lastverteilers
Dedizierte Hardware-Lastverteiler (z.B. Cisco 6500 Series mit Content Switch Module) können als ein Hochverfügbarkeitspaar (primärer und sekundärer Lastverteiler) konfiguriert werden.
Dedizierte Hardware-Lastverteiler unterstützen sowohl unterschiedliche Verteilungsalgorithmen als auch mehrere Formen der Affinität.
Verteilungsalgorithmen (Load Balancing Policies)
Trifft eine Anfrage von einer neu gestarteten TCP-Session am Lastverteiler ein, wird diese je nach aktueller Last
einem Fabasoft Components Webservice zugeteilt. Das dafür zu verwendende Verfahren kann am Lastverteiler
konfiguriert werden. Da die Verteilung bei der ersten Anfrage einer TCP-Session passiert, wird in weiterer
Folge nur mehr von Anfrage gesprochen.
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 41
4. Technologien für Hochverfügbarkeit
4.1 Lastverteiler (Load-Balancer, Content-Switch)
Round-Robin
Der Lastverteiler speichert eine Liste mit allen konfigurierten Fabasoft Components Webservices. Die erste eingehende Benutzeranfrage wird dem ersten konfigurierten und lauffähigen Fabasoft Components Webservice in
dieser Liste zugeteilt. Die Liste wird für alle weiteren Benutzeranfragen der Reihe nach durchgegangen und
jeweils eine Benutzeranfrage auf ein Fabasoft Components Webservice verteilt.
Weighted-Round-Robin
Der Verteilungsalgorithmus Weighted-Round-Robin funktioniert wie Round-Robin. Zusätzlich können jedem
Fabasoft Components Webservice Gewichtungen zugeordnet werden. Aufgrund der Gewichtungen kommt ein
Fabasoft Components Webservice in der vom Lastverteiler erstellten Liste öfter vor als andere Fabasoft Components Webservices. Diese Gewichtung kann beispielsweise im Falle der Verwendung von Webservern unterschiedlicher Leistungsklassen eingesetzt werden.
Least-Connections
Der Lastverteiler speichert eine Liste mit allen konfigurierten Fabasoft Components Webservices. Die eingehenden Benutzerverbindungen werden gleichmäßig auf alle Fabasoft Components Webservices aufgeteilt.
Weighted-Least-Connections
Der Verteilungsalgorithmus Weighted-Least-Connections funktioniert wie Least-Connections. Zusätzlich können
jedem Fabasoft Components Webservice Gewichtungen zugeordnet werden. Aufgrund der Gewichtungen werden einem Fabasoft Components Webservice mit höherer Gewichtung mehr Benutzerverbindungen zugeordnet
als einem Fabasoft Components Webservice mit geringerer Gewichtung. Auch hier kann diese Gewichtung beispielsweise im Falle der Verwendung von Webservern unterschiedlicher Leistungsklassen eingesetzt werden.
Predictive-Hash
Der Lastverteiler erzeugt über einen bestimmten Schlüsselwert einen Hash-Wert und verteilt die Benutzeranfra-
41
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 42
gen aufgrund des erzeugten Hash-Wertes auf die einzelnen Fabasoft Components Webservices. Mögliche
Schlüsselwerte sind Teile bzw. der gesamte HTTP-URL (URL-Hashing) oder die Quell- bzw. Ziel-IP-Adresse (Source and/or Destination IP Hash) der Benutzeranfrage.
Sitzungsaffinität (Session Affinity)
Eine reine Reihum- oder Gleichverteilungs-Zuteilung (z.B. Round-Robin oder Least-Connections) der Benutzeranfragen ist nicht ausreichend. Die – insbesondere aus Gründen der geringeren Antwortzeiten sinnvolle – Zuordnung von aufeinander folgenden Anfragen derselben Benutzersitzung (Session) zum selben Fabasoft Components Webservice (Affinität) kann mittels folgender Technologien sichergestellt werden:
Affinität mittels Cookies
Die Verwendung von Cookies setzt voraus, dass Cookies auf den Arbeitsplätzen erlaubt sind und nicht von eventuell vorhandenen Proxyservern gefiltert werden.
Je nach verwendetem Lastverteiler und Konfiguration der Fabasoft Components Webservices wird im Falle einer
neuen Anfrage (Request) entweder vom Lastverteiler selbst oder von den Fabasoft Components Webservices ein
Cookie in die Antwort des Fabasoft Components Webservice (Response) eingefügt, dessen Wert das Fabasoft
Components Webservice eindeutig identifiziert. Soll dieses Cookie vom Fabasoft Components Webservice eingefügt werden, so muss das in der Fabasoft Components Domäne konfiguriert werden (im Konfigurationsobjekt
Virtual Application Default-Konfiguration in der Eigenschaft CS-Cookie). Dabei wird üblicherweise die IPAdresse des Fabasoft Components Webservice als Wert des Cookies gesetzt. Optional kann eine Lebensdauer
des Cookies in Minuten angegeben werden.
Der Lastverteiler speichert in einer internen Tabelle die Zuordnung der Fabasoft Components Webservices zu
den entsprechenden Cookie-Werten. Der Webbrowser schickt das Cookie bei jeder weiteren Anfrage der Session mit. Der Lastverteiler sucht den Cookie-Wert einer einlangenden Anfrage in seiner Tabelle und schickt die
Anfrage zu jenem Fabasoft Components Webservice, das zu diesem Cookie-Wert gehört.
Kommt ein Cookie für einen definierbaren Zeitraum (z.B. zwei Stunden) in keiner Anfrage vor, wird die Zuordnung
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 43
4. Technologien für Hochverfügbarkeit
4.1 Lastverteiler (Load-Balancer, Content-Switch)
aus der Tabelle des Lastverteilers gelöscht, da die dazugehörige Session entweder beendet wurde oder inaktiv
ist. Ebenso werden alle Einträge eines nicht mehr verfügbaren Fabasoft Components Webservice aus der Tabelle entfernt.
Die Lebenszeit des Cookies am Arbeitsplatz läuft nach einigen Stunden ab. Die nächste Anfrage nach dem
Ablauf des Cookies wird ohne Cookie verschickt. Dadurch wird diese Anfrage entsprechend der aktuellen Lastsituation neu verteilt.
Bei der Verwendung von Affinität mittels Cookies muss ein Layer-7-Lastverteiler verwendet werden, da der
Inhalt der Benutzeranfragen (HTTP-Anfragen) analysiert werden muss. Die Lastverteilung basiert auf dem HTTPProtokoll (ISO-OSI Layer-7), das vom Lastverteiler interpretiert wird.
Affinität mittels URL-Hashing
Jeder URL einer Anfrage (ausgenommen benutzer- bzw. sessionunabhängige Anfragen, z.B. das Laden statischer
Inhalte) enthält einen Parameter, der einen für den jeweiligen Benutzer eindeutigen Wert enthält. Je nach
Lastverteiler kann dieser Wert entweder wie ein Cookie verwendet werden, oder das zu verwendende Fabasoft
Components Webservice wird mit einem Hashing-Algorithmus bei jedem einzelnen Request direkt
(ohne Speicherung in einer Tabelle) aus dem URL-Parameter berechnet. Das heißt, der Hashing-Algorithmus
des Lastverteilers liefert eine eindeutige Zuordnung von Benutzerkennwerten zu Fabasoft Components
Webservices.
Diese Hash-Zuordnung ist typischerweise in etwa gleich verteilt, liefert aber deutlich schlechtere Ergebnisse als
beispielsweise eine lastabhängige Zuordnung nach dem Least-Connections-Prinzip. Weiters ist zu beachten,
dass benutzer- bzw. sessionunabhängige Anfragen von diesem Verfahren nicht erfasst werden und alle derartigen Anfragen entweder einem einzigen Fabasoft Components Webservice zugeordnet werden (Achtung: Überlast) oder mit einem anderen Verfahren (ohne Affinität) verteilt werden müssen.
Bei der Verwendung von Affinität mittels URL-Hashing muss ein Layer-7-Lastverteiler verwendet werden, da der
Inhalt der Benutzeranfragen (URL in HTTP-Anfragen) analysiert werden muss.
43
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 44
Affinität mittels IP-Adressen
Die Verwendung von Affinität im Wege von IP-Adressen setzt voraus, dass zwischen den Arbeitsplätzen und dem
Lastverteiler keine Network Address Translation (NAT) erfolgt. Das heißt, jede Anfrage muss über seine Absender-IP-Adresse eindeutig einem Arbeitsplatz bzw. einer Session zugeordnet werden können.
Ähnlich der Affinität mittels Cookies speichert der Lastverteiler für jede IP-Adresse das zuletzt verwendete
Fabasoft Components Webservice. Wird über einen bestimmten Zeitraum keine Anfrage von dieser Adresse
gesendet, wird die Zuordnung gelöscht. Anfragen von Adressen, zu denen keine Zuordnung gespeichert ist, werden entsprechend der aktuellen Last und der für neue Sessions konfigurierten Verteilungsmethode zugeordnet.
Am Lastverteiler sollte ein Zeitraum konfiguriert werden, der bestimmt, wie lange die Zuordnung von IP-Adresse zu Webservice gespeichert werden soll. Dieser Zeitraum sollte nicht mehr als zwei Stunden betragen.
Affinität mittels SSL-Session-ID
In diesem Fall wird die 32-Bit lange Identifikation (SSL-Session-ID) der verschlüsselten Benutzeranfrage als
Schlüsselwert verwendet. Der Lastverteiler speichert in einer internen Tabelle, welches Fabasoft Components
Webservice zu welcher SSL-Session-ID gehört. Ist für eine SSL-Session-ID noch kein Eintrag in der Tabelle vorhanden, wird die eingehende Benutzeranfrage aufgrund des konfigurierten Lastverteilungsalgorithmus auf die
Fabasoft Components Webservices verteilt. Jede weitere Benutzeranfrage mit derselben SSL-Session-ID wird
auf das zugehörige Fabasoft Components Webservice verteilt.
Kommt eine SSL-Session-ID für einen definierbaren Zeitraum (ein bewährter Wert sind zwei Stunden) in keiner
Benutzeranfrage vor, wird die Zuordnung aus der Tabelle des Lastverteilers gelöscht, da die dazugehörige
Sitzung entweder beendet wurde oder inaktiv ist.
Da bei Verwendung von HTTPS mit Terminierung (Entschlüsselung der HTTPS-Anfragen) im Webserver die Entschlüsselung der Benutzeranfrage durch das Microsoft Internet Information Service erfolgt, muss auf den Fabasoft Components Webservices mit deutlich höherer Systembelastung (insbesondere CPU-Belastung) als bei Verwendung von HTTP gerechnet werden. Die Terminierung sollte daher mit dedizierter Hardware (SSL-Beschleuni-
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 45
4. Technologien für Hochverfügbarkeit
4.1 Lastverteiler (Load-Balancer, Content-Switch)
ger) vor dem Lastverteiler erfolgen. Zu beachten ist dabei allerdings, dass in diesem Fall die Konfiguration der
Affinität mittels SSL-Session-IDs unter Umständen nicht mehr möglich ist.
Fehlerstrategien (Server Failure Policies)
Der Lastverteiler prüft regelmäßig die Webserver (ICMP-Probes, z.B. alle 10 Sekunden, „looksalive“) und die
Fabasoft Components Webservices (HTTP-Probes, z.B. alle 30 Sekunden, „isalive“) hinsichtlich deren Verfügbarkeit mit so genannten Health-Check-Probes.
Fehlerstrategien werden aktiv, wenn einer der Webserver oder eines der Fabasoft Components Webservices in
der Webserver-Farm keine – oder eine ungültige – Antwort auf die Health-Check-Probe liefert. Die Fehlerstrategien legen fest, was mit aktiven Verbindungen auf dem ausgefallenen Webserver oder dem ausgefallenen Fabasoft Components Webservice passiert.
Connection-Reset
Beim Ausfall eines Fabasoft Components Webservice wird die HTTP-Verbindung zwischen Webbrowser-Client
und Fabasoft Components Webservice abgebrochen, der Benutzer erhält eine Fehlermeldung und wird beim
Neuaufbau der Verbindung zu einem funktionierenden Fabasoft Components Webservice in der Webserver-Farm
weitergeleitet.
HTTP-Redirect
Beim Ausfall eines Webservers werden die zu diesem Zeitpunkt zu bearbeitenden Benutzeranfragen abgebrochen und auf einen anderen Webserver auf einen statischen URL umgeleitet. Typischerweise ist unter diesem
URL eine HTML-Seite mit einer entsprechenden, für den Benutzer verständlichen Fehlermeldung zu finden.
Connection-Rebalance
Beim Ausfall eines Webservers werden die HTTP-Verbindungen zwischen dem Fabasoft Components Webservice und dem Lastverteiler abgebrochen. Der Lastverteiler verteilt die Verbindung aufgrund der konfigurierten
45
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 46
Load-Balancing-Policy neu auf einen funktionierenden Webserver. Der Benutzer bemerkt diesen Vorgang nicht
und kann wie bisher auf dem neu zugewiesenen Webserver weiterarbeiten.
Sorry-Server
Beim Ausfall eines Webservers wird die HTTP-Verbindung zwischen Webserver und Lastverteiler abgebrochen.
Der Lastverteiler baut eine neue Verbindung zu einem speziell dafür vorgesehenen Webserver auf und leitet die
Benutzeranfragen auf diesen Server um. Der Benutzer bemerkt diesen Vorgang nicht, und kann wie bisher auf
dem so genannten Sorry-Server weiterarbeiten.
Zusammenfassung
Abbildung 13
Beschreibung des
Lastverteilers
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 47
4. Technologien für Hochverfügbarkeit
4.1 Lastverteiler (Load-Balancer, Content-Switch)
Abbildung 14
Verteilungsalgorithmen und
Sitzungsaffinität des
Lastverteilers
Abbildung 15
Verfügbarkeit und
Fehlerstrategien des
Lastverteilers
47
05Referenzarchitektur
4.2
04.04.2005
12:25 Uhr
Seite 48
microsoft windows server 2003 clustering services
Microsoft Windows Server 2003 Clustering Services bieten hohe Verfügbarkeit und Skalierbarkeit für unternehmenskritische Anwendungen wie beispielsweise Datenbanken, Mailsysteme sowie Datei- und Druckdienste.
Sie sind im Lieferumfang von Microsoft Windows Server 2003 Enterprise und Datacenter Edition enthalten.
In einem Servercluster werden mehrere Server (Clusterknoten) miteinander verbunden, um Hochverfügbarkeit
und einfaches Management von Applikationen und Daten im Cluster zu erreichen. Servercluster bieten insbesondere die folgenden grundsätzlichen Vorteile:
Verbesserte Verfügbarkeit
In einem Servercluster bleiben Services und Applikationen auch während einem Hardware- oder Softwarefehler bzw. während Wartungsarbeiten verfügbar.
Erhöhte Skalierbarkeit
Microsoft Windows Server 2003 Enterprise Edition unterstützt Serverkonfigurationen mit bis zu 8 Prozessoren, Microsoft Windows Server 2003 Datacenter Edition unterstützt Serverkonfigurationen mit bis zu 32 Prozessoren.
Verbessertes Management
Das Management von Applikationen erfolgt im gesamten Cluster anstatt auf jedem einzelnen Server.
Architektur der Servercluster – Virtuelle Server
Die clustertauglichen Dienste, welche in einem Cluster installiert und konfiguriert sind, werden nach außen über
jene IP-Adresse, die der Clusterdienst als Adresse des virtuellen Servers veröffentlicht, zugänglich gemacht. Für
die Software-Clients scheint kein Unterschied gegenüber einer Verbindung zu einem Dienst auf einem einzelnen
realen Server (Computer) zu bestehen.
Fällt ein Dienst (Service) aus, so verschiebt das Clusterdienst den gesamten virtuellen Server auf einen anderen
Clusterknoten und ordnet diesem Clusterknoten die IP-Adresse des virtuellen Servers zu. Die Software-Clients
können die – durch den Ausfall unterbrochene – Verbindung wiederherstellen.
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 49
4. Technologien für Hochverfügbarkeit
4.2 Microsoft Windows Server 2003 Clustering Services
Die Microsoft Windows Server 2003 Clustering Services ermöglichen somit eine Hochverfügbarkeit für Dienste,
bieten jedoch kein für den Anwender transparentes Failover der verteilten Anwendung. Wenn die Anwendung
nicht selbst über entsprechende Mechanismen verfügt, gehen die Zustandsinformationen in den Diensten und
in den durch den Ausfall unterbrochenen Sitzungen bei einem Failover verloren.
Clustertaugliche Dienste
Folgende Voraussetzungen muss eine verteilte Anwendung (in den Software-Clients und in den Diensten) erfüllen, damit ein Failover von den Anwendern nicht bemerkt wird:
1. Eine clustertaugliche verteilte Anwendung muss auf dem Protokoll TCP/IP basieren und als Adresse die IPAdresse bzw. den Netzwerknamen des virtuellen Servers verwenden.
2. Ein clustertauglicher Dienst darf keine Zustände verwalten, die im Fall eines Failovers zu Datenverlust oder
Inkonsistenz führen können.
3. Ein clustertauglicher Dienst muss nach einem Failover einen konsistenten Zustand auf Basis der im gemeinsamen Festplattenspeicher abgelegten Daten wiederherstellen können. Es kann dabei zu geringen Datenverlusten kommen (beispielsweise durch ein Rollback einer laufenden Transaktion).
4. Ein clustertauglicher Client muss eine Verbindung zum virtuellen Server, welche durch ein Failover unterbrochen wurde, ohne Fehlermeldung wieder aufsetzen können.
5. Ein clustertauglicher Client muss eine Transaktion, in welcher ein Failover (und daher ein automatisches Rollback) stattgefunden hat, wiederholen können.
6. Ein clustertauglicher Dienst muss über eine Installationsprozedur installiert werden, welche auf die Besonderheiten eines Clusters Rücksicht nimmt (z.B. Regeln für Einträge in der Microsoft Windows-Registry oder die
automatische Verteilung auf alle Clusterknoten).
7. Ein clustertauglicher Dienst implementiert Methoden, die es dem Cluster ermöglichen, den aktuellen Zustand
des Dienstes zu bewerten und entsprechende Maßnahmen zu setzen (Failover)
49
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 50
Clusterressourcen
Servercluster basieren auf einem „Shared Nothing“-Modell, d.h. jeder Server im Cluster verwaltet seine lokalen
Ressourcen. Ressourcen, die dem gesamten Cluster zur Verfügung stehen, z.B. Storagesystem-Volumes, IP-Adressen oder Hostnamen werden zu jedem Zeitpunkt immer nur von einem einzelnen Server im Cluster verwaltet.
Eine Ressource entspricht einem physikalischen Objekt oder einer Instanz eines ablaufenden Programmcodes.
Eine Festplatte, eine IP-Adresse, ein Microsoft Windows-Service oder ein COM-Objekt sind Ressourcen in
diesem Sinne. Aus Sicht der Systemverwaltung können Ressourcen unter Berücksichtung der Abhängigkeiten
getrennt voneinander gestartet und angehalten werden. Jede von ihnen kann separat überwacht werden, um
sicherzustellen, dass die Anwendung noch sauber ausgeführt wird.
Für die Planung der Clusterressourcen sind folgende Festlegungen wesentlich:
Anzahl der benötigten IP-Adressen und Netzwerknamen
Namensschema
Anzahl und Größe des Festplattenspeichers inkl. Platz für weiteres Wachstum
Konfiguration des Storagesystems
Clusterressourcen müssen zu Ressourcengruppen zusammengefasst werden:
Ressourcen mit wechselseitigen Abhängigkeiten müssen in dieselbe Gruppe zusammengefasst werden
Ressourcen gehören jeweils zu genau einer Ressourcengruppe
Ein Failover betrifft immer die gesamte Ressourcengruppe und niemals eine Ressource alleine
Active/Active versus Active/Passive
In einem Active/Active-Clustersystem arbeiten alle Knoten aktiv. Die Ressourcen und die Last werden auf alle
Knoten aufgeteilt. Fällt ein Knoten aus, werden dessen Ressourcen entsprechend der Failover-Richtlinien auf die
noch übrigen Clusterknoten verteilt. Für diese Mehrbelastung bei Ausfall eines Knotens müssen alle Clusterknoten mit ausreichend Reserven an CPU-Leistung, Hauptspeicher, Netzwerkbandbreite usw. ausgestattet sein.
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 51
4. Technologien für Hochverfügbarkeit
4.2 Microsoft Windows Server 2003 Clustering Services
In einem Active/Passive-Clustersystem werden ein oder mehrere Knoten passiv betrieben, diesen Clusterknoten
wird keine Arbeit zugeteilt. Fällt ein aktiver Knoten aus, so übernimmt ein passiver Knoten dessen Ressourcen.
Quorum
Das Quorum ist die Konfigurationsdatenbank des Clusters. Sie enthält die aktuelle Clusterkonfiguraton, z.B.
Clusterknoten, Clusterressourcen oder Clustergruppen. Diese Datenbank wird auf einer Festplatte des Storagesystems gespeichert und steht dem Cluster als herkömmliche Clusterressource zur Verfügung.
Heartbeat
Eine eigene Netzwerkverbindung zwischen den Clusterknoten (Heartbeat) wird für den Transfer von clusterspezifischen Daten, z.B. im Zuge von Verfügbarkeitstests implementiert. Sollte ein Clusterknoten weder über diese
Heartbeat-Verbindung noch über andere mögliche Netzwerkverbindungen erreichbar sein, wird automatisch ein
Failover initiiert.
Failover
Fällt ein Clusterknoten aus, so werden die betroffenen virtuellen Server auf einem anderen Clusterknoten gestartet. Für die Definition, welcher Server bei einem Failover die betroffenen virtuellen Server übernimmt, stehen
Failover-Richtlinien zur Verfügung:
Failover-Paare
Hot-Standby-Server
Failover-Ring
Zufälliges Failover
Angepasstes Failover
51
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 52
Failover-Paare
In dieser Konfiguration werden für jeden virtuellen Server zwei mögliche Clusterknoten definiert, die diesen
betreiben können, z.B.:
APPLIKATION
STANDARDSERVER
FAILOVER-SERVER
APPLIKATION A
Server 1
Server 3
APPLIKATION B
Server 2
Server 4
Tabelle 1: Beispielkonfiguration für Failover-Paare
Hot-Standby-Server
Für die Konsolidierung von Failover-Paaren wird für mehrere virtuelle Server ein zusätzlicher Clusterknoten als
möglicher Betreiber konfiguriert (n+1), z.B.:
APPLIKATION
STANDARDSERVER
FAILOVER-SERVER
APPLIKATION A
Server 1
Server 3
APPLIKATION B
Server 2
Server 3
Tabelle 2: Beispielkonfiguration für Hot-Standby-Server (n+1)
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 53
4. Technologien für Hochverfügbarkeit
4.2 Microsoft Windows Server 2003 Clustering Services
Abhängig von der Konfiguration können anstatt einem Failover-Server mehrere Failover-Server konfiguriert werden (n+i), z.B.:
APPLIKATION
STANDARDSERVER
FAILOVER-SERVER
APPLIKATION A
Server 1
Server 6, Server 7
APPLIKATION B
Server 2
Server 6, Server 7
APPLIKATION C
Server 3
Server 6, Server 7
APPLIKATION D
Server 4
Server 6, Server 7
APPLIKATION E
Server 5
Server 6, Server 7
Tabelle 3: Beispielkonfiguration für Hot-Standby-Server (n+i)
Failover-Ring
Auf allen Clusterknoten werden Applikationen ausgeführt, die Clusterknoten werden dabei zu einem logischen
Ring zusammengeschlossen. Fällt ein Clusterknoten aus, wird die Anwendung auf den nächsten Clusterknoten
im Ring verschoben.
Zufälliges Failover
Fällt ein Clusterknoten aus, werden die betroffenen virtuellen Server zufällig auf andere Clusterknoten verteilt.
Angepasstes Failover
Für virtuelle Server werden die möglichen Clusterknoten spezifisch konfiguriert.
53
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 54
Failback
Sobald der Fehler auf dem bevorzugten Clusterknoten behoben ist, kann der Dienst durch ein (automatisches
oder manuelles) Failback wieder zurück verlagert werden. Ein automatisches Failback kann entweder sofort bei
Verfügbarkeit des bevorzugten Knotens oder zu einer vordefinierten Zeit erfolgen.
Zusammenfassung
Abbildung 16
Microsoft Windows
Server Cluster
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 55
4. Technologien für Hochverfügbarkeit
4.2 Microsoft Windows Server 2003 Clustering Services
Abbildung 17
Microsoft Cluster:
Failover-Richtlinien
55
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 56
Abbildung 18
Ausfall eines Clusterknotens: Failover
Abbildung 18 dokumentiert beispielhaft die Auswirkungen eines Failovers im Cluster auf eine Client-Applikation. Die Anfragen an den Clusterdienst sind kurzfristig nicht durchführbar, werden aber fortgesetzt,
sobald der Clusterdienst wieder verfügbar ist.
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 57
4. Technologien für Hochverfügbarkeit
4.2 Microsoft Windows Server 2003 Clustering Services
4.3 Hochverfügbare Server
4.3
hochverfügbare server
Um einen Server hochverfügbar zu halten müssen die wichtigsten Hardwarekomponenten ausfallsicher ausgelegt sein. Bei einem Ausfall einer Komponente muss eine andere deren Aufgaben übernehmen.
Weiters müssen die Komponenten eines hochverfügbaren Servers so weit als möglich während des laufenden
Betriebes austauschbar sein (Hot Swap).
Insbesondere folgende Hardwarekomponenten eines Servers müssen redundant ausgeführt werden:
Lüfter
Mehrere im laufenden Betrieb austauschbare Lüfter sorgen in einem hochverfügbaren Server für eine adäquate
Kühlung der wichtigsten Komponenten. Sollte ein Lüfter ausfallen, wird die Leistung der anderen Lüfter erhöht,
um die notwendige Kühlung bis zum Tausch des defekten Lüfters aufrecht zu erhalten.
Netzteile
Für einen hochverfügbaren Server müssen mindestens zwei im laufenden Betrieb austauschbare Netzteile mit
eigenen Stromverbindungen (zu unterschiedlichen Stromanbietern) implementiert werden.
Systemplatten
Zwei im laufenden Betrieb austauschbare Festplatten bilden in Kombination mit einem RAID-Controller ein
RAID-1-Array für das Betriebssystem.
Speicher
In einem hochverfügbaren Server unterstützt das Speichersubsystem Redundanzfunktionalitäten, wie z.B. den
Austausch von defekten DIMMs (Hot Swap), die Erweiterung durch neue DIMMs (Hot Add) im laufenden Betrieb
oder die Spiegelung von Speicher (Memory Mirroring). Zusätzliche tägliche automatische Speichertests zur
Erkennung von Fehlern unterstützen bei der Verhinderung von Serverausfällen durch Speicherfehler.
57
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 58
Netzwerkanbindung
In einem hochverfügbaren Server wird die Netzwerkanbindung mit mindestens zwei Netzwerkadaptern pro
LAN-Segment implementiert, wobei das Heartbeat-LAN in einer Clusterkonfiguration die Ausnahme bildet.
Diese Netzwerkadapter werden durch die Verwendung von spezieller Software zu einem virtuellen Netzwerkadapter zusammengefasst (Teaming). Weiters unterstützt diese Software insbesondere die folgenden Funktionalitäten:
Ausfallsicherheit
Bei einem Ausfall eines Netzwerkadapters (Network Interface Card – NIC), einer Netzwerkverbindung (Kabel)
oder des Link-Partners (z.B. Switch) übernimmt automatisch ein anderer Netzwerkadapter die Aufgaben. Durch
dieses Design wird die Verfügbarkeit des Servers am Netzwerk gesichert.
Link-Aggregation
Durch Link-Aggregation werden mehrere Netzwerkadapter zu einer logischen Verbindung kombiniert, um eine
größere Bandbreite zu erreichen.
IEEE 802.3ad definiert den Protokollstandard für Link-Aggregation.
Weitere Bezeichnungen dafür sind „Trunking“, „Channel Bundling“ oder „Teaming“.
Das Link-Aggregation-Protokoll fasst zwei oder mehrere parallele Netzwerkverbindungen zu einer logischen Verbindung zusammen. Dieses Verfahren funktioniert nur bei Vollduplex-Verbindungen mit gleicher Übertragungsrate.
Die Bündelung mehrerer Verbindungen bringt zwei wesentliche Vorteile mit sich:
Geschwindigkeit, Lastverteilung
Die gesendeten Pakete werden auf alle Leitungen aufgeteilt; die Bandbreite wird vervielfacht.
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 59
4. Technologien für Hochverfügbarkeit
4.3 Hochverfügbare Server
Ausfallsicherheit
Fallen eine oder mehrere Leitungen aus, wird auf die verbleibenden Leitungen verteilt. Es ergibt sich eine
redundante Netzwerkanbindung.
Voraussetzungen
Unterstützt werden nur direkte Verbindungen oder Verbindungen über Switches. Hubs werden nicht unterstützt.
Alle verwendeten Switches müssen die Aggregation von Ports unterstützen.
Die Treiber der Netzwerkadapter müssen das Bündeln von mehreren Netzwerkadaptern unterstützen.
Ethernet-Pakete mit gleicher MAC-Adresse werden nicht über mehrere Kanäle eines Aggregates verteilt. Bei
einer Verbindung von Gerät A mit 1 Gbit-NIC zu Gerät B mit 3 x 100 Mbit-NIC erreicht man weiterhin maximal 100 Mbit/s. Link-Aggregation macht somit nur bei Servern oder Switch-Interconnects (Direktverbindungen zwischen Switches) Sinn.
SAN-Anbindung
Die SAN-Anbindung erfolgt durch zwei Host Bus Adapter (HBA), die durch spezielle Software (Multipathing) als
eine logische SAN-Verbindung dargestellt werden. Weiters unterstützt diese Software insbesondere die folgenden Funktionalitäten:
Multipathing
Durch ein hochverfügbares SAN-Design stehen einem Server mehrere mögliche Pfade zum Storagesystem zur
Verfügung. Die Multipathing-Software verwaltet diese Möglichkeiten und bietet dem Server somit eine konsistente Sicht auf das Storagesystem.
59
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 60
Failover-Recovery
Bei Verlust eines Pfades, z.B. durch HBA-Fehler oder Kabelfehler, erfolgt eine automatische Auswahl eines neuen Pfades, ohne Unterbrechung der Applikation.
Load-Balancing
Die Multipathing-Software muss weiters die Funktionalität unterstützen, die Last gleichmäßig über alle möglichen Pfade zu verteilen.
Zusammenfassung
Abbildung 19
Hochverfügbare Server
05Referenzarchitektur
04.04.2005
12:25 Uhr
Seite 61
4. Technologien für Hochverfügbarkeit
4.3 Hochverfügbare Server
61
05Referenzarchitektur
5
04.04.2005
12:25 Uhr
Seite 62
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 63
die subsysteme der faba5 soft referenzarchitektur 5.0
Bei der Festlegung der Fabasoft Referenzarchitektur wurde insbesondere auf die Skalierbarkeit,
Managebarkeit und Verfügbarkeit aller Subsysteme und des Gesamtsystems geachtet.
Die Verfügbarkeit eines Gesamtsystems wird aus den Verfügbarkeiten der parallel und seriell geschalteten Komponenten entlang des Datenpfades – erkennbar im Blockdiagramm des Systems – berechnet.
Die Verfügbarkeit eines Gesamtsystems ist als das Produkt der Verfügbarkeiten der einzelnen seriell geschalteten Subsysteme definiert.
Die Verfügbarkeit der einzelnen Subsysteme wird durch die Parallelschaltung (redundante Gruppierung) hochverfügbarer Komponenten (z.B. hochverfügbarer Server) erhöht.
Beispiel
Verfügbarkeit eines Backendserver-Clusters oder eines Datenbankserver-Clusters. Die MTBF für einen
hochverfügbaren Server wird vom Hardwarehersteller mit etwa 15000 Stunden (für die Hardware) angegeben. Die MTTR wird hier mit 8 Stunden angenommen.
Die Verfügbarkeit eines einzelnen solchen Servers (HW) beträgt: 99,946695 %.
Die Verfügbarkeit eines Clusters (zwei solche Server) beträgt: 99,999972 %. Dies unter der idealisierten
Annahme, dass ein Fehler eines Clusterknotens den anderen Clusterknoten nicht beeinflusst und ohne
Berücksichtigung der Software, welche aber insbesondere in Form der Treiber nach unserer Erfahrung ein
entscheidender Einflussfaktor auf die Verfügbarkeit ist.
In diesem Kapitel werden die einzelnen Subsysteme (insbesondere jene im Rechenzentrum des Diensteanbieters) hinsichtlich deren Teilaufgaben und geeigneter Maßnahmen zur Erhöhung deren Verfügbarkeit (Redundanz)
beschrieben.
63
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 64
Darüber hinaus werden Beispiele für Implementierungen der einzelnen Subsysteme auf Basis jener Hardwareund Softwarekomponenten angeführt, die in den Labors bei Fabasoft für Testzwecke zur Simulation einer Produktionsumgebung herangezogen werden.
Die Beispiele für die Backend-Infrastrukturkomponenten sind so gewählt, dass mit der angeführten Beispielkonfiguration nach Erfahrungswerten etwa 2000 registrierte Benutzer arbeiten können.
Hinsichtlich der technischen Kenndaten zu den einzelnen Beispielen, der Installations- und Gebrauchshinweise
wird auf die Datenblätter und die technische Dokumentation des jeweiligen Herstellers verwiesen.
5.1
arbeitsplatz (webbrowser-client)
Beschreibung
Arbeitsplatzrechner dienen der Kommunikation der Benutzer mit den Fabasoft Webanwendungen unter Verwendung eines Webbrowsers und der Bearbeitung der in der Fabasoft Produktionsumgebung gespeicherten Dokumente mithilfe entsprechender Anwendungssoftware.
Für lokale Client-Anwendungen, die mit der Betriebssystem-Umgebung des Arbeitsplatzes interagieren, stehen
Controls zur Verfügung. Das betrifft z.B.
die Integration von Bearbeitungswerkzeugen am Webbrowser-Client, etwa Microsoft Office-Anwendungen,
das Ausführen einer Digitalen Signatur am Webbrowser-Client,
die Nutzung von COM-Add-ins für eingebundene Schaltflächen in Microsoft Outlook oder Microsoft Word
oder die Einbindung von Arbeitsplatz-Scannern.
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 65
5. Die Subsysteme der Fabasoft Referenzarchitektur 5.0
5.1 Arbeitsplatz (Webbrowser-Client)
Verfügbarkeit
Die Arbeitsplätze sollten so installiert und konfiguriert werden, dass jeder Anwender jeden Arbeitsplatz benutzen kann. Somit kann der Benutzer bei Ausfall seines Arbeitsplatzes auf einen anderen Webbrowser-Client
wechseln.
Zusammenfassung
Abbildung 20
Subsystem 1: Arbeitsplatz
(Webbrowser-Client)
65
05Referenzarchitektur
5.2
04.04.2005
12:26 Uhr
Seite 66
arbeitsplatz-lan (client-lan)
Beschreibung
Das Arbeitsplatz-LAN verbindet die Arbeitsplatzrechner mit der Client-Firewall.
Je nach Arbeitsprofil der Benutzer muss die Dimensionierung des Arbeitsplatz-LANs individuell vorgenommen
werden. Folgende Faktoren sollten bei der Wahl einer Bandbreite für das Arbeitsplatz-LAN berücksichtigt werden:
Anzahl der Benutzer
Arbeitsprofil der Benutzer (Datenvolumen, gleichzeitige Nutzung etc.)
durchschnittliche Größe von Dokumenten
andere Anwendungen auf demselben LAN (Internet, Intranet, E-Mail, File- und Print-Services usw.)
Die Authentifizierung der Benutzer im Microsoft-Umfeld erfolgt über Microsoft Active Directory. Benutzer müssen sowohl im Arbeitsplatz-LAN (z.B. bei der Anmeldung am Microsoft Windows Arbeitsplatz) als auch im
Backend-LAN (durch die Microsoft Internet Information Serivces bzw. die Fabasoft Components Webservices)
authentifiziert werden.
Bei Verwendung einer übergeordneten Microsoft Windows-Domäne kann zur Authentifizierung Microsoft
Windows-Integrated-Authentication genutzt werden. Die Domaincontroller sind dann jeweils redundant im
Arbeitsplatz-LAN und Backend-LAN verfügbar. Die Details zur Verteilung einer Microsoft Windows-Domäne
über Firewalls hinweg sind im Einzelfall mit Microsoft abzuklären.
Besteht keine übergeordnete Microsoft Windows-Domäne, so sind entweder HTTP-Basic-Authentication, die
Nutzung von Zertifikaten (X.509) oder MOA-ID möglich. Im Fall der Verwendung von X.509-Zertifikaten wird ein
Betriebssystembenutzer mit einem Zertifikat assoziiert. Bei Einsatz von MOA-ID wird über einen MOA-ID-Server
mittels SAML (Security Assertions Markup Language [Oasi04]) authentisiert und über ein SAML-Artefakt
identifiziert. Eine Zuordnung zu einem Betriebssystembenutzer ist nicht erforderlich.
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 67
5. Die Subsysteme der Fabasoft Referenzarchitektur 5.0
5.2 Arbeitsplatz-LAN (Client-LAN)
Bei Verwendung von Basic-Authentication werden die Benutzerdaten (Benutzername und Passwort) unverschlüsselt (Base64-Kodierung) im Netzwerk übertragen.
Bei der Verwendung von HTTPS oder anderen Verschlüsselungstechnologien wird der gesamte Netzwerkverkehr
verschlüsselt. Die daraus resultierende Prozessormehrbelastung (am Arbeitsplatz sowie entweder am Lastverteiler oder am Webserver je nach Endpunkt für die Verschlüsselung) muss bei der Ressourcenplanung entsprechend berücksichtigt werden.
Im Arbeitsplatz-LAN wird ein DNS-Server (Domain Name System Server) für die Adressierung des Lastverteilers
verwendet. Die virtuelle Adresse des Lastverteilers ist damit über einen Namen ansprechbar.
Bei Verwendung eines Proxyservers oder der Verwendung von NAT stehen die Möglichkeiten der Lastverteilung
und der Affinität auf Basis von IP-Adressen nicht zur Verfügung!
Hochverfügbarkeit
Hochverfügbarkeit beim Netzwerk erreicht man durch:
Zwei Netzwerkanschlüsse je Arbeitsplatz
Redundante Netzwerk-Switches
Bei Domaincontroller wird Hochverfügbarkeit erzielt durch:
Hardware: hochverfügbare Server
Software: Active Directory des Microsoft Windows Server 2003
File- und Print-Server sollten ebenfalls hochverfügbar ausgelegt werden:
Hardware: hochverfügbare Server
Software: Microsoft Windows Server 2003 Clustering Services
67
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 68
Zusammenfassung
Abbildung 21
Subsystem 2:
Arbeitsplatz-LAN
(Client-LAN)
5.3
client-firewall
Beschreibung
Zwischen dem Client-LAN und dem WAN wird eine Firewall zum Schutz des Arbeitsplatz-LANs installiert. Da als
Protokoll zwischen den Arbeitsplätzen und den Webservern ausschließlich HTTP (bzw. HTTPS) verwendet wird,
sollte die Client-Firewall jeden anderen Netzwerkverkehr blockieren (Ausnahme: sowohl im Arbeitsplatz-LAN als
auch im Backend-LAN wird eine übergreifende Microsoft Windows-Domäne genutzt). Zu beachten ist auch, dass
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 69
5. Die Subsysteme der Fabasoft Referenzarchitektur 5.0
5.2 Arbeitsplatz-LAN (Client-LAN)
5.3 Client-Firewall
insbesondere für den Zugriff auf Dokumente das auf HTTP basierende WebDAV-Protokoll verwendet wird und
die Client-Firewall diese Erweiterungen zulassen muss.
Hochverfügbarkeit
Die Client-Firewall wird als Hochverfügbarkeitspaar ausgeführt.
Zusammenfassung
Abbildung 22
Subsystem 3:
Client-Firewall
69
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 70
Beispielkonfiguration
Als Client-Firewall wird eine Cisco PIX 515E verwendet. Die Firewall lässt nur HTTP und HTTPS auf die
definierten Webserver-Farmen durch. Über einen Router des ISPs (in der Beispielkonfiguration
192.84.221.200) wird die Verbindung zum Anschaltknoten hergestellt.
PIX Version 6.3(1)
hostname clientfw
domain-name fabasoft.com
interface ethernet0 auto
nameif ethernet0 outside security0
ip address outside 192.84.221.98 255.255.255.0
interface ethernet1 100full
nameif ethernet1 inside security100
ip address inside 172.16.0.1 255.255.0.0
fixup protocol http 80
fixup protocol https 443
names
name 172.30.0.200 webfarm1
name 172.30.0.201 webfarm2
object-group network webfarm
network-object webfarm1 255.255.255.255
network-object webfarm2 255.255.255.255
object-group service web tcp
description HTTP + HTTPS
port-object eq http
port-object eq https
access-list inside_access_in permit tcp any object-group
webfarm object-group web
access-list inside_access_in deny tcp any any
access-list outside_access_in deny tcp any any
access-group outside_access_in in interface outside
access-group inside_access_in in interface inside
static (inside,outside) 172.16.0.0 172.16.0.0
netmask 255.255.0.0 0 0
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 71
5. Die Subsysteme der Fabasoft Referenzarchitektur 5.0
5.3 Client-Firewall
5.4 WAN
static (outside,inside) 172.20.0.200 172.20.0.200
netmask 255.255.255.255 0 0
static (outside,inside) 172.20.0.201 172.20.0.201
netmask 255.255.255.255 0 0
route inside 0.0.0.0 0.0.0.0 172.16.0.254 1
route outside 172.30.0.0 255.255.0.0 192.84.221.200 1
Quelltext 1: Beispielkonfiguration einer Client-Firewall (Cisco PIX 515E)
5.4
wan
Beschreibung
Das WAN verbindet die Diensteanbieter (Rechenzentren, Service-Provider) mit den Anwendern, konkret die
Client-Firewall mit dem Anschaltknoten.
Die Bandbreite kann je nach verwendeter Netzwerktechnologie in Stufen erhöht werden. Darüber hinaus können Leitungen zu einer virtuellen Leitung zusammengeschaltet werden, wobei sich die Gesamtbandbreite als die
Summe der einzelnen Bandbreiten ergibt.
Die Telekommunikationsgesellschaften bieten definierte Service-Level für ihre Kommunikationslösungen an,
wobei hier der Anbieter das Management der Kommunikationsinfrastruktur übernimmt.
Nichtsdestotrotz muss die WAN-Infrastruktur laufend hinsichtlich Verfügbarkeit und Auslastung (verfügbarer
Bandbreite) überwacht werden.
Hochverfügbarkeit
Diese wird über eine duale Anbindung durch zwei unterschiedliche Anbieter auf Basis unterschiedlicher Technologien und entweder einer automatischen Lastverteilung zwischen diesen Netzwerken oder einer automatischen Umschaltung auf das sekundäre Netzwerk im Fehlerfall erreicht.
71
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 72
Zusammenfassung
Abbildung 23
Subsystem 4: WAN
5.5
anschaltknoten
Beschreibung
Der Anschaltknoten verbindet das WAN mit der Server-Firewall und ist durch seine Positionierung außerhalb der
Server-Firewall im Internet exponiert. Aus Sicherheitsgründen ist die professionelle Installation und laufende
Beobachtung dieser Komponente entsprechend wichtig.
Der Anschaltknoten wird entsprechend seiner Aufgabe als Router ausgeführt.
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 73
5. Die Subsysteme der Fabasoft Referenzarchitektur 5.0
5.4 WAN
5.5 Anschaltknoten
Hochverfügbarkeit
Der Anschaltknoten wird als Hochverfügbarkeitspaar ausgeführt.
Zusammenfassung
Abbildung 24
Subsystem 5:
Anschaltknoten
Beispielkonfiguration
Als Anschaltknoten wird ein Cisco 1721 Modular Access Router mit zwei Fast-Ethernet-Interfaces verwendet. Der Anschaltknoten verbindet sich über einen Router des ISPs (in der Beispielkonfiguration
192.84.221.100) sowohl ins Internet (zum Versenden von Mails) als auch zur Client-Firewall.
73
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 74
version 12.3
service timestamps debug datetime msec
service timestamps log datetime msec
!
hostname serveras
!
boot-start-marker
boot-end-marker
!
no aaa new-model
ip subnet-zero
!
!
ip cef
no scripting tcl init
no scripting tcl encdir
!
!
interface FastEthernet0
ip address 192.168.0.2 255.255.255.0
speed auto
full-duplex
!
interface FastEthernet1
ip address 192.84.221.99 255.255.255.0
no fair-queue
!
ip classless
ip route 0.0.0.0 0.0.0.0 192.84.221.100
ip route 172.20.0.0 255.255.0.0 192.168.0.1
ip route 172.30.0.0 255.255.0.0 192.168.0.1
!
!
no scheduler allocate
!
End
Quelltext 2: Beispielkonfiguration eines Anschaltknotens (Cisco 1721 Modular Access Router)
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 75
5. Die Subsysteme der Fabasoft Referenzarchitektur 5.0
5.5 Anschaltknoten
5.6 Server-Firewall
5.6
server-firewall
Beschreibung
Zwischen dem Anschaltknoten, der die Verbindung zum WAN herstellt und den Servernetzwerken wird die Server-Firewall zum Schutz der Servernetzwerke (des Rechenzentrums) installiert. Da als Protokoll zwischen den
Arbeitsplätzen und den Webservern ausschließlich HTTP (bzw. HTTPS) verwendet wird, sollte auch die ServerFirewall jeden anderen Netzwerkverkehr (ausgenommen SMTP falls benötigt) blockieren (Ausnahme: sowohl im
Arbeitsplatz-LAN als auch im Backend-LAN wird eine übergreifende Microsoft Windows-Domäne verwendet).
Hochverfügbarkeit
Die Server-Firewall wird als Hochverfügbarkeitspaar ausgeführt.
75
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 76
Zusammenfassung
Abbildung 25
Subsystem 6:
Server-Firewall
Beispielkonfiguration
Als Server-Firewall wird eine Cisco PIX 515E verwendet. Die Firewall lässt nur HTTP und HTTPS auf die definierten Webserver-Farmen durch. Aus dem Backend-LAN dürfen nur die DNS-Server über Portnummer 53
bzw. die Mailserver via Portnummer 25 in das Internet.
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 77
5. Die Subsysteme der Fabasoft Referenzarchitektur 5.0
5.6 Server-Firewall
PIX Version 6.3(1)
hostname serverfw
domain-name fabasoft.com
interface ethernet0 auto
nameif ethernet0 outside security0
ip address outside 192.168.0.1 255.255.255.0
interface ethernet1 100full
nameif ethernet1 inside security100
ip address inside 172.20.0.1 255.255.0.0
fixup
fixup
fixup
fixup
protocol
protocol
protocol
protocol
domain 53
http 80
https 443
smtp 25
names
name 172.20.0.50 dnsserver1
name 172.20.0.51 dnsserver2
name 172.20.0.100 mailserver1
name 172.20.0.101 mailserver2
name 172.30.0.200 webfarm1
name 172.30.0.201 webfarm2
object-group network dnsserver
network-object dnsserver1 255.255.255.255
network-object dnsserver2 255.255.255.255
object-group network mailserver
network-object mailserver1 255.255.255.255
network-object mailserver2 255.255.255.255
object-group network webfarm
network-object webfarm1 255.255.255.255
network-object webfarm2 255.255.255.255
object-group service web tcp
description HTTP + HTTPS
port-object eq http
port-object eq https
access-list inside_access_in permit tcp object-group mailserver any eq smtp
access-list inside_access_in permit tcp object-group dnsserver any eq domain
access-list inside_access_in deny tcp any any
access-list outside_access_in permit tcp any object-group
webfarm object-group web
access-list outside_access_in deny tcp any any
access-group outside_access_in in interface outside
access-group inside_access_in in interface inside
77
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 78
global (outside) 1 interface
nat (inside) 1 172.20.0.50 255.255.255.255 0 0
nat (inside) 1 172.20.0.51 255.255.255.255 0 0
nat (inside) 1 172.20.0.100 255.255.255.255 0 0
nat (inside) 1 172.20.0.101 255.255.255.255 0 0
static (outside,inside) 172.16.0.0 172.16.0.0 netmask 255.255.0.0 0 0
static (inside,outside) 172.20.0.200 172.20.0.200
netmask 255.255.255.255 0 0
static (inside,outside) 172.20.0.201 172.20.0.201
netmask 255.255.255.255 0 0
route outside 0.0.0.0 0.0.0.0 192.168.0.2 1
route inside 172.20.0.0 255.255.0.0 172.20.0.254
route inside 172.30.0.0 255.255.0.0 172.20.0.254
Quelltext 3: Beispielkonfiguration einer Server-Firewall (Cisco PIX 515E)
5.7
lastverteiler (load-balancer, content-switch)
Beschreibung
Eine gute Skalierbarkeit durch möglichst gleichmäßige Verteilung der Benutzeranfragen auf die Webserver kann
durch Einsatz eines Lastverteilers (Load-Balancer) erreicht werden. In gleicher Weise werden die Konvertierungsanfragen und die E-Mail-Anfragen der Webserver an die Konvertierungsserver bzw. die Mailserver durch
den Einsatz des Lastverteilers verteilt.
Der Lastverteiler stellt eine virtuelle IP-Adresse zur Verfügung und verteilt die eintreffenden Anfragen der Benutzer entsprechend dem konfigurierten Verteilungsalgorithmus und Sitzungsaffinität (z.B. Least-Connections und
Affinität mittels Cookies) auf die Webserver-Farm und die Konvertierungsanfragen der Fabasoft Components
Webservices auf die Konvertierungsserver-Farm.
Um die notwendige Performance (insbesondere auch durch die Affinität) und Stabilität zu erreichen, ist
in der Fabasoft Referenzarchitektur 5.0 ausschließlich eine hardwarebasierte Lösung zur Lastverteilung vorgesehen.
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 79
5. Die Subsysteme der Fabasoft Referenzarchitektur 5.0
5.6 Server-Firewall
5.7 Lastverteiler (Load-Balancer, Content-Switch)
Der Lastverteiler ist die einzige Komponente einer Fabasoft Produktionsumgebung, die für die Arbeitsplätze netzwerkmäßig sichtbar ist. Der Lastverteiler ist für die Arbeitsplätze wie ein einziges Fabasoft Components Webservice mit einer dedizierten IP-Adresse erreichbar.
Über unterschiedliche Verfahren (z.B. ICMP, HTTP) prüft der Lastverteiler laufend den Status der Services jener
Server-Farmen, auf die er Anfragen zu verteilen hat. Bei Ausfall eines Fabasoft Components Webservice (Konvertierungsservice) erhält genau dieses Fabasoft Components Webservice (Konvertierungsservice) keine neuen
Benutzeranfragen mehr.
Eine reine Reihum- oder Gleichverteilungs-Zuteilung (z.B. „Least Connections“, „Round Robin“) der Benutzeranfragen ist nicht ausreichend. Die – insbesondere aus Gründen der geringeren Antwortzeiten erforderliche –
Zuordnung von aufeinander folgenden Anfragen derselben Benutzersitzung (Session) zum selben Fabasoft Components Webservice wird mittels Affinität der Sitzung sichergestellt.
Hochverfügbarkeit
Zwei Cisco 6500 Content Switch Modules (CSM) können als fehlertolerante Konfiguration (Hochverfügbarkeitspaar) definiert werden. Dabei wird der Verbindungsstatus zu den Benutzersitzungen in Echtzeit auf das passive
CSM (Standby-CSM) repliziert. Im Falle eines Fehlerstatus am aktiven CSM übernimmt dieses Standby-CSM alle
aktiven Verbindungen, ohne dass dies der Anwender bemerkt. Dies ist insbesondere für Transaktionen und verschlüsselte Sitzungen eine wesentliche Funktionalität.
Darüber hinaus können CSM auch geographisch auf bis zu 128 Standorte verteilt eingesetzt werden (Global Server Load Balancing: GSLB).
79
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 80
Zusammenfassung
Abbildung 26
Subsystem 7: Lastverteiler
Beschreibung
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 81
5. Die Subsysteme der Fabasoft Referenzarchitektur 5.0
5.7 Lastverteiler (Load-Balancer, Content-Switch)
Abbildung 27
Subsystem 7: Lastverteiler
Hochverfügbarkeit,
Beispielkonfiguration
Beispielkonfiguration
Als Lastverteiler wird ein Cisco Catalyst 6500 mit Content Switch Module (WS-X6066-SLB-APC) verwendet. Dieser Lastverteiler dient weiters (unterteilt in mehrere VLANs) als zentraler Switch für das FrontendLAN und das Backend-LAN.
Am Lastverteiler ist eine (oder mehrere) Webserver-Farm für alle Fabasoft Components Webservices
eingerichtet, die nach dem Verteilungsalgorithmus Least-Connections arbeitet. Neue Anfragen ohne
Benutzerkennung werden dadurch dem Fabasoft Components Webservice mit der geringsten Anzahl
81
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 82
aktiver Sitzungen zugeteilt. Auch für alle Fabasoft Components Konvertierungsservices ist eine WebserverFarm konfiguriert. Bei dieser ist jedoch keine Sitzungsaffinität anzuwenden.
Die Zuordnung von aufeinander folgenden Anfragen derselben Benutzersitzung wird über Cookies sichergestellt. Weiters wird durch den eingesetzten Cisco Catalyst 6500 über unterschiedliche Verfahren ständig
der Status der eingesetzten Webserver (ICMP) und Fabasoft Components Webservices (HTTP) geprüft. Bei
Ausfall eines Fabasoft Components Webservice erhält dieses Fabasoft Components Webservice keine
neuen Benutzeranfragen mehr.
module ContentSwitchingModule 8
! Backend LAN
vlan 101 server
ip address 172.20.0.252 255.255.0.0
alias 172.20.0.253 255.255.0.0
!
! Client LAN
vlan 102 client
ip address 172.30.0.252 255.255.0.0
gateway 172.30.0.254
!
! Frontend LAN
vlan 103 server
ip address 172.21.0.252 255.255.0.0
alias 172.21.0.253 255.255.0.0
!
! Natpool
natpool CLIENTS 172.21.250.1 172.21.250.100 netmask 255.255.0.0
natpool SERVERS 172.20.250.1 172.20.250.100 netmask 255.255.0.0
! PING Probe
probe PING icmp
interval 2
retries 2
receive 2
!
! HTTP Probe
probe WEBTEST http
credentials <username> <password>
request method get url
/fsc/fscasp/content/bin/fscvext.dll?h&stallmsecsmax=5000
expect status 200
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 83
5. Die Subsysteme der Fabasoft Referenzarchitektur 5.0
5.7 Lastverteiler (Load-Balancer, Content-Switch)
interval 10
retries 5
failed 10
open 2
receive 15 y
!
! Webserverfarm 1
serverfarm WEBFARM1
nat server
nat client CLIENTS
predictor leastconns
real 172.21.100.1 80
inservice
real 172.21.100.2 80
inservice
real 172.21.100.1 81
inservice
real 172.21.100.2 81
inservice
real 172.21.100.1 82
inservice
real 172.21.100.2 82
inservice
real 172.21.100.1 83
inservice
real 172.21.100.2 83
inservice
probe PING
probe WEBTEST
!
! Webserverfarm 2
serverfarm WEBFARM2
nat server
nat client CLIENTS
predictor leastconns
real 172.21.101.1 80
inservice
real 172.21.101.2 80
inservice
real 172.21.101.1 81
inservice
real 172.21.101.2 81
inservice
real 172.21.101.1 82
inservice
real 172.21.101.2 82
inservice
83
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 84
real 172.21.101.1 83
inservice
real 172.21.101.2 83
inservice
probe PING
probe WEBTEST
!
! Conversionserverfarm 1
serverfarm CONVFARM1
nat server
nat client SERVERS
predictor leastconns
real 172.20.100.11 80
inservice
real 172.20.100.12 80
inservice
real 172.20.100.13 80
inservice
probe PING
probe WEBTEST
!
sticky 10 cookie SERVER timeout 120
!
vserver FSCWEBFARM1
virtual 172.30.0.200 tcp www
serverfarm WEBFARM1
sticky 120 group 10
pending 15
persistent rebalance
parse-length 4000
client 0.0.0.0 0.0.0.0
inservice
!
vserver FSCWEBFARM2
virtual 172.30.0.201 tcp www
serverfarm WEBFARM2
sticky 120 group 10
pending 15
persistent rebalance
parse-length 4000
client 0.0.0.0 0.0.0.0
inservice
!
vserver FSCCONVFARM1
virtual 172.20.0.200 tcp www
serverfarm CONVFARM1
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 85
5. Die Subsysteme der Fabasoft Referenzarchitektur 5.0
5.7 Lastverteiler (Load-Balancer, Content-Switch)
5.8 Frontend-LAN
pending 15
no persistent rebalance
client 172.20.0.0 255.255.0.0
inservice
Quelltext 4: Beispielkonfiguration eines Lastverteilers (Cisco Catalyst 6500 Content Switch Module)
5.8
frontend-lan
Beschreibung
Das Frontend-LAN (typischerweise 1 Gbit/s Ethernet) verbindet den Lastverteiler mit der Webserver-Farm. Über
dieses LAN werden nur Benutzeranfragen bzw. die Antworten der Webserver übertragen.
Das Frontend-LAN wird als ein logisch und physikalisch eigenständiges Netz implementiert.
Hochverfügbarkeit
Die Verbindung zwischen dem Lastverteiler und der Webserver-Farm muss hoch verfügbar ausgelegt sein. Es
dürfen maximal einige wenige Webserver gleichzeitig ausfallen.
85
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 86
Zusammenfassung
Abbildung 28
Subsystem 8:
Frontend-LAN
Beispielkonfiguration
Die Cisco Catalyst 6500 Series Supervisor Engine 720 Netzwerkkomponente kann in einer sogenannten
Dual-Supervisor-Konfiguration zum Einsatz kommen. Dadurch wird der Protokollstatus zwischen der
primären und der redundanten Supervisor-Engine laufend abgeglichen. Ein Stateful-Failover ist in weniger
als drei Sekunden möglich. Die redundante Supervisor-Engine kann bei Bedarf im laufenden Betrieb
getauscht werden (hot-swapping of Standby Supervisor Engine).
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 87
5. Die Subsysteme der Fabasoft Referenzarchitektur 5.0
5.8 Frontend-LAN
5.9 Webserver-Farm
Die Webserver werden aus Redundanzgründen an möglichst vielen Line-Cards angeschlossen, welche
direkt mit der Supervisor-Engine verbunden sind (Fabric Enabled) [CiSy04i].
5.9
webserver-farm
Beschreibung
Die Webserver-Farm besteht aus der für das gewünschte Antwortzeitverhalten nötigen Anzahl an Webservern.
Bei der Auslegung ist zu beachten, dass der festgelegte Service-Level auch bei einem allfälligen Fehlerstatus
einzelner Webserver noch eingehalten werden kann.
Für unterschiedliche Benutzergruppen sollten jeweils dedizierte Webserver-Farmen definiert werden. Dies gilt
insbesondere auch für die Verwendung von Webservern als Anwendungsintegrationsserver.
Die eintreffenden Benutzeranfragen werden vom Microsoft Internet Information Service an den Thread-Pool des
Fabasoft Components Webservice (Web-Tiers der verteilten Anwendung) weitergereicht. Die verteilte Anwendung implementiert mit dem Fabasoft Components Webservice die Verarbeitungslogik (Business Logic: Fabasoft
Components Kernel) und generiert die Darstellung (HTML für den Webbrowser-Client: VAPPs). Das Fabasoft
Components Webservice verarbeitet die Benutzeranfragen durch den Zugriff auf die von den Backendservern
verwalteten Daten. Die Kommunikation zwischen Fabasoft Components Webservices und Backendservices
erfolgt über ein RPC-Protokoll auf TCP/IP-Basis.
Das Fabasoft Components Webservice mit dem Fabasoft Components Kernel stellt die grundlegende Steuerungslogik dar. Dieses kommuniziert über LAN-Verbindungen mit den Backendservices. Durch den Fabasoft Components Kernel wird das Objektmodell zur Verfügung gestellt, die Objektplatzierung und der Zugriffsschutz festgelegt bzw. überprüft, Eigenschaften werden zwischengespeichert, Methodenaufrufe zugeteilt und Transaktionen ausgeführt.
87
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 88
Performance-Überlegungen
Der Durchsatz der Webserver hängt vor allem von der CPU-Leistung ab, daher werden leistungsfähige Dualprozessor-Systeme in der Bauhöhe 1U („Pizzaboxen“) eingesetzt. Weiters bestimmt die Geschwindigkeit
der Systemplatte den Durchsatz. Es werden daher SCSI-Festplatten mit mindestens 10000 U/min (besser
15000 U/min) verwendet. Aktuell kommen Systeme mit 2 GB Hauptspeicher und 36 GB Festplattengröße zum
Einsatz.
Blade-Systeme ([IBMC04e], [HePa04d]) mit lokalen IDE- oder SATA-Festplatten sind ebenfalls erhältlich und aus
Platzgründen interessant. Zu berücksichtigen sind bei der Verwendung von Blade-Systemen aber insbesondere
die im Vergleich zu SCSI-Festplatten unterschiedliche IO-Performance, das Systemmanagement z.B. des integrierten Netzwerk-Switches sowie der Netzwerkdurchsatz durch die gemeinsame Nutzung der Netzwerkverbindung durch mehrere Blades.
Die Webserver sind sowohl mittels Frontend-LAN mit dem Lastverteiler als auch mittels Backend-LAN mit den
Backendservern und den sonstigen Servern verbunden. Sie benötigen daher zwei Netzwerk-Interfaces
(dual-homed, kein Routing), wobei zumindest das Backend-LAN-Interface ein Gigabit-Ethernet-Interface sein
sollte.
Auf den Webservern sollte die Anzahl der eingesetzten Fabasoft Components Webservices gleich der Anzahl der
logischen Prozessoren sein (2 Prozessoren mit aktiviertem Hyperthreading = 4 logische Prozessoren = 4 Fabasoft
Components Webservices auf einem Webserver).
Als unverbindlicher Erfahrungswert für die Anzahl der Webserver gilt:
Anzahl der registrierten Benutzer / 50.
Aus Gründen der Ausfallsicherheit sollten zumindest zwei Webserver vorgesehen werden. Für 2000 registrierte
Benutzer würde man demnach etwa 40 Webserver einsetzen.
Erhöhte Applikationsanforderungen, Virenscanner und/oder HTTPS mit dem Endpunkt (der Terminierung) im
Microsoft Internet Information Service können zu signifikant anderen Auslegungen (zu einem deutlich höheren
Bedarf an Webservern) führen.
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 89
5. Die Subsysteme der Fabasoft Referenzarchitektur 5.0
5.9 Webserver-Farm
Hochverfügbarkeit
Da die Fabasoft Components Webservices als Server-Farm durch den Lastverteiler verwaltet werden, sind
einzelne Ausfälle von Fabasoft Components Webservices bzw. Webservern tolerierbar und die Webserver-Hardware muss selbst nicht hochverfügbar ausgelegt werden. Dennoch sollten die Systemplatten der Webserver
über RAID-1 gespiegelt werden.
Der Lastverteiler verteilt die Benutzeranfragen – unter Berücksichtigung der Sitzungsaffinität – mit dem Verteilungsalgorithmus Least-Connections, oder im Fall von Webservern mit unterschiedlicher Hardware über den
Verteilungsalgorithmus Weighted-Least-Connections.
Der Lastverteiler überwacht kontinuierlich die Fabasoft Components Webservices im Hinblick auf deren
Verfügbarkeit. Im Fehlerfall werden die an ein fehlerhaftes Fabasoft Components Webservice adressierten
Anfragen neu innerhalb der verfügbaren Fabasoft Components Webservices verteilt. Wenn der Anwender
diesen Fehler nicht (bzw. nur minimal) bemerken soll, so dürfen durch das Fabasoft Components Webservice
keine Zustände (beispielsweise Transaktionsdaten) (zwischen-)gespeichert werden (Stateless Services).
Die Webserver-Farm muss im laufenden Betrieb um einzelne Webserver erweitert und verringert werden können (dynamische Rekonfiguration des Lastverteilers).
89
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 90
Zusammenfassung
Abbildung 29
Subsystem 9:
Webserver-Farm
Beschreibung,
Hochverfügbarkeit
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 91
5. Die Subsysteme der Fabasoft Referenzarchitektur 5.0
5.9 Webserver-Farm
5.10 Backend-LAN
Abbildung 30
Subsystem 9:
Webserver-Farm
Beispielkonfiguration
5.10backend-lan
Beschreibung
Das Backend-LAN verbindet alle Server der Fabasoft Produktionsumgebung untereinander. Als BackendLAN wird ein Gigabit-Ethernet verwendet. Durch die wesentlich schnellere Übertragung umfangreicher
Dokumente können beispielsweise deutlich bessere Antwortzeiten bei Anfragen mit Konvertierungen erreicht
werden.
91
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 92
Innerhalb des Backend-LANs werden Firewalls und andere Sicherheitsmaßnahmen aus Performance-Gründen
üblicherweise nicht eingesetzt. Daher muss das Backend-LAN von allen anderen Netzen isoliert werden.
Hochverfügbarkeit
Die Server werden an eine hochverfügbare Switch-Infrastruktur (Hochverfügbarkeitspaare) angeschlossen.
Zusammenfassung
Abbildung 31
Subsystem 10:
Backend-LAN
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 93
5. Die Subsysteme der Fabasoft Referenzarchitektur 5.0
5.10 Backend-LAN
Beispielkonfiguration
Alle Web- und Konvertierungsserver sind einfach mit dem Cisco Catalyst 6500 verbunden (Redundanz durch
den Lastverteiler zusammen mit der jeweiligen Server-Farm).
Alle weiteren Server sind redundant (zwei Kabel an verschiedene Switch-Module) mittels Gigabit-Ethernet
an den Cisco Catalyst 6500 angebunden.
port-channel load-balance src-mac
diagnostic cns publish cisco.cns.device.diag_results
diagnostic cns subscribe cisco.cns.device.diag_commands
!
redundancy
mode rpr-plus
main-cpu
auto-sync running-config
auto-sync standard
!
vlan internal allocation policy ascending
!
vlan 101
name backendlan
!
vlan 102
name clientlan
!
vlan 103
name frontendlan
!
! Teaming Interface Backend LAN
interface Port-channel1
no ip address
logging event link-status
ntp disable
switchport
switchport access vlan 101
switchport mode access
!
! Backend LAN Port
interface GigabitEthernet1/1
no ip address
logging event link-status
switchport
switchport access vlan 101
93
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 94
switchport mode access
!
! Frontend LAN Port
interface GigabitEthernet1/2
no ip address
logging event link-status
switchport
switchport access vlan 103
switchport mode access
!
! Client LAN Port
interface GigabitEthernet1/2
no ip address
logging event link-status
switchport
switchport access vlan 102
switchport mode access
!
! Teaming Port 1 Backend LAN
interface GigabitEthernet7/1
no ip address
logging event link-status
switchport
switchport access vlan 101
switchport mode access
no cdp enable
channel-group 1 mode active
!
! Teaming Port 2 Backend LAN
interface GigabitEthernet7/2
no ip address
logging event link-status
switchport
switchport access vlan 101
switchport mode access
no cdp enable
channel-group 1 mode active
!
! Backend LAN
interface Vlan101
ip address 172.20.0.254 255.255.0.0
no ip proxy-arp
!
! Client LAN
interface Vlan102
ip address 172.30.0.254 255.255.0.0
no ip proxy-arp
!
! Frontend LAN
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 95
5. Die Subsysteme der Fabasoft Referenzarchitektur 5.0
5.10 Backend-LAN
5.11 Konvertierungsserver-Farm
interface Vlan103
no ip address
no ip proxy-arp
!
! Default Route
ip route 0.0.0.0 0.0.0.0 172.20.0.1 1
Quelltext 5: Beispielkonfiguration des Backend-LANs (Cisco Catalyst 6500)
5.11
konvertierungsserver-farm
Beschreibung
Durch die Fabasoft Konvertierungsservices wird die Konvertierung von Inhalten (z.B. von Microsoft OfficeFormaten in PDF oder HTML) ermöglicht.
Konvertierungsanfragen werden von den Fabasoft Components Webservices zu den Fabasoft Components
Konvertierungsservices weitergeleitet. Es erfolgt keine direkte Kommunikation mit dem WebbrowserClient. Auf einem Konvertierungsserver (Server, auf dem die Fabasoft Components Konvertierungsservices
installiert sind) läuft analog zu den Fabasoft Components Webservices im Kontext der Microsoft
Internet Information Services eine ISAPI-Erweiterung, die die Anfragen verarbeitet und ein Fabasoft
Components Kernel, der mit den Fabasoft Components Backendservices kommuniziert. Als
zusätzliche Software wird Anwendungs- und Konvertierungssoftware (z.B. Microsoft Office,
Adobe Acrobat Distiller) benötigt. Konvertierungsanfragen werden unter Verwendung des HTTP-Protokolls
von den Fabasoft Components Webservices an die Fabasoft Components Konvertierungsservices
übermittelt.
Performance-Überlegungen
Der Durchsatz der Konvertierungsservices hängt vor allem von der CPU-Leistung und den Systemplatten ab,
daher werden leistungsfähige Dualprozessor-Systeme in der Bauhöhe 1U („Pizzaboxen“) und SCSI-Festplatten
95
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 96
mit 15000 U/min eingesetzt. Aktuell kommen Systeme mit 4 GB Hauptspeicher und 36 GB Festplattengröße zum
Einsatz.
Blade-Systeme mit lokalen IDE- oder SATA-Festplatten sind ebenfalls erhältlich und aus Platzgründen interessant. Zu berücksichtigen sind bei der Verwendung von Blade-Systemen aber insbesondere die im Vergleich zu
SCSI-Festplatten unterschiedliche IO-Performance, das Systemmanagement z.B. des integrierten NetzwerkSwitches sowie der Netzwerkdurchsatz in Bezug auf die gemeinsame Nutzung der Netzwerkverbindung durch
mehrere Blades.
Die Konvertierungsserver sind via Backend-LAN sowohl mit dem Lastverteiler als auch mit den Backendservern
und den sonstigen Servern verbunden. Sie benötigen daher lediglich ein Netzwerk-Interface, wobei ein GigabitEthernet-Interface verwendet werden sollte.
Auf den Konvertierungsservern sollte die Anzahl der eingesetzten Fabasoft Components Konvertierungsservices
(Fabasoft Components Kernel-Instanzen) gleich der Anzahl der physischen Prozessoren sein (2 physische Prozessoren mit aktiviertem Hyperthreading = 2 Fabasoft Components Konvertierungsservices auf einem Konvertierungsserver).
Der Bedarf an Konvertierungsservern hängt sehr stark vom Systemnutzungsprofil ab, als unverbindlicher Erfahrungswert kann ein Drittel der Anzahl der Webserver-Hardware angenommen werden. Für 2000 registrierte
Benutzer würde man demnach etwa 14 Konvertierungsserver vorsehen.
Hochverfügbarkeit
Die Fabasoft Components Konvertierungsservices sind wie die Fabasoft Components Webservices als ServerFarm organisiert.
Die Verteilung der Konvertierungsanfragen auf die Fabasoft Components Konvertierungsservices übernimmt der
Lastverteiler. Dieser verteilt die Konvertierungsanfragen entweder über den Verteilungsalgorithmus LeastConnections, oder im Fall von Fabasoft Konvertierungsservern mit unterschiedlicher Hardware über den Verteilungsalgorithmus Weighted-Least-Connections.
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 97
5. Die Subsysteme der Fabasoft Referenzarchitektur 5.0
5.11 Konvertierungsserver-Farm
Die einzelnen Konvertierungsserver müssen nicht hochverfügbar ausgelegt sein, gespiegelte Systemplatten
(RAID-1) werden allerdings empfohlen.
Der Lastverteiler überwacht kontinuierlich die Fabasoft Components Konvertierungsservices im Hinblick auf
deren Verfügbarkeit. Im Fehlerfall werden die an ein fehlerhaftes Konvertierungsservice adressierten Konvertierungsanfragen neu innerhalb der verfügbaren Konvertierungsservices verteilt.
Die Konvertierungsserver-Farm muss im laufenden Betrieb um einzelne Konvertierungsserver erweitert und verringert werden können (dynamische Rekonfiguration des Lastverteilers).
Zusammenfassung
Abbildung 32
Subsystem 11:
KonvertierungsserverFarm Beschreibung,
Hochverfügbarkeit
97
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 98
Abbildung 33
Subsystem 11:
Konvertierungsserver-Farm
Beispielkonfiguration
5.12
at-server (automated tasks)
Beschreibung
Der AT-Server, auf dem die Fabasoft Components AT-Services installiert werden, wird für die Ausführung zeitgesteuerter, periodischer Vorgänge verwendet. Dieser Server wird je nach Systemgröße und Bedarf ausgestattet.
Ein Fabasoft Components AT-Service arbeitet die Taskliste für einen registrierten Benutzer ab. In der Taskliste
liegen Tasks, die jeweils einen Status und eine Startzeit haben.
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 99
5. Die Subsysteme der Fabasoft Referenzarchitektur 5.0
5.11 Konvertierungsserver-Farm
5.12 AT-Server (Automated Tasks)
Der AT-Server kann aufgrund von Anwendungsintegrationen (SAP R/3, Fabasoft eGov-Forms) auch eine Verbindung in das Frontend-LAN benötigen.
Hochverfügbarkeit
Mehrere Fabasoft Components AT-Services (auf unterschiedlicher AT-Server Hardware) können die Tasks der
Tasklisten parallel abarbeiten. Der Ausfall eines AT-Servers bzw. eines Fabasoft Components AT-Services führt
zu einer langsameren Abarbeitung der Tasks.
Zusammenfassung
Abbildung 34
Subsystem 12:
AT-Server (Automated
Tasks)
99
05Referenzarchitektur
5.13
04.04.2005
12:26 Uhr
Seite 100
backendserver-cluster
Beschreibung
Die Fabasoft Backendserver speichern Geschäftsobjekte bestehend aus Dokumenten (im Dateisystem) und strukturierten Eigenschaften (in Datenbanksystemen wie z.B. Microsoft SQL Server). Auf diesen Servern werden die
Fabasoft Components Backendservices installiert.
Die Fabasoft Backendserver werden für den Zugriff auf und die Speicherung von Daten in den Fabasoft
Components Stores verwendet. Fabasoft Components Stores sind logische Datenspeicher, die für die
persistente Datenhaltung von Geschäftsobjekten auf den Serversystemen sorgen. Grundsätzlich werden zwei
Arten von Stores unterschieden:
Component Object Store (COO-Store)
speichert die strukturierten Eigenschaften von Objekten, indem ein Metadatenservice (Fabasoft Components
COO-Service) verwendet wird, um die Daten physisch in einer relationalen Datenbank (RDBMS) zu speichern.
Multimedia Content Store (MMC-Store)
speichert Inhalte (Inhaltseigenschaften) von Objekten (Dokumente, Images usw.), indem ein Dokumentenservice (Fabasoft Components MMC-Service) verwendet wird, um die Daten im Dateisystem (NTFS) zu
speichern.
Zur Skalierung kann eine Fabasoft Components Backendservices-Installation in mehrere Metadatenservices
(Fabasoft Components COO-Services) und mehrere Dokumentenservices (Fabasoft Components MMC-Services)
aufgeteilt werden. Jedes Fabasoft Components Backendservice speichert einen Teil der Gesamtdaten und verarbeitet die Zugriffe auf die ihm zugeordneten Daten (Partitionierung auf Ebene der Geschäftsobjekte). Jeder
Backendserver betreibt ein oder mehrere solcher Backendservices. Ein Metadatenservice und das dazugehörige
relationale Datenbanksystem (RDBMS) werden dabei auf gesonderten Servern betrieben. Dadurch können die
Server für die jeweiligen Anforderungen der Backendservices und des RDBMS hin optimiert und unterschiedlich
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 101
5. Die Subsysteme der Fabasoft Referenzarchitektur 5.0
5.13 Backendserver-Cluster
konfiguriert werden. Zur Kommunikation mit dem relationalen Datenbanksystem verwenden die Fabasoft Components Backendservices das Protokoll des jeweiligen RDBMS (Tabular Data Stream (TDS) via OLE-DB für den
Microsoft SQL Server).
Hochverfügbarkeit
Würde ein Fabasoft Backendserver ausfallen, wäre ein Zugriff auf die in den Fabasoft Components Backendservices dieses Servers gespeicherten Daten der Geschäftsobjekte nicht mehr möglich. Die Fabasoft Backendserver müssen daher hochverfügbar ausgelegt werden.
Im Rahmen der Fabasoft Referenzarchitektur wird vorausgesetzt, dass die Dokumente und Datenbanken von den
Backendservices auf einem zentralen Storagesystem gespeichert werden und nicht auf lokalen Festplattensubsystemen.
Die Fabasoft Backendserver werden als hochverfügbare Server ausgelegt und in einer Active/Active-Clusterkonfiguration mit mindestens zwei Clusterknoten auf Basis der Microsoft Windows Server 2003 Clustering Services
betrieben. Auf den Knoten eines Backendserver-Clusters laufen verschiedene Fabasoft Components Backendservices.
Performance-Überlegungen
Jeder Clusterknoten wird mit mindestens 16 GB Hauptspeicher bestückt. Bei Ausfall eines Clusterknotens müssen die Backendservices dieses ausgefallenen Clusterknotens auf dem anderen Clusterknoten ohne Speicherengpass übernommen werden können.
Bei der Dimensionierung eines Clusters mit zwei Clusterknoten mit Active/Active-Konfiguration muss beachtet
werden, dass jeder Knoten nur zur Hälfte ausgelastet wird, damit bei einem Failover der Betrieb mit gleicher Performance fortgesetzt werden kann.
Als unverbindlicher Erfahrungswert für die Dimensionierung der Backendserver ist ein Cluster mit zwei Servern
mit je vier physischen Prozessoren pro 2000 registrierten Benutzern vorzusehen.
101
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 102
Diese Auslegung ist signifikant abhängig von der Häufigkeit und vom Umfang der Suchvorgänge sowie der
Transaktionslast und dem Datenvolumen.
Zusammenfassung
Abbildung 35
Subsystem 13:
Backendserver-Cluster
Beschreibung,
Hochverfügbarkeit
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 103
5. Die Subsysteme der Fabasoft Referenzarchitektur 5.0
5.13 Backendserver-Cluster
5.14 Datenbankserver-Cluster
Abbildung 36
Subsystem 13:
Backendserver-Cluster
Beispielkonfiguration
5.14
datenbankserver-cluster
Beschreibung
Der Datenbankserver-Custer ist ein dedizierter Cluster (2 Knoten) für die Services des Datenbanksystems, die die
Datenbanken der Fabasoft Components COO-Services betreiben.
Die Services des Datenbanksystems werden in einer Active/Active-Konfiguration (z.B. durch die Verwendung
von zwei Microsoft SQL Server 2000 Instanzen) implementiert. Dadurch wird die Last auf beide Clusterknoten
nach Möglichkeit gleichmäßig verteilt. Bei dieser Active/Active-Konfiguration ist zu berücksichtigen, dass bei
103
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 104
Ausfall eines Clusterknotens der verbleibende Clusterknoten die gesamte Last ohne Performance-Nachteile für
die Anwendung zu bewältigen hat. Insbesondere CPU- und Hauptspeicher-Reserven sind daher ausreichend zu
dimensionieren.
Hochverfügbarkeit
Die Hochverfügbarkeit des Datenbankserver-Clusters wird durch die Implementierung als Failover-Cluster sowie
durch den Einsatz von hochverfügbaren Servern (Clusterknoten), insbesondere durch die redundante Auslegung
und die Möglichkeit des Komponentenwechsels am laufenden System von z.B. Lüftern, Netzteilen und Systemplatte erreicht.
Performance-Überlegungen
Jeder Clusterknoten wird mit mindestens 16 GB Hauptspeicher bestückt. Bei Ausfall eines Clusterknotens müssen die Datenbankservices dieses ausgefallenen Clusterknotens auf dem anderen Clusterknoten ohne Speicherengpass übernommen werden können.
Bei der Dimensionierung eines Clusters mit zwei Clusterknoten mit Active/Active-Konfiguration muss beachtet
werden, dass jeder Knoten nur zur Hälfte ausgelastet wird, damit bei einem Failover der Betrieb mit gleicher Performance fortgesetzt werden kann.
Als unverbindlicher Erfahrungswert für die Dimensionierung der Datenbankserver ist ein Cluster mit zwei 4-Prozessor-Servern pro 2000 registrierten Benutzern vorzusehen. Für den Fall großer Transaktionslast, großem
Datenvolumen oder intensiver Recherchetätigkeiten werden wesentlich mehr Prozessoren benötigt.
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 105
5. Die Subsysteme der Fabasoft Referenzarchitektur 5.0
5.14 Datenbankserver-Cluster
Zusammenfassung
Abbildung 37
Subsystem 14:
Datenbankserver-Cluster
Beschreibung,
Hochverfügbarkeit
105
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 106
Abbildung 38
Subsystem 14:
Datenbankserver-Cluster
Beispielkonfiguration
5.15
storage area network (san)
Beschreibung
Das Storage Area Network (SAN) ist ein dediziertes Fibre Channel Netzwerk zum Transport von Daten zwischen
den Servern (Backendserver-Cluster, Datenbankserver-Cluster, Backupserver und optional Indexserver) und dem
Storagesystem bzw. der Tape-Library.
Das SAN verbindet die Backendserver-Cluster (Speicherung von Dokumenten im Dateisystem) sowie die Datenbankserver-Cluster (Speicherung der Datenbankdateien) mit dem Storagesystem.
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 107
5. Die Subsysteme der Fabasoft Referenzarchitektur 5.0
5.14 Datenbankserver-Cluster
5.15 Storage Area Network (SAN)
In einem SAN können Daten ohne Auswirkungen auf die Performance des Frontend-LANs oder Backend-LANs
übertragen werden. Die Anbindung der Server an das SAN erfolgt mit je zwei HBA pro Server.
Hochverfügbarkeit
Die Hochverfügbarkeit wird im SAN insbesondere durch redundante Anbindungen der Systeme und durch das
Design von mehreren möglichen Pfaden von den Servern zu den Storagesystemen erreicht. Bei Verlust eines Pfades erfolgt eine automatische Auswahl eines neuen Pfades ohne Unterbrechung der Applikation.
Performance-Überlegungen
In der Fabasoft Referenzarchitektur wird das SAN mit 2 Gbit/s Verbindungen implementiert. Die HBAs der Server sollen, sofern von der eingesetzten Treibersoftware unterstützt, parallel betrieben werden können (automatische Lastverteilung), insbesondere um Lastspitzen, z.B. bei der Datensicherung, bestmöglich bewältigen zu
können.
107
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 108
Zusammenfassung
Abbildung 39
Subsystem 15:
Storage Area Network
(SAN)
5.16
storagesystem
Beschreibung
Das Storagesystem stellt den Servern (Backendserver-Cluster, Datenbankserver-Cluster und optional Indexserver) Speicherkapazitäten (Plattenspeicher) in Form von Volumes zur Verfügung, insbesondere zur Ablage der
Datenbanken und der Dokumente der Fabasoft Softwareprodukte bzw. zur Ablage der Kataloge der Microsoft
Indexing Services.
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 109
5. Die Subsysteme der Fabasoft Referenzarchitektur 5.0
5.15 Storage Area Network (SAN)
5.16 Storagesystem
Das Storagesystem speichert Dokumente, Datenbanken, das Clusterquorum und wahlweise auch die Volltextindizes des Indexservers. Das Storagesystem ist über ein SAN mit allen Backendservern, Datenbankservern, dem
Backupserver und eventuell auch mit den Indexservern verbunden. Eine Anbindung der sonstigen Server an das
SAN ist nicht vorgesehen.
Hochverfügbarkeit
Die Hochverfügbarkeit wird im Storagesystem insbesondere durch ein durchgängig redundantes Design – Einsatz mehrerer redundanter Netzteile, Batterie-Backup, global verfügbare Hot-Spare-Platten, spezielle Kühlmechanismen – intensiver proaktiver Überwachung und automatischer Fehlererkennung und Fehlerbehebung
erreicht.
Für Sicherungen bzw. für einen schnellen Wiederanlauf im Problemfall werden vom Storagesystem spezielle
Mechanismen zur Verfügung gestellt, insbesondere die Möglichkeit, Volumes im Storagesystem mehrfach zu
spiegeln und diese Spiegel als eigenständige Volumes zu verwenden. Mit einer auf dieser Basis implementierten Backup/Recovery-Strategie (Split-Mirror: siehe Kapitel „Datensicherheit: Online-Backup, Rcovery“ auf Seite
127) und der Verwendung der entsprechenden Software, insbesondere der Integration mit dem Datenbanksystem, können Sicherungen mit minimalen Auswirkungen auf den Produktionsbetrieb (z.B. durch Synchronisation eines Spiegels im Storagesystem, Trennung des Spiegels, Zuweisung des Spiegels zum Backupserver als
eigenständiges Volume und Sicherung der Daten vom Spiegel auf Band) implementiert werden. Bei einem Wiederanlauf können diese Spiegel, sofern darauf noch verwendbare Daten verfügbar sind, für eine performante
Rücksicherung herangezogen werden, da die Rücksicherung auf die Original-Volumes Storagesystem-intern
erfolgen kann.
Performance-Überlegungen
Die Konfiguration des Storagesystems in Bezug auf Performance ist insbesondere von den zu erwartenden
Datenmengen bzw. Zugriffsprofilen abhängig. Faktoren, die die Performance des Storagesystems beeinflussen,
sind z.B. die Verwendung von schnellen Festplatten (15000 U/min), durchgängige interne und externe 2 Gbit/s
Fibre-Channel-Verbindungen und ein ausreichend dimensionierter Cache.
109
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 110
Für eine gute Performance bei vielen einzelnen Lese- und Schreibzugriffen sind die logischen Volumes auf entsprechend viele physische Laufwerke zu verteilen. Aus diesem Grund sind Storagesysteme mit vielen kleineren
physischen Laufwerken aus Sicht der Antwortzeiten besser als solche mit einer geringen Anzahl sehr großer
physischer Laufwerke.
Empfohlen wird, die ermittelten Größen für die Volumes (insbesondere Volumes für die Transaktionsprotokolle
der Datenbanken) in einer Testinstallation in der Praxis zu validieren. Dabei ist auch auf selten auftretende Operationen zu achten (z.B. Index-Rebuilds auf großen Dabenbanktabellen).
Logische Volumes mit mehr als 100 GB sollten aus Gründen der Systemverwaltung (rasche Wiederherstellung,
Überprüfung der Integrität des Dateisystems etc.) nicht verwendet werden.
Ab Microsoft Windows Server 2003 können Mount-Points verwendet werden, um mehrere Festplattenlaufwerke unter einem Laufwerksbuchstaben ansprechen zu können. Dabei ist allerdings auf Inkompatibilitäten
der eingesetzten Softwareprodukte in Bezug auf Mount-Points zu achten. Es ist vorher sicherzustellen
(gegebenenfalls durch Installation von Service-Packs), dass die Softwareprodukte auf derartige Verzeichnisse
zugreifen können.
Um ein effizientes Backup ohne Betriebsunterbrechung durchführen zu können, muss das Storagesystem die
Möglichkeit von Snapshots bzw. Flash-Copies bieten. Für diese Operationen muss eine Integration in die verwendete Datenbanksoftware verfügbar sein, um ein konsistentes Online-Backup der Datenbank im laufenden
Betrieb zu ermöglichen.
Für ein rasches Recovery wird empfohlen, zumindest den letzten Backupstand aller Volumes als vollwertige,
physisch getrennte Volumes am Storagesystem selbst verfügbar zu halten. Ideal sind zwei physische BackupVolumes mit den letzten beiden Backup-Ständen, die im Wechsel überschrieben werden, sodass selbst bei
Betriebsstörungen während des Kopiervorgangs stets eine unversehrte Kopie vorhanden ist. Der dafür
benötigte Platz ist bei der Dimensionierung des Storagesystems zu berücksichtigen. Von diesen Kopien werden
üblicherweise Sicherungskopien auf Sicherungsbändern erstellt.
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 111
5. Die Subsysteme der Fabasoft Referenzarchitektur 5.0
5.16 Storagesystem
Zusammenfassung
Abbildung 40
Subsystem 16:
Storagesystem
111
05Referenzarchitektur
5.17
04.04.2005
12:26 Uhr
Seite 112
tape-library
Beschreibung
Die Tape-Library ist ein Bandroboter mit mehreren schnellen und zuverlässigen Bandlaufwerken mit hoher Kapazität zur effizienten Datensicherung.
Hochverfügbarkeit
Redundante Netzteile mit Anbindung an unterschiedliche Stromkreise, eine redundante SAN-Anbindung durch
den Einsatz mehrerer auf unterschiedlichen Wegen angebundener Bandlaufwerke und die Verwendung einer
Backup-Software mit Unterstützung mehrerer Bandlaufwerke (Neuverteilung der Aufgaben bei Ausfall eines
Laufwerks) ergeben eine hohe Verfügbarkeit der Infrastruktur für Datensicherungsläufe.
Performance-Überlegungen
Die Tape-Library muss bei Ausfall eines einzelnen Bandlaufwerkes alle für den Sicherungslauf definierten Daten
in dem dafür vorgesehenen Zeitraum sichern bzw. auch wiederherstellen können.
Verfügbare Ressourcen der Tape-Library müssen dafür mindestens nach dem Prinzip der n+1-Redundanz berechnet werden (Vorkehrung für einen Einzelfehler).
Grundlagen dafür sind:
das zu sichernde Datenvolumen,
die Anzahl und Art (voll, inkrementell, differenziell etc.) der Sicherungsläufe sowie
die Zeitfenster für die Sicherungsläufe.
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 113
5. Die Subsysteme der Fabasoft Referenzarchitektur 5.0
5.17 Tape-Library
5.18 Server für Basisdienste
Zusammenfassung
Abbildung 41
Subsystem 17:
Tape-Library
5.18
server für basisdienste
Microsoft Windows-Domaincontroller
Beschreibung
Microsoft Windows-Domaincontroller speichern und replizieren Schemainformationen, Konfigurationsinformationen und Anwendungsinformationen.
113
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 114
Auf den Microsoft Active Directory Domaincontrollern sollte zusätzlich ein DNS-Server (Domain Name System)
konfiguriert werden.
Änderungen des Verzeichnisdienstes müssen nicht mehr wie unter Microsoft Windows NT am primären Domaincontroller durchgeführt werden. Statt dessen kann die Änderung auf einem beliebigen Domaincontroller erfolgen. Active Directory repliziert die Änderungen automatisch auf alle anderen Domaincontroller, auch wenn einer
defekt sein sollte.
Hochverfügbarkeit
Microsoft Windows Server 2003 Domaincontroller erreichen durch Replikation eine hohe Verfügbarkeit der Informationen, eine Lastverteilung und damit Vorteile hinsichtlich des Antwortzeitverhaltens. Active Directory nutzt
Multimaster-Replikation.
Durch die Microsoft Active Directory Multimaster-Replikation können Netzwerkverbindungen zwischen Standorten durch gelegentliches Neubewerten von Verbindungen entsprechend deren Bandbreite besser genutzt werden. Die Verwendung unterschiedlicher Routen erhöht darüber hinaus die Verfügbarkeit.
Die Kosten für die Replikation werden minimiert, indem nur Änderungen repliziert werden.
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 115
5. Die Subsysteme der Fabasoft Referenzarchitektur 5.0
5.18 Server für Basisdienste
Zusammenfassung
Abbildung 42
Subsystem 18a:
Domaincontroller
Mailserver
Beschreibung
Im Wege der Mailserver werden von den Fabasoft Components Webservices generierte E-Mails automatisch
versendet.
Der Mailserver dient auch der Übermittlung von Informationsnachrichten der Systemmanagementsoftware (z.B.
einer Antiviren-Software) an die Betriebsführung.
115
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 116
Hochverfügbarkeit
In der Fabasoft Referenzarchitektur existieren (mindestens zwei) gleich installierte Mailserver. Auf den Mailservern läuft ein SMTP-Service, das die vom Fabasoft Components Webservice gesendeten E-Mails entgegennimmt und an den entsprechenden SMTP-Server der Empfängerdomäne weiterleitet. Je nach Anforderungen
müssen die Mailserver (zum Erreichen der SMTP-Server) und die DNS-Server (zum Auflösen der MX-Records der
entsprechenden Empfängerdomain) einen Internetzugang besitzen.
Die von den Fabasoft Components Webservices versendeten E-Mails werden über den Lastverteiler auf die
Mailserver verteilt. Der Lastverteiler überprüft in periodischen Abständen den Status der Mailserver und schickt
bei Ausfall eines Servers alle E-Mails zum funktionierenden Mailserver.
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 117
5. Die Subsysteme der Fabasoft Referenzarchitektur 5.0
5.18 Server für Basisdienste
Zusammenfassung
Abbildung 43
Subsystem 18b:
Mailserver
Managementserver
Beschreibung
Der Managementserver dient zur Überwachung aller Subsysteme der Fabasoft Referenzarchitektur 5.0, somit zur
Überwachung aller Hardware- und Softwarekomponenten der Fabasoft Produktionsumgebung und der Infrastruktur-Systemkomponenten.
117
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 118
Der Managementserver wird je nach Systemgröße und Bedarf ausgestattet. Weiters sind die Empfehlungen der
jeweiligen Softwarehersteller zu beachten.
Folgende Aufgaben sollten von den Anwendungen und Werkzeugen, welche auf dem Managementserver eingesetzt werden, übernommen werden:
Überwachung aller Server in der Fabasoft Produktionsumgebung
Dazu werden der Microsoft Operations Manager und der Fabasoft Operations Manager verwendet
Überwachung der Performance-Werte aller Server z.B. unter Verwendung des Microsoft Windows Performance Monitors
Virenschutz mit entsprechender Virenscannersoftware
Auswertung der gesammelten Performance-Werte mithilfe des Fabasoft Operations Managers unter Verwendung eines Data-Warehouses, wie zum Beispiel Microsoft SQL Server Analysis Components
Werkzeuge zur Konfiguration/Überwachung des Lastverteilers
Werkzeuge zur Konfiguration/Überwachung des SANs sowie des eingesetzten Storagesystems
Fabasoft Components Server Management
Weitere Werkzeuge zur Steuerung der Webserver (Stoppen, Starten, …)
Hochverfügbarkeit
Für den Managementserver wird als Hardware ein hochverfügbarer Server verwendet. Bei Bedarf können mehrere Managementserver gleich installiert werden, um mehr Redundanz zu erzielen.
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 119
5. Die Subsysteme der Fabasoft Referenzarchitektur 5.0
5.18 Server für Basisdienste
Zusammenfassung
Abbildung 44
Subsystem 18c: Managementserver
119
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 120
Abbildung 45
Subsystem 18c:
Data-Warehouse-Server
Backupserver
Beschreibung
Der Backupserver wird zur Steuerung und Durchführung der Datensicherung aller im Storagesystem abgelegten
Daten (unter Verwendung von z.B. Veritas Backup Exec) verwendet. Eine redundante Anbindung an das Storagesystem und die eingesetzte Tape-Library wird empfohlen. Für die Backup-Kataloge der eingesetzten Backup-Software muss entsprechender Speicherplatz vorgesehen werden.
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 121
5. Die Subsysteme der Fabasoft Referenzarchitektur 5.0
5.18 Server für Basisdienste
Der Backupserver wird je nach Systemgröße und Bedarf ausgestattet. Weiters sind die Empfehlungen des jeweiligen Softwareherstellers zu beachten.
Hochverfügbarkeit
Für den Backupserver wird als Hardware ein hochverfügbarer Server verwendet. Der Backupserver wird redundant an das SAN (somit an das Storagesystem und die eingesetzte Tape-Library) angebunden.
Zusammenfassung
Abbildung 46
Subsystem 18d:
Backupserver
121
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 122
Indexserver
Beschreibung
Der Indexserver wird für die Volltextsuche in Dokumenten verwendet. Erforderlich ist die Installation von Software zum Indizieren von Dateisystemen (Microsoft Indexing Services). Der Indexserver wird je nach Systemgröße und Bedarf ausgestattet. Weiters sind die Empfehlungen des jeweiligen Softwareherstellers (Microsoft)
zu beachten.
Hochverfügbarkeit
Je nach Verfügbarkeits- und Geschwindigkeitsanforderung kann der Volltextindex wahlweise auf dem Storagesystem oder einem lokalen Festplattensystem (RAID-1 oder RAID-10) abgelegt werden.
Performance-Überlegungen
Für die Dimensionierung des Indexservers sind die Empfehlungen des Herstellers der Indexing-Software zu
berücksichtigen. Als unverbindlicher Erfahrungswert wird bei den Microsoft Indexing Services häufig ein Drittel
der Größe des Speicherplatzes der Dokumente selbst angenommen. Da die Geschwindigkeitsanforderung an das
Speichersystem relativ hoch ist, sollte dieses möglichst leistungsfähig ausgelegt werden.
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 123
5. Die Subsysteme der Fabasoft Referenzarchitektur 5.0
5.18 Server für Basisdienste
Zusammenfassung
Abbildung 47
Subsystem 18e:
Indexserver Beschreibung,
Hochverfügbarkeit
123
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 124
Abbildung 48
Subsystem 18e:
Indexserver
Beispielkonfiguration
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 125
5. Die Subsysteme der Fabasoft Referenzarchitektur 5.0
5.18 Server für Basisdienste
125
05Referenzarchitektur
6
04.04.2005
12:26 Uhr
Seite 126
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 127
datensicherheit:
6 online-backup, recovery
Dieses Kapitel stellt ein Szenario für eine konsistente Datensicherung und Wiederherstellung der
Geschäftsobjekte einer Fabasoft Components Domäne der Version 5.0 auf Basis von EMC2 TimeFinder/Integration Modules und Microsoft SQL Server 2000 vor.
Der Fokus liegt auf einer Online-Datensicherung der Fabasoft Components Domäne unter Berücksichtigung der
Konsistenz zwischen mehreren Fabasoft Components Datenbanken (Fabasoft Components COO-Services) und
Dateisystemen (Fabasoft Components MMC-Services).
Auf die Datensicherung und die Wiederherstellung der für die Fabasoft Components Domäne nötigen Infrastruktur, insbesondere der Registry, der Microsoft Windows Server 2003 Clustering Services, der Microsoft SQL Server Systemdatenbanken wie „master“ oder „msdb“ wird hier nicht eingegangen. Ebenso bleiben mögliche andere Sicherungsstrategien wie Microsoft SQL Server Transaktionsprotokoll-Sicherungen und inkrementelle Datensicherungen unberücksichtigt.
Die Beispiele in diesem Kapitel sollen lediglich einen Überblick über die Datensicherung und die Wiederherstellung geben. Die eigentliche Umsetzung muss jedoch projektspezifisch implementiert und getestet
werden.
6.1
voraussetzungen
Die Kenntnis folgender Produkte wird vorausgesetzt:
Fabasoft eGov-Suite 5.0 oder Fabasoft eCRM-Suite 5.0
EMC2 ResourcePak Version 3.2 for Windows
EMC2 Solutions Enabler Version 4.3.x
EMC2 TimeFinder
EMC2 TimeFinder-SQL Server Integration Module
Microsoft SQL Server 2000 Service Pack 3a, Enterprise Edition
127
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 128
Microsoft Windows Server 2003 Clustering Services
Microsoft Windows Server 2003 Enterprise Edition
6.2
datensicherung und wiederherstellung einer fabasoft
components domäne (backup und recovery)
Eine vollständige Datensicherung einer Fabasoft Components Domäne besteht aus einem Backup der Microsoft
Windows Server 2003 Registry, der Fabasoft Components COO-Service-Datenbanken und der Fabasoft Components MMC-Service-Bereiche.
Die Microsoft Windows Server 2003 Registry
Die Microsoft Windows Server 2003 Registry enthält Daten für eine allfällige Wiederherstellung der Definitionen für die Fabasoft Components Backendservices. Die Datensicherung und Wiederherstellung der Registry
selbst wird hier nicht beschrieben.
Die Fabasoft Components COO-Service-Datenbanken
Die Fabasoft Components COO-Services speichern die strukturierten Daten der Geschäftsobjekte in Microsoft
SQL Server Datenbanken. Die Datensicherung und das Wiederherstellen dieser Datenbanken werden in diesem
Kapitel anhand eines Beispiels erläutert.
Die Fabasoft Components MMC-Service-Bereiche
Die Fabasoft Components MMC-Services speichern die Dokumente der Geschäftsobjekte im Dateisystem
(NTFS). Die Datensicherung und das Wiederherstellen dieser Fabasoft Components MMC-Service-Bereiche werden in diesem Kapitel anhand eines Beispiels erläutert.
Konsistenz
In einer Fabasoft Components Domäne übernehmen die Fabasoft Components COO-Services und die Fabasoft
Components MMC-Services die Funktion Geschäftsobjekte zu persistieren.
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 129
6. Datensicherheit: Online-Backup, Recovery
6.2 Datensicherung und Wiederherstellung einer Fabasoft
Components Domäne (Backup und Recovery)
Jede Fabasoft Components Domäne besteht aus mehreren Fabasoft Components COO-Services und mehreren
Fabasoft Components MMC-Services. Somit werden Geschäftsobjekte über mehrere Microsoft SQL Server
Datenbanken und mehrere Dateisysteme verteilt gespeichert.
Die Konsistenz dieser verteilten Datenbestände ist eine der Hauptanforderungen an die Datensicherung und die
Wiederherstellung.
Die Microsoft SQL Server Datenbanken
Die Fabasoft Components COO-Services speichern die strukturierten Daten der Geschäftsobjekte in Microsoft
SQL Server Datenbanken. Fabasoft Components nutzt verteilte – vom Microsoft Distributed Transaction
Coordinator (MSDTC) koordinierte – Transaktionen, um die Konsistenz zwischen den Microsoft SQL Server
Datenbanken sicherzustellen (2-Phasen-Commit).
Die Datensicherungs- und Wiederherstellungsprozeduren müssen ebenfalls die Konsistenz zwischen den Datenbanken bewahren.
Der Microsoft SQL Server 2000 implementiert dazu einen Mechanismus mehrere Datenbanken zu einem einheitlichen Zeitpunkt (Point-in-Time) auf einen konsistenten Stand wiederherzustellen. Dazu werden sogenannte
Named-Transactions und Transaktionsmarken verwendet.
Bei Named-Transactions handelt es sich um Transaktionen, die mit einem Namen versehen werden. Bei der Verwendung von Transaktionsmarken wird dieser Name explizit im Microsoft SQL Server 2000 Transaktionsprotokoll vermerkt.
Weiterführende Informationen dazu finden sich in [MiCo04m] (Microsoft SQL Server Books Online, Backup and
Recovery of Related Databases).
Fabasoft Components MMC-Service-Bereiche
Die Fabasoft Components MMC-Services speichern die Dokumente der Geschäftsobjekte im Dateisystem
(NTFS).
129
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 130
Die Voraussetzung für eine konsistente Online-Datensicherung der Dateisysteme zu einem einheitlichen Zeitpunkt (Point-in-Time) mit den Datenbanken einer Fabasoft Components Domäne stellen die Fabasoft Components MMC-Service-Bereiche mit Logging (MMC-Logged-Areas) dar.
Die in solchen MMC-Logged-Areas gespeicherten Dokumente werden im Zuge einer Transaktion weder geändert noch gelöscht, sondern als neue Datei gespeichert und die Referenz in der Datenbank wird bei positivem
Ende der Transaktion (Commit) aktualisiert. Zum Zeitpunkt des Commits muss das Dokument im Dateisystem
bereits vollständig auf die Festplatte geschrieben worden sein.
Somit sind die Fabasoft Components MMC-Logged-Areas innerhalb einer Domäne nicht nur zum letztaktuellen
gemeinsamen Zeitpunkt mit den Fabasoft Components COO-Service-Datenbanken konsistent, sondern auch mit
historischen Ständen (Point-in-Time) der Datenbanken der Fabasoft Components COO-Services konsistent,
solange die MMC-Logged-Areas nicht aufgeräumt wurden.
Demnach ist für eine konsistente Wiederherstellung einer Fabasoft Components Domäne eine Datensicherung
der Dateisysteme der MMC-Logged-Areas zu einem Zeitpunkt nach der konsistenten Datensicherung der Datenbanken und vor dem Aufräumen der MMC-Logged-Areas nötig.
6.3
beispiel
Das folgende Beispiel illustriert eine vollständige Datensicherung und Wiederherstellung der Fabasoft Components COO-Service-Datenbanken und der Fabasoft Components MMC-Service-Bereiche.
Für die Wiederherstellung werden ein laufender Microsoft Windows Server 2003 Cluster, gestartete Microsoft
SQL Server 2000 Instanzen und Fabasoft Components Backendservices, jeweils vollständig und richtig installiert
und konfiguriert, vorausgesetzt.
Die für das Beispiel verwendete Fabasoft Components Domäne besteht aus drei Fabasoft Components COO-Services und drei Fabasoft Components MMC-Services.
Beispielhaft beschrieben werden:
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 131
6. Datensicherheit: Online-Backup, Recovery
6.2 Datensicherung und Wiederherstellung einer Fabasoft
Components Domäne (Backup und Recovery)
6.3 Beispiel
Die konsistente Online-Datensicherung der Fabasoft Components Domäne
Die konsistente Wiederherstellung zu einem Point-in-Time
Das Beispiel bezieht sich lediglich auf die Datenbestände der Fabasoft Components Domäne selbst, nicht jedoch
auf die nötige Infrastruktur.
Beschreibung der Infrastruktur
Dieses Beispiel basiert auf folgender Infrastruktur:
Backupserver
Fabasoft Backendserver-Cluster
Microsoft SQL Server Datenbankserver-Cluster
EMC2 Symmetrix Storagesystem
Alle Komponenten sind am selben SAN angeschlossen.
Der Backupserver
Der Backupserver ist ein Microsoft Windows Server 2003 System, welches die Datensicherungs- und Wiederherstellungsprozeduren steuert. Darüber hinaus speichert der Backupserver die Datenbestände der BCVs
(BCV: Business Continuance Volume) auf Sicherungsbänder.
Der Fabasoft Backendserver-Cluster
Der Fabasoft Backendserver-Cluster basiert auf einem Microsoft Windows Server 2003 Cluster mit zwei Clusterknoten mit den virtuellen Servern FSC1 und FSC2 in einer Active/Active-Konfiguration.
Der virtuelle Server FSC1 ist für die Fabasoft Components COO-Services COOGW1 und COOST1 und die Fabasoft Components MMC-Services MMCGW1 und MMCST1 zuständig.
131
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 132
Der virtuelle Server FSC2 ist für das Fabasoft Components COO-Service COOST2 und das Fabasoft Components
MMC-Service MMCST2 zuständig.
Jedes Fabasoft Components MMC-Service verwendet ein EMC2 Symmetrix STD-Volume zur Speicherung der
Fabasoft Components MMC-Service-Bereiche wie aus Abbildung 49 ersichtlich.
Abbildung 49
Datensicherheit: Fabasoft
Backendserver-Cluster
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 133
6. Datensicherheit: Online-Backup, Recovery
6.3 Beispiel
MMC1:
Fabasoft Components MMC-Service-Bereiche für die Fabasoft Components
MMC-Services MMCGW1 und MMCST1
MMC2:
Fabasoft Components MMC-Service-Bereich für das Fabasoft Components
MMC-Service MMCST2
Tabelle 4: Definition der Volumes für die Fabasoft Components MMC-Service-Bereiche
Für beide STD-Volumes existiert innerhalb der EMC2 Symmetrix je ein BCV-Volume, das für die Datensicherung
dem Backupserver zugewiesen wird. In dieser Konfiguration wird pro STD-Volume/BCV-Volume-Paar eine EMC2
Symmetrix Device Group definiert.
Der Microsoft SQL Server Datenbankserver-Cluster
Der Microsoft SQL Server Datenbankserver-Cluster basiert auf den Microsoft Windows Server 2003 Clustering
Services mit zwei Clusterknoten mit zwei Microsoft SQL Server Instanzen SQL1\INST1 und SQL2\INST2 in einer
Active/Active-Konfiguration.
Die Microsoft SQL Server Instanz SQL1\INST1 ist für die Microsoft SQL Server Datenbanken COOGW1 und
COOST1 der Fabasoft Components COO-Services COOGW1 und COOST1 zuständig.
Die Microsoft SQL Server Instanz SQL2\INST2 ist für die Microsoft SQL Server Datenbank COOST2 des Fabasoft
Components COO-Service COOST2 zuständig.
Jede Microsoft SQL Server Instanz verwendet gesonderte EMC2 Symmetrix STD-Volumes für die Systemdatenbanken, für die Datenbankdateien der Fabasoft Components COO-Service-Datenbanken und für die Transaktionsprotokolle der Fabasoft Components COO-Service-Datenbanken wie aus Abbildung 50 ersichtlich:
133
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 134
Abbildung 50
Datensicherheit:
Microsoft SQL Server
Datenbankserver-Cluster
SQL1 System:
Microsoft SQL Server Systemdateien, master, model und
msdb Datenbankdateien.
SQL1 Data:
Microsoft SQL Server Datenbankdateien für die Fabasoft Components
COO-Service-Datenbanken COOGW1 und COOST1.
SQL1 Log:
Microsoft SQL Server Transaktionsprotokolle für die Fabasoft Components
COO-Service-Datenbanken COOGW1 und COOST1.
SQL1 Backup:
Ziel-Volume für die Microsoft SQL Server Transaktionsprotokoll-Sicherungen der
Fabasoft Components COO-Service-Datenbanken COOGW1 und COOST1.
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 135
6. Datensicherheit: Online-Backup, Recovery
6.3 Beispiel
SQL2 System:
Microsoft SQL Server Systemdateien, master, model und
msdb Datenbankdateien.
SQL2 Data:
Microsoft SQL Server Datenbankdateien für die Fabasoft Components
COO-Service Datenbank COOST2.
SQL2 Log:
Microsoft SQL Server Transaktionsprotokolle für die Fabasoft
Components COO-Service Datenbank COOST2.
SQL2 Backup:
Ziel-Volume für die Microsoft SQL Server Transaktionsprotokoll-Sicherungen der
Fabasoft Components COO-Service Datenbank COOST2
Tabelle 5: Definition der Volumes für die Microsoft SQL Server Datenbanken
Für die STD-Volumes SQL1 Data, SQL1 Log, SQL1 Backup, SQL2 Data, SQL2 Log und SQL2 Backup existiert innerhalb der EMC2 Symmetrix je ein BCV-Volume, das für die Datensicherung dem Backupserver zugewiesen wird.
In dieser Konfiguration wird pro STD-Volume/BCV-Volume-Paar eine EMC2 Symmetrix Device Group definiert.
Während des Datensicherungsprozesses wird eine Transaktionsmarke in die Transaktionsprotokolle aller Fabasoft Components COO-Service-Datenbanken geschrieben. Dazu wird eine spezielle Konfiguration („linked“) der
beteiligten Microsoft SQL Server 2000 Instanzen vorausgesetzt.
135
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 136
EMC2 Symmetrix Device Group Layout
Das Beispiel geht von folgendem EMC2 Symmetrix Device Group Layout aus:
DEVICE
GROUP
DATEISYSTEM
BESCHREIBUNG
DATA_01
M:\
Microsoft SQL Server Dateien für die Fabasoft Components
COO-Service-Datenbanken COOGW1 und COOST1
DATA_02
N:\
Microsoft SQL Server Dateien für die Fabasoft Components
COO-Service Datenbank COOST2
LOG_01
O:\
Microsoft SQL Server Log Dateien für die Fabasoft Components
COO-Service-Datenbanken COOGW1 und COOST1
LOG_02
P:\
Microsoft SQL Server Log Dateien für die Fabasoft Components
COO-Service Datenbank COOST2
MMC_01
U:\
Fabasoft Components MMC-Service-Bereiche für die Fabasoft
Components MMC-Services MMCGW1 und MMCST1
MMC_02
V:\
Fabasoft Components MMC-Service-Bereiche für das Fabasoft
Components MMC-Service MMCST2
BACK_01
K:\
Dateisystem für die Microsoft SQL Server TransaktionsprotokollSicherungen der Fabasoft Components COO-Service-Datenbanken
COOGW1 und COOST1
BACK_02
L:\
Dateisystem für die Microsoft SQL Server TransaktionsprotokollSicherungen der Fabasoft Components COO-Service Datenbank
COOST2
Tabelle 6: Device-Group- und Mount-Konfiguration
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 137
6. Datensicherheit: Online-Backup, Recovery
6.3 Beispiel
Datensicherung (Backup)
Die folgenden Schritte sind für eine konsistente Datensicherung (vollständiges Online-Backup einer Fabasoft
Components Domäne) beispielhaft nötig:
Die im Storagesystem EMC2 Symmetrix von den Fabasoft Components COO-Service-Datenbanken und von
den Fabasoft Components MMC-Service-Bereichen verwendeten Volumes müssen sich im „Synchronized
Mode“ befinden:
symmir
symmir
symmir
symmir
symmir
symmir
symmir
symmir
-g
-g
-g
-g
-g
-g
-g
-g
DATA_01 establish DEV001 BCV ld BCV001
DATA_02 establish DEV001 BCV ld BCV001
LOG_01 establish DEV001 BCV ld BCV001
LOG_02 establish DEV001 BCV ld BCV001
MMC_01 establish DEV001 BCV ld BCV001
MMC_02 establish DEV001 BCV ld BCV001
BACK_01 establish DEV001 BCV ld BCV001
BACK_02 establish DEV001 BCV ld BCV001
EMC2 TimeFinder Befehle zur Überprüfung des Status der einzelnen Volumes:
symmir
symmir
symmir
symmir
symmir
symmir
symmir
symmir
-g
-g
-g
-g
-g
-g
-g
-g
DATA_01 query
DATA_02 query
LOG_01 query
LOG_02 query
MMC_01 query
MMC_02 query
BACK_01 query
BACK_02 query
Alternativ kann jedes BCV beispielsweise alle 5 Sekunden auf Synchronizität mit dem Standardvolume überprüft werden:
symmir –g DATA_01 verify –synched –i 5
Datensicherung der Fabasoft Components COO-Service-Datenbanken, dabei wird automatisch ein VDIMetafile generiert. Dadurch werden automatisch die Volumes (BCVs) der Datenbanken entkoppelt.
tsimsnap2 backup -d COOGW1 COOST1 -f K:\meta -s SQL1\INST1
tsimsnap2 backup -d COOST2 -f L:\meta -s SQL2\INST2
Setzen einer verteilten Transaktionsmarke in allen Transaktionsprotokollen der Fabasoft Components COOService-Datenbanken. Die Prozedur (Stored Procedure) fsc_settxmark wird weiter hinten gesondert
beschrieben (Transact-SQL-Kommandos):
TSQL: execute fsc_settxmark
137
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 138
Datensicherung der Transaktionsprotokolle der Fabasoft Components COO-Service-Datenbanken (TransactSQL-Kommandos):
TSQL: backup log COOGW1 to file='K:\MSSQL\COOGW1_LOG.BAK'
TSQL: backup log COOST1 to file='K:\MSSQL\COOST1_LOG.BAK'
TSQL: backup log COOST2 to file='L:\MSSQL\COOST2_LOG.BAK'
Entkoppeln der restlichen Volumes (BCVs):
symmir
symmir
symmir
symmir
-g
-g
-g
-g
MMC_01 -instant split DEV001
MMC_02 -instant split DEV001
BACK_01 -instant split DEV001
BACK_02 -instant split DEV001
Nun können die Volumes (BCVs) zum Backupserver umgehängt und die Datenbestände (Microsoft SQL Server Datenbanken, Fabasoft Components MMC-Service-Bereiche, ...) dieser Volumes auf andere Medien, beispielsweise auf Sicherungsbänder geschrieben werden.
Wiederherstellung (Restore / Recovery)
Die folgenden Schritte sind für die Wiederherstellung der Datenbestände einer Fabasoft Components Domäne
aus einem konsistenten und vollständigen Online-Backup beispielhaft nötig:
Die Fabasoft Domäne (Fabasoft Components Webservices, Fabasoft Components Konvertierungsservices, Fabasoft Components AT-Services und Fabasoft Components Backendservices) werden
gestoppt:
Die Fabasoft Components COO-Service-Datenbanken werden im Microsoft SQL Server Enterprise Manager
oder mittels der sp_detach_db Stored Procedure abgetrennt (Transact-SQL-Kommandos):
TSQL: sp_detach_db 'COOGW1'
TSQL: sp_detach_db 'COOST1'
TSQL: sp_detach_db 'COOST2'
Mit dem symntctl list -volume Kommando erhält man eine Liste der aktuellen Informationen
zu den STD-Volumes:
symntctl list –volume
Die STD-Volumes für die Fabasoft Components COO-Service-Datenbanken, die Fabasoft Components
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 139
6. Datensicherheit: Online-Backup, Recovery
6.3 Beispiel
MMC-Service-Bereiche, die Transaktionsprotokolle und die Backup-Volumes werden vom Fabasoft Backendserver-Cluster und vom Microsoft SQL Server Datenbankserver-Cluster abgetrennt:
symntctl
symntctl
symntctl
symntctl
symntctl
symntctl
symntctl
symntctl
umount
umount
umount
umount
umount
umount
umount
umount
-drive
-drive
-drive
-drive
-drive
-drive
-drive
-drive
m:
n:
o:
p:
u:
v:
k:
l:
Die BCV-Volumes für die Fabasoft Components COO-Service-Datenbanken, die Fabasoft Components MMCService-Bereiche, die Transaktionsprotokolle und die Backup-Volumes werden vom Backupserver mit
symntctl umount Befehlen abgetrennt. Danach werden die Daten der BCV-Volumes mit EMC2 TimeFinder „Restore“ Operationen auf die STD-Volumes zurückkopiert:
symmir
symmir
symmir
symmir
symmir
symmir
symmir
symmir
-g
-g
-g
-g
-g
-g
-g
-g
DATA_01 restore DEV001 BCV ld BCV001
DATA_02 restore DEV001 BCV ld BCV001
LOG_01 restore DEV001 BCV ld BCV001
LOG_02 restore DEV001 BCV ld BCV001
MMC_01 restore DEV001 BCV ld BCV001
MMC_02 restore DEV001 BCV ld BCV001
BACK_01 restore DEV001 BCV ld BCV001
BACK_02 restore DEV001 BCV ld BCV001
Mit EMC2 TimeFinder symmir query oder symmir verify Operationen wird der Zustand der Volumes geprüft, bis die Daten vollständig auf die STD-Volumes zurückkopiert wurden. Danach werden die STDVolumes wieder von den BCV-Volumes getrennt:
symmir
symmir
symmir
symmir
symmir
symmir
symmir
symmir
-g
-g
-g
-g
-g
-g
-g
-g
DATA_01 split DEV001
DATA_02 split DEV001
LOG_01 split DEV001
LOG_02 split DEV001
MMC_01 split DEV001
MMC_02 split DEV001
BACK_01 split DEV001
BACK_02 split DEV001
Die STD-Volumes werden dem Fabasoft Backendserver-Cluster und dem Microsoft SQL Server Datenbankserver-Cluster auf Basis der zuvor mit symntctl list-volume generierten Liste wieder zur Verfügung gestellt:
symntctl mount -drive m: -vol HarddiskVolume8
symntctl mount -drive n: -vol HarddiskVolume9
139
05Referenzarchitektur
04.04.2005
symntctl
symntctl
symntctl
symntctl
symntctl
symntctl
mount
mount
mount
mount
mount
mount
12:26 Uhr
-drive
-drive
-drive
-drive
-drive
-drive
o:
p:
u:
v:
k:
l:
Seite 140
-vol
-vol
-vol
-vol
-vol
-vol
HarddiskVolume10
HarddiskVolume11
HarddiskVolume12
HarddiskVolume13
HarddiskVolume14
HarddiskVolume15
Die Fabasoft Components COO-Service-Datenbanken werden mit Informationen aus dem VDI-Metafile
wiederhergestellt, dabei werden die Transaktionsprotokoll-Sicherungen bis zur Transaktionsmarke nachgezogen.
tsimsnap2 restore -d COOGW1 COOST1 -f K:\meta -s SQL1\INST1
tsimsnap2 restore -d COOST2 -f L:\meta -s SQL2\INST2
Der Zeitpunkt der zuletzt verwendeten Transaktionsmarke wird aus allen msdb Datenbanken der beteiligten
Microsoft SQL Server Instanzen gelesen (Transact-SQL-Kommandos):
TSQL: select * from msdb.dbo.logmarkhistory
Die Transaktionsprotokolle werden bis zu dieser Transaktionsmarke nachgezogen (Transact-SQL-Kommandos):
TSQL: restore log COOGW1 from file='K:\MSSQL\COOGW1_LOG.BAK' with
replace, recovery,
stopatmark='FSCTXMARK' after '2004-08-20 04:00:00'
TSQL: restore log COOST1 from file='K:\MSSQL\COOST1_LOG.BAK' with
replace, recovery,
stopatmark='FSCTXMARK' after '2004-08-20 04:00:00'
TSQL: restore log COOST2 from file='L:\MSSQL\COOST2_LOG.BAK' with
replace, recovery,
stopatmark='FSCTXMARK' after '2004-08-20 04:00:00'
Die Caches der Fabasoft Components Win32-Clients und der Fabasoft Components Webservices müssen
gelöscht werden, um Inkonsistenzen zu vermeiden.
Die Fabasoft Components Backendservices werden im „Recovery Mode“ gestartet, um permanente Objektsperren aus den Datenbanken zu entfernen.
Danach werden die Fabasoft Components Backendservices in den „Normal Mode“ geschaltet.
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 141
6. Datensicherheit: Online-Backup, Recovery
6.3 Beispiel
Beispiele für die Prozeduren fsc_settxmark und fsc_setlocaltxmark
fsc_settxmark sample (SQL1\INST1)
USE COOST1
GO
CREATE PROCEDURE fsc_settxmark
AS BEGIN
BEGIN DISTRIBUTED TRANSACTION
BEGIN DISTRIBUTED TRANSACTION FSCTXMARK WITH MARK
UPDATE COOGW1.dbo.cootxmark SET counter = counter + 1
UPDATE COOST1.dbo.cootxmark SET counter = counter + 1
COMMIT
EXEC [SQL2\INST2].COOST2.dbo.fsc_setlocaltxmark
COMMIT TRANSACTION
END
Quelltext 6: Beispiel für die Prozedur fsc_settxmark
fsc_setlocaltxmark sample (SQL2\INST2)
USE COOST2
GO
CREATE PROCEDURE fsc_setlocaltxmark
AS BEGIN
BEGIN TRANSACTION FSCTXMARK WITH MARK
UPDATE cootxmark SET counter = counter + 1
COMMIT
END
Quelltext 7: Beispiel für die Prozedur fsc_setlocaltxmark
141
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 142
Zusammenfassung
Abbildung 51
Backup und Recovery
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 143
6. Datensicherheit: Online-Backup, Recovery
6.3 Beispiel
143
05Referenzarchitektur
7
04.04.2005
12:26 Uhr
Seite 144
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 145
betriebsprozesse und
7 systemmanagement
Die Fabasoft Referenzarchitektur 5.0 kann für sich allein lediglich die erste Regel der Voraussetzungen für Hochverfügbarkeit (siehe Abbildung 5) erfüllen. Die Einhaltung der Regel 2 muss zur
Gänze in den Betriebsprozessen und im Systemmanagement verankert werden.
Auch für die Einhaltung von Regel 3 ist die Aufmerksamkeit des Betriebsführungsteams gefordert, insbesondere
dann, wenn die Systemkomponenten für die Behandlung von Fehlersituationen selbst fehlerbehaftet sind, ein
Mehrfachfehler aufgetreten ist oder die Umschaltung auf die redundante Komponente als manueller Eingriff vorgesehen ist.
Um ein kosteneffektives und vereinbartes Verfügbarkeitsniveau (Service-Level Agreement) für eine Fabasoft
Components Domäne gewährleisten zu können, müssen insbesondere die Betriebsprozesse standardisiert und
hochqualitativ ausgeführt werden.
Die Hauptaufgaben des Managements für Hochverfügbarkeit liegen
1. in der Erreichung möglichst langer MTBF-Zeiten für jede einzelne Systemkomponente durch laufende Überwachung und durch proaktives Handeln, beispielsweise das Erkennen von Ressourcenengpässen (ein volles
Dateisystem kann einen langen Stillstand zur Folge haben) und
2. in der Erzielung möglichst kurzer MTTR-Zeiten durch rasches Erkennen, Diagnostizieren und Beheben eines
Fehlers. Dabei ist größte Wachsamkeit bei der Fehlerbehebung durch Fremdfirmen im laufenden Betrieb angebracht: Der Austausch einer fehlerfreien statt der schadhaften Festplatte in einem RAID-Array zieht üblicherweise einen Stillstand nach sich.
Dazu ist eine notwendige Voraussetzung die jederzeit wiederholbare Installation der Subsysteme bzw. deren
Komponenten sowie die lückenlose zugehörige Dokumentation. Es dürfen im Betrieb nur Handgriffe getan
werden, die vorher durchdacht, dokumentiert und am Testsystem (System zur Simulation des Echtbetriebs)
getestet wurden.
Dieses Kapitel kann wiederum nur einen Einstieg in das Thema vermitteln, das Betriebshandbuch mit den
detaillierten Prozessen zum Incident-Management, Problem-Management, Configuration-Management, Change-
145
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 146
Management, Release-Management, Servicedesk, Service-Level-Management, Capacity-Management, Continuity-Management, Availability-Management und Security-Management muss projektspezifisch erstellt, gelebt,
überwacht und gesteuert werden.
In den folgenden Abschnitten werden einerseits die Grundzüge der Installation der wesentlichen Server einer
Fabasoft Components Domäne beschrieben und andererseits einige wichtige Monitoring-Aufgaben festgehalten.
7.1
installation der wesentlichen fabasoft services
Backendserver-Rollout
Schritt 1 – Installation des Betriebssystems
In diesem Schritt werden folgende Punkte abgedeckt:
Installation Betriebssystem
Installation aller benötigten Treiber
Installation aller erwünschten Microsoft Patches
Allgemeine Einstellungen (Remote-Desktop etc.)
Netzwerkkonfiguration (Backend-LAN, Heartbeat)
Schritt 2 – Volumes definieren
In diesem Schritt werden die zukünftig benötigten Volumes am Storagesystem angelegt.
Mindestvoraussetzung zum Anlegen eines Clusters ist eine Quorum-Disk.
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 147
7. Betriebsprozesse und Systemmanagement
7.1 Installation der wesentlichen Fabasoft Services
Schritt 3 – Cluster installieren
Mittels Microsoft Cluster Administrator wird auf einem Knoten ein neuer Cluster angelegt.
Nach erfolgreicher Installation wird im Microsoft Cluster Administrator der zweite Server als neuer Knoten hinzugefügt. Anschließend werden mindestens zwei Clustergruppen und alle benötigten Clusterressourcen erzeugt.
Schritt 4 – Fabasoft Components Backendservices installieren
Es erfolgt die Installation der Fabasoft Components Backendservices auf allen Clusterknoten. Nach der erfolgreichen Installation wird die Fabasoft Components Domäne erstellt, dabei werden bereits die Datenbankservices
am Datenbankcluster verwendet.
Webserver-Rollout
Für den Betrieb der Fabasoft Components Webservices wird im Microsoft Internet Information Service für jeden
logischen Prozessor eine Website erzeugt. In jeder der erzeugten Websites wird ein Fabasoft Components Webservice installiert. Jede Website wird mit unterschiedlichen IP-Adressen oder Ports betrieben, um eine direkte
Verteilung der Benutzeranfragen auf die Fabasoft Components Webservices zu ermöglichen. Dadurch kann der
Lastverteiler aufgrund des konfigurierten Verteilungsalgorithmus die Sitzungsaffinität auf jedes Fabasoft Components Webservice aufrechterhalten. Diese Technik ermöglicht aufgrund der Cache-Technologie der Fabasoft
Components Webservices einen erheblichen Performance-Gewinn.
Wenn auf dem Webserver nur eine Website mit vier Worker-Processes im Microsoft Internet Information Service Application Pool konfiguriert werden würde, würde die Verteilung auf die einzelnen Fabasoft Components
Webservices das Microsoft Internet Information Service durchführen. Dieses wiederum verteilt die Benutzeranfragen nach einem Round-Robin-Algorithmus, welcher weder Sitzungsaffinität noch Gleichverteilung ermöglicht.
Vorraussetzungen
Microsoft Windows Server 2003 – Installation mit folgenden zusätzlich installierten Komponenten:
147
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 148
RIS (Remote Installation Services)
DHCP
Computerobjekte aller Webserver, gebunden an entsprechende GUIDs für die einzelnen Server, müssen im Active Directory zwecks korrekter Namensvergabe erzeugt werden.
Am DHCP-Server werden Reservierungen sowohl für das Frontend- als auch für das Backend-LAN eingerichtet.
Folgende RIS-Images werden erzeugt:
1. Microsoft Windows Server 2003 Web Edition CD-Based-Image
Wird bei der Installation von RIS automatisch erzeugt
Stellt die Grundlage für alle weiteren Images dar
2. Microsoft Windows Server 2003 Web Edition Custom-Based-Image für die Webserver
CD-Based Image installiert auf einem Webserver dient als Grundlage
Installierte Software:
Microsoft Internet Information Service
Alle benötigten Treiber
4 IIS-Websites
Je Website wird ein Fabasoft Components Webservice installiert.
Alternativ können die Fabasoft Components Webservices auch nach der Image-Installation
über Scripts ausgerollt werden. Dafür muss im Custom-Based-Image der Registry-Key für
Remote-Scripting gesetzt werden.
System- , IIS- und Netzwerkeinstellungen werden gemäß „Fabasoft Webserver Installation Guide“ konfiguriert
Custom-Based-Images werden mittels RIS auf allen Webservern ausgerollt.
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 149
7. Betriebsprozesse und Systemmanagement
7.1 Installation der wesentlichen Fabasoft Services
Konvertierungsserver-Rollout
Für den Betrieb der Fabasoft Components Konvertierungsservices wird im Microsoft Internet Information Service
eine Website erzeugt. In dieser Website werden zwei Fabasoft Components Konvertierungsservices, durch Konfiguration im Microsoft Internet Information Service Application Pool, betrieben. Die Verteilung der Konvertierungsanfragen auf die beiden Fabasoft Components Konvertierungsservices erfolgt durch das Microsoft Internet
Information Service. Die Verteilung der Konvertierungsanfragen im Round-Robin-Algorithmus ist in diesem Fall
kein Nachteil, da die Fabasoft Components Konvertierungsservices nicht so stark wie die Fabasoft Components
Webservices vom Cache profitieren.
Vorraussetzungen
Microsoft Windows Server 2003 – Installation mit folgenden zusätzlich installierten Komponenten:
RIS
DHCP
Computerobjekte aller Konvertierungsserver, gebunden an entsprechende GUIDs für die einzelnen Server, müssen im Active Directory zwecks korrekter Namensvergabe erzeugt werden.
Am DHCP-Server werden Reservierungen für das Backend-LAN eingerichtet.
Folgende RIS-Images werden erzeugt:
1. Microsoft Windows Server 2003 Standard Edition CD-Based-Image
Wird bei der Installation von RIS automatisch erzeugt
Stellt die Grundlage für alle weiteren Images dar
2. Microsoft Windows Server 2003 Standard Edition Custom-Based-Image für die Konvertierungsserver
CD-Based-Image installiert auf einem Konvertierungsserver dient als Grundlage
Installierte Software:
149
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 150
Microsoft Internet Information Service
Alle benötigten Treiber
2 IIS-Websites
Je Website wird ein Fabasoft Components Webservice installiert.
Alternativ können die Fabasoft Components Webservices auch nach der Image-Installation
über Scripts ausgerollt werden. Dafür muss im Custom-Based-Image der Registry-Key für
Remote-Scripting gesetzt werden.
Konvertierungssoftware (Adobe Distiller, ActivePDF etc.)
System- , IIS- und Netzwerkeinstellungen werden gemäß „Fabasoft Web Server Installation Guide“ konfiguriert
Custom-Based-Images werden mittels RIS auf allen Konvertierungsservern ausgerollt.
Zusätzliche Software wie Microsoft Office und Microsoft XML Parser werden über Active Directory-Gruppenrichtlinien verteilt.
Überprüfung der Produktionsumgebung vor Inbetriebnahme
Vor Inbetriebnahme einer Fabasoft Components Domäne sind Tests zur Überprüfung der Implementierung vorzusehen. Diese Tests müssen vor der Durchführung im Detail geplant und definiert werden.
Die Zielsetzung ist, das System lückenlos kennen zu lernen und Überraschungen im Produktionsbetrieb hintanzuhalten (vergleichbar einem „Flight Manual“ in der Luftfahrt: ein Pilot geht auch in einer Notsituation gemäß
Anweisungen vor).
Mindestens in folgenden Bereichen müssen Tests durchgeführt werden:
Security
Tests betreffend die Netzwerksicherheit (Firewalls etc.), das Active Directory (Authentisierung, Autorisierung etc.), den Virenscanner, das SAN etc.
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 151
7. Betriebsprozesse und Systemmanagement
7.1 Installation der wesentlichen Fabasoft Services
Installations- und Upgrade-Tests
Zusätzlich zum Produktionssystem muss ein Testsystem existieren, welches ein Klon des Produktionssystems sein sollte. In diesem Testsystem muss jede Änderung vor der Umsetzung im Produktionssystem
getestet werden. Auf diesem Testsystem werden auch die Erkenntnisse zur voraussichtlichen geplanten
Stillstandszeit für geplante Aktualisierungen gewonnen.
Backup- und Recovery-Tests
Tests des Backup- und Recovery-Konzepts hinsichtlich Performance und Funktionalität müssen durchgeführt
werden.
Availability-Tests
Die Redundanz in jedem Subsystem muss vollständig getestet werden. Das Erkennen eines Fehlers und die
Auswirkungen des Wegfalls der Redundanz (Fehlerdiagnose) sowie die Maßnahmen zur Wiederherstellung
der Redundanz (Fehlerbehebung) müssen detailliert dokumentiert werden. Dazu gehören beispielsweise
Cluster-Failover-Tests, Tests für den Ausfall eines oder mehrerer Web- und/oder Konvertierungsserver, Verlust von Datenpfaden im SAN, schadhafte Festplatten usw.
Stabilitäts- und Überlasttests
Stabilitätstests sollen sicherstellen, dass sich das System auch unter Hochlast stabil und performant verhält. Subsystemkomponenten werden gezielt überlastet, um die Auswirkungen kennen zu lernen und zu
dokumentieren.
Performance-Tests
Simulation der im Service-Level Agreement vereinbarten Anzahl an registrierten Benutzern, um Systemengpässe und Tuningpotenziale bereits vor dem Echtbetrieb erkennen zu können.
Managementtests
Tests für die Implementierung der Managementanwendungen und Werkzeuge, wie z.B. Microsoft Operations
Manager, Fabasoft Operations Manager, Microsoft Windows Performance Monitor usw. müssen durchgeführt werden. Die Management-Werkzeuge werden im Zuge aller Tests verwendet, um Fehlerbilder anhand
der Messdatenmuster erkennen zu lernen.
151
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 152
Anwendungstests
Vollständige Tests aller Use-Cases der Anwendung sowohl über automatische Tests als auch durch manuelle Tests. Dies sowohl unter Normalbedingungen als auch parallel zu den anderen Tests.
7.2
systemmanagement für die fabasoft referenzarchitektur
Die Betriebsführung hat für die laufende Überwachung aller Subsysteme und deren Komponenten der Fabasoft
Components Domäne Sorge zu tragen.
Für die manuellen Tätigkeiten sollten dazu alle Server der Fabasoft Components Domäne vom Betriebsführungsteam über Remote-Console und Remote-Desktop (Microsoft Terminal Server) erreichbar sein.
Die Überwachung der Subsysteme (Software und Hardware) erfolgt nach Möglichkeit mit Managementwerkzeugen der jeweiligen Hersteller, z.B. IBM Director, HP Insight Manager, CiscoWorks, Fabasoft Operations Manager
etc.
Diese Werkzeuge stellen einerseits der Betriebsführung die Möglichkeit des aktiven Monitorings zur Verfügung,
zusätzlich werden Fehlersituationen automatisch an eine zentrale Problemmeldestelle (Leitstand) weitergeleitet,
z.B. via SNMP-Traps oder durch eine Integration in diesen Leitstand.
Der Leitstand, z.B. Microsoft Operations Manager, muss der Betriebsführung eine aktuelle und konsolidierte Darstellung des Zustands aller Systeme der Fabasoft Referenzarchitektur ermöglichen.
Aus der folgenden beispielhaften Aufstellung ist für die Fabasoft Referenzarchitektur 5.0 einerseits ersichtlich,
mit welchen Managementwerkzeugen die einzelnen Subsysteme überwacht und konfiguriert werden, und
andererseits, welche wesentlichen Überwachungsaufgaben die Betriebsführung für diese Subsysteme zu
erbringen hat.
Netzwerk-Subsysteme
Die Überwachung und das Management der Netzwerk-Subsysteme, Arbeitsplatz-LAN (Client-LAN), Client-
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 153
7. Betriebsprozesse und Systemmanagement
7.2 Systemmanagement für die Fabasoft Referenzarchitektur
Firewall, Anschaltknoten, Server-Firewall, Lastverteiler, Frontend-LAN und Backend-LAN erfolgen mit Managementwerkzeugen des Herstellers, z.B. CiscoWorks für das Cisco Catalyst 6500 Management.
Die Betriebsführung erbringt weitere Management- und Überwachungsaufgaben, insbesondere in Bezug auf:
1. Netzwerk-Fehlerstatistiken (z.B. Lost Packets)
2. Netzwerkauslastung und Analyse von Auslastungstrends zur Verhinderung von Engpässen
3. Gleichmäßige Verteilung der Last innerhalb der Webserver-Farmen
4. Zustand der Webserver aus Sicht des Lastverteilers
5. Webserver-Ausfälle, fehlgeschlagene ICMP-Probes oder HTTP-Probes
Die Überwachung und das Management des WANs werden hier nicht betrachtet.
Server-Subsysteme
Die Überwachung und das Management der Server-Subsysteme, Webserver-Farm, Konvertierungsserver-Farm,
AT-Server, Backendserver-Cluster, Datenbankserver-Cluster und der Server für Basisdienste erfolgen mit
Managementwerkzeugen des Herstellers, z.B. IBM Director oder HP Insight Manager.
Zusätzlich werden die folgenden Managementwerkzeuge eingesetzt, um die installieren Softwareprodukte zu
überwachen und zu konfigurieren:
1. Microsoft Operations Manager Agents für die Überwachung von Betriebssystem und Datenbanksystemkomponenten
2. Fabasoft Operations Manager für die Integration der Überwachung der Fabasoft Components Services in den
Microsoft Operations Manager
Die Betriebsführung erbringt weitere Management- und Überwachungsaufgaben, insbesondere in Bezug auf:
1. Performance durch die Überwachung mit dem Microsoft Performance Monitor und Werkzeugen des Fabasoft
Operation Managers
153
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 154
2. Auslastung und Auslastungstrends mit dem Microsoft Performance Monitor und Werkzeugen des Fabasoft
Operation Managers
3. Fehlererkennung und Fehleranalysen durch die zusätzliche Überwachung mit dem Microsoft Event Viewer und
durch Analyse von Fehlerprotokollen, z.B. Microsoft SQL Server Fehlerprotokoll, IIS-Protokoll, Cluster-Protokoll
und Fabasoft Components Fehlerprotokolle
4. SQL Analysen durch die Überwachung mit dem Microsoft SQL Server Profiler
Die Überwachung und das Management des Arbeitsplatzes (Webbrowser-Client) werden hier nicht betrachtet.
Storage-Subsysteme
Die Überwachung und das Management der Storage-Subsysteme, SAN, Storagesystem und Tape-Library erfolgen mit Managementwerkzeugen des Herstellers, z.B. EMC2 Control Center.
Die Betriebsführung erbringt weitere Management- und Überwachungsaufgaben, insbesondere in Bezug auf:
1. Performance durch die Überwachung mit dem EMC2 Control Center bzw. webbasierten Werkzeugen der Hersteller
2. Auslastung und Auslastungstrends
3. Fehlererkennung und Fehleranalyse
Kurzbeschreibung einiger Systemmanagementwerkzeuge
Microsoft Operations Manager
Für die Überwachung der Server kann der Microsoft Operations Manager Agent auf allen Servern installiert werden. Weiters muss ein Microsoft Operations Manager Server existieren (z.B. Managementserver).
Der Microsoft Operations Manager überwacht die Event-Logs und kritische Performance-Werte aller Server der
Fabasoft Produktionsumgebung. Weiters sollte das Fabasoft Operations Manager Management Pack installiert
werden, das die Überwachung der Fabasoft Components Services übernimmt.
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 155
7. Betriebsprozesse und Systemmanagement
7.2 Systemmanagement für die Fabasoft Referenzarchitektur
IBM Director und andere Anwendungen
Anwendungen, wie z.B. der IBM Director, überwachen die Hardwarekomponenten der Fabasoft Produktionsumgebung. Dadurch ist es möglich Hardwareprobleme möglichst frühzeitig zu erkennen.
Performance-Werte
Das Sammeln von Performance-Werten auf allen Servern der Fabasoft Produktionsumgebung wird empfohlen
(z.B. unter Verwendung des Microsoft Windows Performance Monitors). Diese Performance-Werte können zur
statistischen Auswertung in ein Data-Warehouse importiert werden (z.B. mithilfe des Fabasoft Operations
Manager Werkzeugs „loadcsv“).
Virenscanner
Weiters ist es notwendig die gesamte Fabasoft Produktionsumgebung mit einem (oder mehreren)
Virenscanner(n) zu überwachen. Der Virenscanner sollte – je nach Anforderung – täglich oder wöchentlich Überprüfungen der Dateien aller Dateisysteme durchführen. Außerdem müssen alle eingehenden (und allenfalls alle
ausgehenden) Dokumente auf den Webservern geprüft werden.
Überwachung von SAN und Storagesystem
Das SAN bzw. das Storagesystem sollten durch entsprechende Werkzeuge (je nach Storagesystem) ständig
überwacht werden, z.B. EMC2 Control Center für das EMC2 Symmetrix DMX Management.
155
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 156
Zusammenfassung
Abbildung 52
Betriebsführung:
Beispiele für Systemmanagementwerkzeuge
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 157
7. Betriebsprozesse und Systemmanagement
7.2 Systemmanagement für die Fabasoft Referenzarchitektur
Abbildung 53
Betriebsführung: Erkennen
von Lastspitzen
Abbildung 54
Aufgaben der
Betriebsführung:
Monitoring
157
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 158
Abbildung 55
Aufgaben der
Betriebsführung:
Operating
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 159
7. Betriebsprozesse und Systemmanagement
7.2 Systemmanagement für die Fabasoft Referenzarchitektur
159
05Referenzarchitektur
8
04.04.2005
12:26 Uhr
Seite 160
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 161
161
8 glossar
Fabasoft Components __________________________________________________________________________________________________________ Seite 14
Sammelbegriff für die Basistechnologien, auf der die Fabasoft Softwareprodukte aufbauen.
Fabasoft Components Anwendungsintegrationsservices
____________________________________________________
Seite 30
Die Fabasoft Components Anwendungsintegrationsservices sind dedizierte Fabasoft Components Webservices auf eigenen Webservern in eigenen Webserver-Farmen, die von Fachanwendungen im Wege von WebServices genutzt werden.
Fabasoft Components AT-Services ______________________________________________________________________________________ Seite 30
Die Fabasoft Components AT-Services werden für die Ausführung zeitgesteuerter, periodischer Vorgänge verwendet. Ein Fabasoft Components AT-Service arbeitet die Taskliste für einen registrierten Benutzer ab. In der
Taskliste liegen Tasks, die jeweils einen Status und eine Startzeit haben.
Fabasoft Components Backendservices ______________________________________________________________________________ Seite 30
Die Fabasoft Components Backendservices speichern Geschäftsobjekte bestehend aus Dokumenten (im Dateisystem) und strukturierten Eigenschaften (in Datenbanksystemen, wie z.B. Microsoft SQL Server).
Die Fabasoft Backendserver werden für den Zugriff auf und die Speicherung von Daten in den Fabasoft Components Stores verwendet.
Fabasoft Components COO-Services____________________________________________________________________________________ Seite 30
Das Fabasoft Components COO-Service wird verwendet, um die Daten der Geschäftsobjekte in einer relationalen Datenbank zu speichern.
Fabasoft Components Domäne ____________________________________________________________________________________________ Seite 30
Eine Fabasoft Components Domäne besteht aus den logisch zusammengehörigen Fabasoft Components Webservices, den Fabasoft Components Konvertierungsservices, den Fabasoft Components Backendservices, den
Fabasoft Components AT-Services, den Fabasoft iArchive-Services und den Fabasoft Components Anwendungsintegrationsservices. Jede Fabasoft Components Domäne ist über eine weltweit eindeutige Domänenidentifikation (Domain-ID) gekennzeichnet.
05Referenzarchitektur
04.04.2005
12:26 Uhr
Fabasoft iArchive-Services
Seite 162
________________________________________________________________________________________________
Seite 30
Die Fabasoft iArchive-Services stellen für eine Fabasoft Components Domäne Archivfunktionalitäten zur
Verfügung und binden Archivsysteme zur physischen Auslagerung von Geschäftsobjekten an die Fabasoft
Components Domäne an.
Fabasoft Components Kernel
______________________________________________________________________________________________
Seite 29
Durch den Fabasoft Components Kernel wird im Fabasoft Components Webservice das Objektmodell zur Verfügung gestellt, die Objektplatzierung und der Zugriffsschutz festgelegt bzw. überprüft, Eigenschaften werden
zwischengespeichert, Methodenaufrufe zugeteilt und Transaktionen ausgeführt.
Fabasoft Components Konvertierungsservices ____________________________________________________________________ Seite 30
Durch die Fabasoft Components Konvertierungsservices wird die Konvertierung von Inhalten ermöglicht.
Konvertierungsanfragen werden von den Fabasoft Components Webservices zu den Fabasoft Components
Konvertierungsservices weitergeleitet. Es erfolgt keine direkte Kommunikation mit dem WebbrowserClient.
Fabasoft Components MMC-Services __________________________________________________________________________________ Seite 30
Das Fabasoft Components MMC-Service wird verwendet, um die Inhalte (Inhaltseigenschaften) von Geschäftsobjekten (Dokumente, Images usw.) im Dateisystem (NTFS) zu speichern.
Fabasoft Components Stores
____________________________________________________________________________________________
Seite 161
Fabasoft Components Stores sind logische Datenspeicher, die für die persistente Datenhaltung von Geschäftsobjekten auf den Serversystemen sorgen.
Fabasoft Components Webservice __________________________________________________________________________ Seite 29, 161,162
Die am Webserver eintreffenden Benutzeranfragen werden vom Microsoft Internet Information Service an das
Fabasoft Components Webservice (Thread-Pool des Web-Tiers der verteilten Anwendung; ISAPI-Erweiterung
des Microsoft Internet Information Service) weitergereicht.
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 163
163
Simple Object Access Protocol (SOAP)
____________________________________________________________________________
Seite 163
Ein Standard für die plattformunabhängige Kommunikation zwischen verteilten Systemen, basierend auf XMLStandards. SOAP dient zum Austausch von strukturierten Informationen in einer dezentralen Netzwerkumgebung. Um eine möglichst hohe Flexibilität zu erreichen wird für die Datenübergabe das Dateiformat XML
verwendet.
Webanwendung __________________________________________________________________________________________________________________ Seite 11
Unter Webanwendungen werden solche Systeme verstanden, deren Benutzerschnittstelle auf den Standards
HTML (grafische Darstellung im Webbrowser-Client) und HTTP (Übertragungsprotokoll) basiert.
Webbrowser-Client ______________________________________________________________________________________________________ Seite 11, 163
Unter einem Webbrowser-Client wird in diesem Buch ein Arbeitsplatzrechner (PC-Arbeitsplatz) mit dem
Betriebssystem Microsoft Windows, dem Webbrowser Microsoft Internet Explorer und entsprechender Anwendungssoftware (z.B. Microsoft Office) verstanden.
Web-Service ______________________________________________________________________________________________________________ Seite 161, 163
Ein auf Webstandards (in der Regel XML, HTTP) aufbauender Dienst zum Austausch von Informationen in einer
verteilten und dezentralisierten Umgebung. Dazu wird in der Regel das Protokoll SOAP verwendet. Das WebService kann von einem Client über das Internet mit einem Uniform Resource Locator (URL) angesprochen werden. Die Funktionalität des Web-Service wird in einer definierten Schnittstelle – häufig mit Hilfe der Web Service Definition Language (WSDL) – beschrieben. Aufgrund der verwendeten Standards (XML und HTTP) sind
Web-Services unabhängig von einer bestimmten Programmiersprache und Systemplattform.
Web Service Definition Language (WSDL)
________________________________________________________________________
Ein XML-Dokument zur Beschreibung der Schnittstelle eines Web-Service.
Seite 163
05Referenzarchitektur
9
04.04.2005
12:26 Uhr
Seite 164
05Referenzarchitektur
04.04.2005
12:26 Uhr
Seite 165
165
9 abbildungsverzeichnis
Abbildung 1
Abbildung 2
Abbildung 3
Abbildung 4
Abbildung 5
Abbildung 6
Abbildung 7
Abbildung 8
Abbildung 9
Abbildung 10
Abbildung 11
Abbildung 12
Abbildung 13
Abbildung 14
Abbildung 15
Abbildung 16
Abbildung 17
Abbildung 18
Abbildung 19
Abbildung 20
Abbildung 21
Abbildung 22
Abbildung 23
Abbildung 24
Abbildung 25
Abbildung 26
Abbildung 27
Abbildung 28
E-Government: Von Antrag bis Zustellung ______________________________________________________________ 12
MTTF einiger Hardwarekomponenten __________________________________________________________________ 18
Ursachen für Systemstillstände [IEEE95] ________________________________________________________________ 20
Verfügbarkeitsgrade __________________________________________________________________________________________ 23
Voraussetzungen für Hochverfügbarkeit ________________________________________________________________ 24
Hochverfügbarkeitsklassen __________________________________________________________________________________ 26
Zusammenfassung Verfügbarkeit __________________________________________________________________________ 27
Fabasoft Components Softwarearchitektur ____________________________________________________________ 31
Fabasoft Components Transaktionen ____________________________________________________________________ 31
Verteilte Transaktionen mit Fabasoft Components __________________________________________________ 33
Ausgewählte Architektur-Prinzipien für Hochverfügbarkeit ______________________________________ 33
Referenzarchitektur ____________________________________________________________________________________________ 34
Beschreibung des Lastverteilers __________________________________________________________________________ 46
Verteilungsalgorithmen und Sitzungsaffinität des Lastverteilers ________________________________ 47
Verfügbarkeit und Fehlerstrategien des Lastverteilers ______________________________________________ 47
Microsoft Windows Server Cluster ______________________________________________________________________ 54
Microsoft Cluster: Failover-Richtlinien __________________________________________________________________ 55
Ausfall eines Clusterknotens: Failover __________________________________________________________________ 56
Hochverfügbare Server ________________________________________________________________________________________ 60
Subsystem 1: Arbeitsplatz (Webbrowser-Client) ______________________________________________________ 65
Subsystem 2: Arbeitsplatz-LAN (Client-LAN) __________________________________________________________ 68
Subsystem 3: Client-Firewall ______________________________________________________________________________ 69
Subsystem 4: WAN ____________________________________________________________________________________________ 72
Subsystem 5: Anschaltknoten ______________________________________________________________________________ 73
Subsystem 6: Server-Firewall ______________________________________________________________________________ 76
Subsystem 7: Lastverteiler Beschreibung ______________________________________________________________ 80
Subsystem 7: Lastverteiler Hochverfügbarkeit, Beispielkonfiguration ________________________ 81
Subsystem 8: Frontend-LAN ________________________________________________________________________________ 86
05Referenzarchitektur
04.04.2005
Abbildung 29
Abbildung 30
Abbildung 31
Abbildung 32
Abbildung 33
Abbildung 34
Abbildung 35
Abbildung 36
Abbildung 37
Abbildung 38
Abbildung 39
Abbildung 40
Abbildung 41
Abbildung 42
Abbildung 43
Abbildung 44
Abbildung 45
Abbildung 46
Abbildung 47
Abbildung 48
Abbildung 49
Abbildung 50
Abbildung 51
Abbildung 52
Abbildung 53
Abbildung 54
Abbildung 55
12:27 Uhr
Seite 166
Subsystem 9: Webserver-Farm Beschreibung, Hochverfügbarkeit ______________________________ 90
Subsystem 9: Webserver-Farm Beispielkonfiguration ______________________________________________ 91
Subsystem 10: Backend-LAN ______________________________________________________________________________ 92
Subsystem 11: Konvertierungsserver-Farm Beschreibung, Hochverfügbarkeit ______________ 97
Subsystem 11: Konvertierungsserver-Farm Beispielkonfiguration ______________________________ 98
Subsystem 12: AT-Server (Automated Tasks) __________________________________________________________ 99
Subsystem 13: Backendserver-Cluster Beschreibung, Hochverfügbarkeit __________________ 102
Subsystem 13: Backendserver-Cluster Beispielkonfiguration __________________________________ 103
Subsystem 14: Datenbankserver-Cluster Beschreibung, Hochverfügbarkeit ________________ 105
Subsystem 14: Datenbankserver-Cluster Beispielkonfiguration ________________________________ 106
Subsystem 15: Storage Area Network (SAN) ________________________________________________________ 108
Subsystem 16: Storagesystem ____________________________________________________________________________ 111
Subsystem 17: Tape-Library ______________________________________________________________________________ 113
Subsystem 18a: Domaincontroller ______________________________________________________________________ 115
Subsystem 18b: Mailserver ________________________________________________________________________________ 117
Subsystem 18c: Managementserver ____________________________________________________________________ 119
Subsystem 18c: Data-Warehouse-Server ____________________________________________________________ 120
Subsystem 18d: Backupserver ____________________________________________________________________________ 121
Subsystem 18e: Indexserver Beschreibung, Hochverfügbarkeit ________________________________ 123
Subsystem 18e: Indexserver Beispielkonfiguration ________________________________________________ 124
Datensicherheit: Fabasoft Backendserver-Cluster __________________________________________________ 132
Datensicherheit: Microsoft SQL Server Datenbankserver-Cluster ____________________________ 134
Backup und Recovery ________________________________________________________________________________________ 142
Betriebsführung: Beispiele für Systemmanagementwerkzeuge ________________________________ 156
Betriebsführung: Erkennen von Lastspitzen __________________________________________________________ 157
Aufgaben der Betriebsführung: Monitoring __________________________________________________________ 157
Aufgaben der Betriebsführung: Operating ____________________________________________________________ 158
05Referenzarchitektur
04.04.2005
12:27 Uhr
Seite 167
167
05Referenzarchitektur
04.04.2005
10
12:27 Uhr
Seite 168
05Referenzarchitektur
04.04.2005
12:27 Uhr
Seite 169
169
10 literaturverzeichnis
[vBKP02]
van Bon, Jan (Hg.)/ Kemmerling, Georges (Hg.)/ Pondman, Dick (Hg.): IT Service
Management. Eine Einführung. Hägendorf: Buchzentrum AG, 2002.
[BmLd99]
Brain, Marshall/Libertone David: Windows NT Cluster Server Guidebook. Old Tappan:
Prentice Hall PTR, 1999.
[BbVr03]
Braswell, Byron/Voegeli, Richard: Patterns for the Edge of Network. High Availability
and High Performance. New York: International Business Machines Corporation, 2003.
[BrCo04]
Brocade Communications Systems Inc.: „Brocade SilkWorm 3900 Switch“.
URL: http://www.brocade.com/products/switches/silkworm_3900/index.jsp.
[Stand: 22.10.2004]
[Broc02]
Brockhaus: Der Brockhaus Computer und Informationstechnologie.
Mannheim: Brockhaus, 2002.
[CiSy04a]
Cisco Systems Inc.: „Cisco Catalyst 6500 Series Switches“.
URL: http://www.cisco.com/en/US/products/hw/switches/ps708/index.html.
[Stand: 22.10.2004]
[CiSy04b]
Cisco Systems Inc.: „Cisco Content Switching Module White Paper“. URL:
http://www.cisco.com/en/US/products/hw/modules/ps2706/products_white_paper09186
a0080160311.shtml. [Stand: 22.10.2004]
[CiSy04c]
Cisco Systems Inc.: „Cisco 6500/Cisco 7600 Series Supervisor Engine 720 Data Sheet“.
URL:
http://www.cisco.com/en/US/products/hw/switches/ps708/products_data_sheet09186a0
080159856.html. [Stand: 22.10.2004]
[CiSy04d]
Cisco Systems Inc.: „Cisco Catalyst 6500 Series Content Switching Module“. URL:
http://www.cisco.com/en/US/products/hw/modules/ps2706/products_data_sheet09186a
00800887f3.html. [Stand: 22.10.2004]
[CiSy04e]
Cisco Systems Inc.: „SSL Service Module for the Catalyst 6500 & Cisco 7600 Series“.
URL:
http://www.cisco.com/en/US/products/hw/modules/ps2706/products_data_sheet09186a
00800c4fe9.html. [Stand: 22.10.2004]
[CiSy04f]
Cisco Systems Inc.: „Cisco Catalyst 6500 Series Switches Data Sheets“. URL:
http://www.cisco.com/en/US/products/hw/switches/ps708/products_data_sheets_list.ht
ml. [Stand: 22.10.2004]
05Referenzarchitektur
04.04.2005
12:27 Uhr
Seite 170
[CiSy04g]
Cisco Systems Inc.: „Cisco PIX 515E Firewall“. URL: http://www.cisco.com/en/US/products/hw/vpndevc/ps2030/ps4094/index.html. [Stand: 22.10.2004]
[CiSy04h]
Cisco Systems Inc.: „Cisco 1721 Modular Access Router“.
URL: http://www.cisco.com/en/US/products/hw/routers/ps221/ps224/index.html.
[Stand: 22.10.2004]
[CiSy04i]
Cisco Systems Inc.: „Cisco Catalyst 6500 Series Supervisor Engine 720 Whitepaper“.
URL: http://newsroom.cisco.com/dlls/Sup_720_DS.pdf. [Stand: 22.10.2004]
[EmCo04a]
EMC Corporation: „EMC Power Path Product Description Guide“. URL:
http://www.emc.com/products/product_pdfs/pdg/powerpath_pdg.pdf.
[Stand: 22.10.2004]
[EmCo04b]
EMC Corporation: „EMC Symmetrix DMX Series Data Sheet“. URL:
http://www.emc.com/products/systems/symmetrix/DMX_series/pdf/DMX_series.pdf.
[Stand: 22.10.2004]
[EmCo04c]
EMC Corporation: „EMC Symmetrix DMX800 Specification Sheet“. URL:
http://www.emc.com/products/systems/symmetrix/symmetrix_DMX800/pdf/DMX800.pdf.
[Stand: 22.10.2004]
[EuUn04]
European Union: Online availability of public services: How does Europe progress? Web
based survey on electronic public services. Report of the fourth measurement. October
2003. URL:
http://europa.eu.int/information_society/eeurope/2005/doc/all_about/cgey4_measure
ment_final.pdf [Stand: 25.10.2004]
[EmSh04]
Evan, Marcus/Stern, Hal: Blueprints for High Availability. 2. Auflage. Indianapolis: John
Wiley & Sons Inc, 2004.
[HZFE01]
Hendrik, Ernst/Zustak, Martin/Fuchs, Peter/Erdenberger, Silvio/Tschoeke, Arwed:
Implementing UPS Configurations with Microsoft Cluster Server. New York: International
Business Machines Corporation, 2001.
[HePa04a]
Hewlett-Packard Company: „ProLiant DL740 – Overview & Features“.
URL: http://h18004.www1.hp.com/products/servers/proliantdl740/index.html.
[Stand: 22.10.2004]
[HePa04b]
Hewlett-Packard Company: „ProLiant DL380 G4 – Overview & Features“.
URL: http://h18004.www1.hp.com/products/servers/proliantdl380/index.html.
[Stand: 22.10.2004]
05Referenzarchitektur
04.04.2005
12:27 Uhr
Seite 171
171
[HePa04c]
Hewlett-Packard Company: „ProLiant DL360 G4 – Overview & Features“.
URL: http://h18004.www1.hp.com/products/servers/proliantdl360/index.html.
[Stand: 22.10.2004]
[HePa04d]
Hewlett-Packard Company: „HP BladeSystem“. URL:
http://h71028.www7.hp.com/enterprise/cache/80316-0-0-0-121.aspx. [Stand: 28.10.2004]
[InCo04]
Intel Corporation: „Networking and Communications: Advanced Networking Services Teaming“. URL: http://www.intel.com/support/network/sb/cs-009747.htm.
[Stand: 22.10.2004]
[IBMC04a]
International Business Machines Corporation: „eservers from IBM: xSeries 445“.
URL: http://www.pc.ibm.com/us/eserver/xseries/x445.html. [Stand: 22.10.2004]
[IBMC04b]
International Business Machines Corporation: „eservers from IBM: xSeries 345“.
URL: http://www.pc.ibm.com/us/eserver/xseries/x345.html. [Stand: 22.10.2004]
[IBMC04c]
International Business Machines Corporation: „eservers from IBM: xSeries 335“.
URL: http://www.pc.ibm.com/us/eserver/xseries/x335.html. [Stand: 22.10.2004]
[IBMC04d]
International Business Machines Corporation: „IBM LTO Ultrium Scalable Tape
Library 3583: Overview“.
URL: http://www-1.ibm.com/servers/storage/tape/3583/index.html. [Stand: 22.10.2004]
[IBMC04e]
International Business Machines Corporation: „IBM eServer Blade Center“.
URL: http://www-1.ibm.com/servers/eserver/bladecenter/index.html. [Stand: 28.10.2004]
[IEEE95]
IEEE Computer Society (Hg.): IEEE Computer Magazine. 4/1995. Los Alamos: IEEE
Computer Society, 1995.
[JBHR98]
Johner, Heinz/Brown, Larry/Hinner, Franz-Stefan/Reis, Wolfgang/Westman,
Johan: Understanding LDAP. New York: International Business Machines Corporation,
1998.
[KMTN99]
Kumar Khattar, Ravi/Murphy, Mark S./Tarella, Giulio John/Nystrom, Kjell E.:
Introduction to Storage Area Network, SAN. New York: International Business Machines
Corporation, 1999.
[LeeR99]
Lee, Richard R.: Windows NT Microsoft Cluster Server. Emeryville: Osborne/McGrawHill, 1999.
[MjCb98]
McMains, John R./Chronister, Bob: Windows NT Backup & Recovery. Emeryville:
Osborne/McGraw-Hill, 1998.
05Referenzarchitektur
04.04.2005
12:27 Uhr
Seite 172
[MDMW02]
Mellish, Barry/Demmer, Christian/McGeoch, Graham/Wallace, Ian: IBM TotalStorage FAStT700 and Copy Services. New York: International Business Machines Corporation, 2002.
[MiCo04a]
Microsoft Corporation: „High Availability Resources“.
URL: http://www.microsoft.com/sql/techinfo/administration/2000/availability.asp.
[Stand: 22.10.2004]
[MiCo04b]
Microsoft Corporation: „Windows Server 2003 Cluster“. URL:
http://www.microsoft.com/technet/prodtechnol/windowsserver2003/technologies/clustering/default.mspx. [Stand: 22.10.2004]
[MiCo04c]
Microsoft Corporation: „Windows Server 2003 Clustering“. URL:
http://www.microsoft.com/windowsserver2003/techinfo/overview/bdmtdm/default.mspx.
[Stand: 22.10.2004]
[MiCo04d]
Microsoft Corporation: „White Paper: Windows Server 2003 Server Cluster Architecture“. URL: http://www.microsoft.com/windowsserver2003/techinfo/overview/servercluster.mspx. [Stand: 22.10.2004]
[MiCo04e]
Microsoft Corporation: „White Paper: Technical Overview of Windows Server 2003
Clustering Services“. URL: http://www.microsoft.com/windowsserver2003/techinfo/overview/clustering.mspx. [Stand: 22.10.2004]
[MiCo04f]
Microsoft Corporation: „Server Clusters: Cluster Configuration Best Practices for
Windows Server 2003“. URL: http://www.microsoft.com/technet/prodtechnol/
windowsserver2003/technologies/clustering/scconbp.mspx. [Stand: 22.10.2004]
[MiCo04g]
Microsoft Corporation: „Server Clusters: Network Configuration Best Practices“. URL:
http://www.microsoft.com/technet/prodtechnol/windowsserver2003/technologies/
clustering/clstntbp.mspx. [Stand: 22.10.2004]
[MiCo04h]
Microsoft Corporation: „Recommended Private „Heartbeat“ Configuration on a Cluster
Server:“. URL: http://support.microsoft.com/default.aspx?scid=kb;en-us;258750.
[Stand: 22.10.2004]
[MiCo04i]
Microsoft Corporation: „Microsoft SQL Server 2000 High Availability Series“. URL:
http://www.microsoft.com/technet/prodtechnol/sql/2000/deploy/sqlhalp.mspx.
[Stand: 22.10.2004]
05Referenzarchitektur
04.04.2005
12:27 Uhr
Seite 173
173
[MiCo04j]
Microsoft Corporation: „Microsoft SQL Server High Availability Planning Guide“. URL:
http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=0C4357E5EE56-4EA2-A028-EB40893F1049. [Stand: 22.10.2004]
[MiCo04k]
Microsoft Corporation: „Microsoft SQL Server High Availability Deployment Guide“.
URL:
http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=AD924002F355-4EB9-973E-F5DBAD264214. [Stand: 22.10.2004]
[MiCo04l]
Microsoft Corporation: „Microsoft SQL Server 2000 Failover Clustering“. URL:
http://www.microsoft.com/technet/prodtechnol/sql/2000/maintain/failclus.mspx. [Stand:
22.10.2004]
[MiCo04m]
Microsoft Corporation: „Microsoft SQL Server Books Online: Backing up and Restoring
Databases“. URL: http://www.microsoft.com/sql/techinfo/productdoc/2000/default.asp.
[Stand: 22.10.2004]
[MiCo04n]
Microsoft Corporation: „PRB: Installation of a Named Instance of a SQL Server 2000
Virtual Server on a Windows 2003-Based Cluster Fails“. URL:
http://support.microsoft.com/default.aspx?scid=kb;en-us;815431. [Stand: 22.10.2004]
[MiCo04o]
Microsoft Corporation: „How to Configure Microsoft Distributed Transaction Coordinator on a Windows Server 2003 Cluster“. URL:
http://support.microsoft.com/default.aspx?scid=kb;en-us;301600. [Stand: 22.10.2004]
[Oasi04]
Oasis Consortium: „Oasis Standards“. URL: http://www.oasis-open.org. [Stand:
08.11.2004]
[Ogge01]
Oggerino Chris: High Availability Network Fundamentals. San Jose: Cisco Press, 2001.
[RGDF01]
Russell, Steve/Gonzalez, Olga Lucia Baquero/de Coutere, Bert/ Furniss, Duncan:
High Availability Without Clustering. New York: International Business Machines
Corporation, 2001.
[Spor97]
Sportack, Mark A.: Windows NT Clustering Blueprints. Indianapolis: Sams Publishing,
1997.
[TCGV00]
Tate, Jon/Cole, Geoff/Gomilsek, Ivo/van der Pijll, Jaap: Designing an IBM Storage
Area Network. New York: International Business Machines Corporation, 2000.
[TCGL02]
Tate, Jon/Coates, Gareth/Gomilšek, Ivo/Lewis, Andy: Designing and Optimizing an
IBM Storage Area Network. New York: International Business Machines Corporation,
2002.
05Referenzarchitektur
04.04.2005
[WAFK02]
[WdBK00]
[WAYW03]
12:27 Uhr
Seite 174
Watts, David/Aghdam, Reza Fanaei/Furniss, Duncan/King, Jason: IBM eServer
xSeries 440 Planning and Installation Guide. New York: International Business Machines
Corporation, 2002.
Watts, David/Bullard, Roger/Kalmantas, Marius: IBM eServer xSeries Clustering
Planning Guide. New York: International Business Machines Corporation, 2000.
Watts, David/Arzensek, Jure/Yong Wang, Jian/Weiner, Russ/Collins, Antony: IBM
eServer xSeries 445 Planning and Installation Guide. New York: International Business
Machines Corporation, 2003.
05Referenzarchitektur
04.04.2005
12:27 Uhr
Seite 175
175
Herunterladen