Jedes IT-System dient einem Zweck. Um diesen Zweck zu erfüllen, muss es für seine Verwendung verfügbar sein. Einige IT-Systeme sind für ein Unternehmen von entscheidender Bedeutung und müssen daher hoch verfügbar sein. Das heißt, es darf keine oder nur minimale Zeiträume geben, in denen sie teilweise oder vollständig nicht verfügbar sind. Andere Systeme sind weniger wichtig. Bei ihnen ist eine gewisse Anzahl geplanter oder ungeplanter Ausfallzeiten akzeptabel, wenn beispielsweise auf alternative Workflows zurückgegriffen oder einfach gewartet werden kann, bis das System wieder verfügbar ist. Viele Systeme liegen irgendwo in der Mitte zwischen diesen beiden Extremen.
Hohe Verfügbarkeit (High Availability, HA) ist ein Entwurfsansatz, der es einem System ermöglicht, über einen bestimmten Zeitraum ein vorher festgelegtes Niveau der Betriebsleistung zu erreichen. Hochverfügbare Systeme bieten Kunden ein System und eine Umgebung mit der erforderlichen Zuverlässigkeit, um ihre Geschäftsanforderungen an die Servicebereitstellung zu erfüllen oder zu übertreffen und auf einem erwarteten Qualitätsniveau zu arbeiten.
Hohe Verfügbarkeit hat zwar etwas mit Notfallwiederherstellung (Disaster Recovery, DR) zu tun, ist aber ein separates Konzept. Im Allgemeinen konzentriert sich HA auf die Vermeidung ungeplanter Ausfallzeiten für die Servicebereitstellung, während sich DR auf die Aufbewahrung der Daten und Ressourcen konzentriert, die erforderlich sind, um ein System nach einer Katastrophe (einem Notfall) in einem früheren akzeptablen Zustand wiederherzustellen. Wenn DR-Pläne implementiert werden, ist es typisch, dass die Servicebereitstellung unterbrochen wird, bis das System wiederhergestellt ist. Weitere Informationen finden Sie unter Sicherungen und Notfallwiederherstellung.
Ein weiterer häufig verwendeter Begriff in diesem Bereich ist geographische Redundanz. Dieser Begriff bezieht sich im Allgemeinen auf das Entwurfsziel einer Anwendung bzw. eines Systems, das einen vollständigen Ausfall des Rechenzentrums überstehen kann, indem zusätzliche Systeme oder ein Ausweich- oder Sicherungssystem an einem anderen geographischen Standort verfügbar sind. Dieser Ansatz kann zum Schutz vor Naturkatastrophen, Stromausfällen oder anderen Unterbrechungen der Verfügbarkeit von Rechenzentren beitragen.
Viele Architekten verwenden einen Satz allgemeiner Begriffe, um auf einen Ansatz auf System- oder Komponentenebene für Hochverfügbarkeit zu verweisen und ihn detailliert zu beschreiben. Zu den gebräuchlichsten Begriffen, die in diesem Bereich verwendet werden, gehören:
Ein Kennwert, mit dem die Verfügbarkeit gemessen werden kann, ist die Betriebszeit, die im Allgemeinen als Prozentsatz der Zeit, in der ein System in einem bestimmten Zeitraum “verfügbar” war, gemessen wird. Die Definition des Begriffs verfügbar ist subjektiv und sollte früh im Systementwurfsprozess festgelegt werden, damit eine gemeinsame Einigung über dieses Ziel erzielt werden kann. Eine gewünschte Verfügbarkeitsebene wird häufig als angestrebte Betriebszeit definiert, die oft in Neunen ihren Ausdruck findet. Beispiel:
Verfügbarkeitsziele können in Form eines Service-Level-Agreements (SLA) zwischen den Benutzern eines Systems und der Organisation, die dieses System betreibt, formalisiert werden. Häufig enthalten SLAs andere leistungsbezogene Kennwerte, die über die reinen Verfügbarkeitsziele hinausgehen, wie z. B. erwartete Reaktionszeiten, und Definitionen der Strafen für das Erreichen dieser Ziele, wenn eine Lieferanten- und Kundenbeziehung besteht. Interne SLAs sind ebenso wichtig, obwohl sie in der Regel nicht die Anforderungen eines kundenorientierten SLA in Bezug auf Strafen und Berichterstattung enthalten.
Ein weiterer Ansatz, den Unternehmen in Bezug auf die Verfügbarkeit verfolgen, besteht darin, Kritikalitätsebenen für die von ihnen verwendeten Systeme festzulegen, die je nach den Auswirkungen, die ein Ausfall auf eine Organisation haben kann, von nicht unbedingt erforderlich bis grundlegend reichen. Zu den Überlegungen können Benutzererfahrung, Finanzen, Reputation und regulatorische Auswirkungen gehören, und jede Kritikalitätsebene kann eine andere SLA-Zieldefinition haben. Einige Organisationen bezeichnen ein bestimmtes System als “Ebene 1” oder “Geschäftskritisch”, andere Systeme dagegen als “Ebene 2” oder weniger geschäftskritisch mit deshalb weniger Einschränkungen oder anderen Konfigurationen.
Das Entwerfen und Erstellen eines Systems, das eine vordefinierte Verfügbarkeit erfüllt, erfordert einen ganzheitlichen Ansatz, der viele verschiedene Aspekte oder Themenbereiche berücksichtigt, wie zum Beispiel:
Der Aufbau eines Systems, das höhere Anforderungen an die Betriebszeit erfüllt, erfordert in der Regel eine erhebliche Vorabinvestition und die kontinuierliche Investition von Zeit und Ressourcen im Vergleich zu einem Referenzsystem, das nur eine Standardverfügbarkeitsebene erfüllt.Bei hoher Verfügbarkeit geht es jedoch nicht um alles oder nichts. Oft ist es sinnvoll zu überlegen, ob es Subsysteme gibt, für die Verfügbarkeitsziele gelockert werden können, ohne den Geschäftswert eines IT-Systems wesentlich zu beeinträchtigen.
Der Prozess des Entwerfens eines hoch verfügbaren Systems beginnt nicht mit einer leeren Leinwand. In den meisten Fällen bestimmen die vorhandene IT-Infrastruktur, die Richtlinien, das Fachwissen und die Präferenzen einer Organisation den Gesamtrahmen, den ein Enterprise-GIS-System berücksichtigen muss. Dazu gehören die auf Betriebszeit oder Verfügbarkeit gerichteten Erwartungen der unterstützenden Systeme und die IT-Komponenten, die zur Verfügung stehen, um eine hohe Verfügbarkeit zu erreichen. Berücksichtigen Sie die gegenseitigen Abhängigkeiten zwischen Entscheidungen, bei denen eine Entwurfsentscheidung oft eine andere hervorbringt. Viele dieser Details können als Entwurfseinschränkungen betrachtet werden, die dazu beitragen, einen Entwurfsprozess in Richtung eines für beide Seiten akzeptablen Ziels zu lenken, bei dem das System die Gesamtanforderungen erfüllt und sich gleichzeitig an den bereits von der Organisation festgelegten Standards orientiert und Kosten, Verwaltbarkeit und andere Faktoren in Einklang bringt.
Häufig gehören Entwurfseinschränkungen zu den folgenden Kategorien:
In ähnlicher Weise können IT-Organisationen die Auswahl an Infrastrukturen weiter einschränken, z. B. auf bestimmte Marken und Modelle für physische Hardware, Virtualisierungsschichten, Speichersysteme, Load Balancer, Reverseproxys usw.
Die Nutzung kommerzieller Cloud-basierter Infrastructure-as-a-Service (IaaS), seien es virtuelle Maschinen oder Kubernetes-Cluster, schränkt Ihre Optionen ebenfalls ein.
In Bezug auf ArcGIS Enterprise bezieht sich hohe Verfügbarkeit auf Maßnahmen, die die Verfügbarkeit einer einzelnen Bereitstellung von ArcGIS Enterprise erhöhen. Replizierte Bereitstellungen, die normalerweise geographisch in einem anderen Rechenzentrum oder in einer anderen Cloud-Region verteilt sind, bieten eine Möglichkeit der Notfallwiederherstellung. Weitere Informationen über Hohe Verfügbarkeit in ArcGIS Enterprise.
ArcGIS Enterprise bietet durch die Kombination mehrerer Computer in unterschiedlichen Konfigurationen ein höheres Maß an Verfügbarkeit. Die Komponenten von ArcGIS Enterprise verwenden unterschiedliche Ansätze, um hohe Verfügbarkeit zu erreichen:
Eine Portal-Site mit hoher Verfügbarkeit besteht aus zwei Servern, die miteinander verbunden sind, um die HA-Site zu erstellen. Sie sind jeweils vollständig redundant. Das System verwaltet aber einen Computer als primären Knoten, während der andere Computer der Standby-Knoten ist. Wenn der primäre Computer ausfällt, erkennt der Standby-Computer den Fehler und wird selbst zum primären Computer.
Auf Webserver-Ebene ist das System Aktiv/Aktiv, da jeder Portal-Knoten in der Lage ist, eingehende Anforderungen zu verarbeiten, und die Suchindizes über beide Systeme hinweg synchron gehalten werden. Zustandsänderungen, bei denen Bearbeitungen, Einladungen von Mitgliedern und Konfigurationen in der Portal-Datenbank gespeichert werden, werden jedoch nur von einem Knoten verarbeitet. Deshalb wird das Gesamtsystem als Aktiv/Passiv betrachtet.
Ein hoch verfügbares Portal erfordert auch einen Load Balancer, um Anforderungen zwischen den beiden Knoten zu verteilen, in der Regel mit einer Round-Robin-Methode. Der primäre und der Standby-Knoten informieren sich durch die Kommunikation zwischen den Computern über Ports und Datenbanksynchronisierung gegenseitig über den Zustand, verlassen sich aber auch auf den gemeinsamen Dateispeicher für das Inhaltsverzeichnis des Portals, bei dem es sich um eine NFS-Dateifreigabe, eine UNC-Dateifreigabe oder einen Cloud-nativen Objektspeicher handeln kann.
Weitere Informationen zum Konfigurieren einer Portal for ArcGIS-Bereitstellung mit hoher Verfügbarkeit.
Eine hoch verfügbare GIS-Server-Site besteht aus zwei oder mehr vollständig redundanten Computern, die zu einer ArcGIS Server-“Site” in Form einer Aktiv/Aktiv-Konfiguration verbunden sind, in der die Workloads auf alle Knoten verteilt werden. Ein hoch verfügbarer GIS-Server erfordert auch einen Load Balancer, um Anforderungen, in der Regel mit einem Round-Robin-Ansatz, an die Mitgliedscomputer weiterzuleiten, obwohl der Webdatenverkehr auch im primären Standby-Modus weitergeleitet werden kann.
Über den Zustand informieren sich die Computer in einer Site gegenseitig in erster Linie über einen gemeinsamen Speicherort für die Serververzeichnisse und den Konfigurationsspeicher, in der Regel eine NFS- oder UNC-Dateifreigabe. Für Cloud-Systeme sind auch Cloud-native Optionen für den Konfigurationsspeicher verfügbar, z. B. DynamoDB- und S3-Speicher in AWS oder Azure Files-Speicher in Microsoft Azure.
Es ist erwähnenswert, dass einige spezialisierte GIS-Serverrollen, wie z. B. GeoEvent Server, nicht für die Ausführung in einer Site mit mehreren Computern konfiguriert werden können. Daher sind besondere Überlegungen erforderlich, um für diese GIS-Serverrollen eine höhere Verfügbarkeit zu erreichen.
Weitere Informationen zum Erreichen einer Bereitstellung von ArcGIS Server mit hoher Verfügbarkeit finden Sie unter Konfigurieren einer Site mit mehreren Computern. Ressourcen für Bereitstellungen mit hoher Verfügbarkeit auf einem einzelnen Computer sind ebenfalls verfügbar.
Web Adaptor kann redundant auf zwei oder mehr Computern bereitgestellt werden, wobei jede Instanz in einer Aktiv/Aktiv-Konfiguration vollständig redundant ist. Für diese Konfiguration ist ein Front-End-Load Balancer erforderlich, an den Clients ihre Anforderungen senden und der die Anforderungen auf beide Web Adaptor-Hosts verteilt. Weitere Ressourcen finden Sie in der Dokumentation.
Data Store vom Typ “relational”: Ein hoch verfügbarer Data Store vom Typ “relational” besteht aus genau zwei vollständig redundanten Instanzen in einer Aktiv/Aktiv-Clusterkonfiguration. Wenn der primäre Data-Store-Computer ausfällt, erkennt der Standby-Computer den Fehler und wird selbst zum primären Computer. Clients können dann gehostete Feature-Services weiter ohne Unterbrechung verwenden.
Graph Data Store: Ein hoch verfügbarer Graph Store besteht aus genau drei vollständig redundanten Instanzen in einer Aktiv-Aktiv-Clusterkonfiguration.
Objektspeicher: Die hohe Verfügbarkeit für den Objektspeicher wird im Cluster-Modus unterstützt, wobei für diese Architektur mindestens drei Computer erforderlich sind. Da im Cluster-Modus die Daten auf diesen drei Computern repliziert werden, bleibt der Data Store beim Ausfall eines einzelnen Computers verfügbar.
Big Data Store vom Typ “spatiotemporal”: Data Stores dieses Typs unterstützen auch den Cluster-Modus. Cluster sollten eine ungerade Anzahl an Computern (was für die Konsensfindung unter den Mitgliedern erforderlich ist) sowie mindestens drei Computer enthalten. Alle diese Konfigurationen sind Aktiv/Aktiv-Konfigurationen mit hoher Verfügbarkeit.
Das Dokumentationsthema Konfigurieren von verwalteten Data Stores mit hoher Verfügbarkeit enthält zusätzliche Anleitungen, Schritte und Empfehlungen.
Die Verfügbarkeit von Datenbankressourcen ist ein spezieller Bereich der Architektur mit vielen anbieterspezifischen Optionen für jedes einzelne Datenbankangebot, zu denen auch Aktiv/Aktiv- und Aktiv-Passiv/Muster gehören. Im Allgemeinen kann ArcGIS eine Verbindung zu diesen Konfigurationen herstellen, wenn bei der Datenregistrierung, über die auf Services zugegriffen oder Services veröffentlicht werden, ein DNS-Alias oder eine flexible IP-Adresse verwendet wird, auf die immer von ArcGIS aus zugegriffen wird, die aber bei einem Ausfall des primären Systems auf eine andere Backend-Datenbank verweisen kann. In diesem Szenario bemerken die ArcGIS-Komponenten die Änderung in der Backend-Datenbank nicht und funktionieren weiterhin erwartungsgemäß, vorausgesetzt, dass dieselben Anmeldeinformationen, dasselbe Schema und dieselben Zeilen verfügbar sind.
Wenn Sie fundierte und effektive Entscheidungen im Zusammenhang mit hoher Verfügbarkeit treffen möchten, dann sollten Sie die folgenden Entwurfsempfehlungen berücksichtigen: