Hochverfügbarkeit
Private Cloud Appliance wurde entwickelt, um einzelne Fehlerquellen zu beseitigen, sodass das System und die gehosteten Workloads bei Hardware- oder Softwarefehlern sowie bei Upgrades und Wartungsvorgängen betriebsbereit bleiben.
Redundanz ist auf jeder Ebene in die Architektur integriert: Hardware, Controllersoftware, Masterdatenbank, Services usw. Funktionen wie Backup, automatisierte Serviceanfragen und optionales Disaster Recovery verbessern die Servicefreundlichkeit und Servicekontinuität des Systems weiter.
Hardwareredundanz
Die minimale Basisrackkonfiguration enthält redundante Netzwerk-, Speicher- und Serverkomponenten, um sicherzustellen, dass der Ausfall eines einzelnen Elements die allgemeine Systemverfügbarkeit nicht beeinträchtigt.
Die Datenkonnektivität im gesamten System basiert auf redundanten Paaren von Leaf- und Spine-Switches. Die Linkaggregation ist auf allen Schnittstellen konfiguriert: Switch-Ports, Host-NICs und Uplinks. Die Leaf Switches verbinden die Rackkomponenten über Kreuzverkabelung mit redundanten Netzwerkschnittstellen in jeder Komponente. Jeder Leaf Switch hat auch eine Verbindung zu jedem der ebenfalls miteinander verbundenen Wirbelsäulenschalter. Die Spine Switches bilden das Rückgrat des Netzwerks und ermöglichen Traffic außerhalb des Racks. Ihre Uplinks zum Data-Center-Netzwerk bestehen aus zwei Kabelpaaren, die über zwei redundante ToR (Top-of-Rack)-Switches miteinander verbunden sind.
Das Managementcluster, in dem die Controller-Software und Services auf Systemebene ausgeführt werden, besteht aus drei vollständig aktiven Managementknoten. Eingehende Anforderungen durchlaufen die virtuelle IP des Managementknotenclusters und werden von einem Load Balancer auf die drei Knoten verteilt. Wenn einer der Knoten nicht mehr reagiert und vom Cluster eingegrenzt wird, sendet der Load Balancer weiterhin Traffic an die beiden verbleibenden Knoten, bis der fehlerhafte Knoten wieder fehlerfrei ist und wieder mit dem Cluster verknüpft ist.
Der Speicher für das System und die Cloud-Ressourcen in der Umgebung wird von der internen ZFS Storage Appliance bereitgestellt. Die beiden Controller bilden einen Aktiv-Aktiv-Cluster und bieten gleichzeitig hohe Verfügbarkeit und hervorragenden Durchsatz. Die ZFS-Pools werden auf Festplatten in einer Datenspiegelungskonfiguration erstellt, um einen optimalen Datenschutz zu gewährleisten. Dies gilt sowohl für den standardmäßigen Festplatteneinsatz mit hoher Kapazität als auch für einen optionalen SSD-basierten Hochleistungseinsatz.
Systemverfügbarkeit
Die Software- und Serviceebene wird auf dem Drei-Knoten-Managementcluster bereitgestellt und nutzt die High Availability, die dem Clusterdesign innewohnt. Die Kubernetes-Containerorchestrierungsumgebung verwendet auch Clustering sowohl für die eigenen Controllerknoten als auch für die Servicepods, die sie hostet. Mehrere Replikate der Microservices werden zu einem bestimmten Zeitpunkt ausgeführt. Knoten und Pods werden auf die Managementknoten verteilt. Kubernetes stellt sicher, dass fehlerhafte Pods durch neue Instanzen ersetzt werden, damit alle Services in einem aktiven/aktiven Setup ausgeführt werden.
Alle Services und Komponenten speichern Daten in einer gemeinsamen, zentralen MySQL-Clusterdatenbank, von der Instanzen auf den drei Managementknoten bereitgestellt werden. Verfügbarkeit, Load Balancing, Datensynchronisierung und Clustering werden alle durch interne Komponenten des MySQL-Clusters gesteuert.
Ein wesentlicher Teil des Infrastrukturnetzwerks auf Systemebene ist softwaredefiniert. Die Konfiguration virtueller Switches, Router und Gateways wird nicht von den Switches gespeichert und verwaltet, sondern über mehrere Komponenten der Netzwerkarchitektur verteilt. Der Netzwerkcontroller wird als hochverfügbarer containerisierter Service bereitgestellt.
Das Upgrade-Framework nutzt die Hardwareredundanz und die geclusterten Designs, um Rolling Upgrades für alle Komponenten bereitzustellen. Beim Upgrade einer Komponenteninstanz stellen die verbleibenden Instanzen sicher, dass keine Ausfallzeiten auftreten. Das Upgrade ist abgeschlossen, wenn alle Komponenteninstanzen upgegradet und auf den normalen Betrieb zurückgesetzt wurden.
Kontinuität des Service
Private Cloud Appliance bietet mehrere Funktionen zur weiteren Verbesserung der Hochverfügbarkeit. Das Gesundheitsmonitoring auf allen Ebenen des Systems ist ein Schlüsselfaktor. Diagnose- und Performancedaten werden aus allen Komponenten gesammelt, dann zentral gespeichert und verarbeitet und Administratoren in Form von Visualisierungen auf Standard-Dashboards zur Verfügung gestellt. Darüber hinaus werden Alerts generiert, wenn Metriken die definierten Schwellenwerte überschreiten.
Um den Datenverlust zu mindern und die Wiederherstellung der System- und Servicekonfiguration im Falle eines Ausfalls zu unterstützen, werden regelmäßig konsistente und vollständige Backups erstellt. Ein Backup kann auch manuell ausgeführt werden, z.B. um einen Restore Point vor einer kritischen Änderung zu erstellen. Die Backups werden in einer dedizierten NFS-Freigabe in der ZFS Storage Appliance gespeichert und ermöglichen bei Bedarf die Wiederherstellung der gesamten Service-Enklave.
Optional können Workloads, die auf der Appliance bereitgestellt werden, durch die Implementierung von Disaster Recovery vor Ausfallzeiten und Datenverlust geschützt werden. Um dies zu erreichen, müssen zwei Private Cloud Appliance-Systeme an verschiedenen Standorten eingerichtet und als Replikat konfiguriert werden. Ressourcen, die der Disaster Recovery-Steuerung unterliegen, werden in den ZFS Storage Appliances in jedem System separat gespeichert und zwischen den beiden Systemen repliziert. Wenn ein Vorfall an einem Standort auftritt, wird die Umgebung mit minimaler Ausfallzeit auf dem Replikatsystem hochgefahren. Wir empfehlen, dass Disaster Recovery für alle kritischen Produktionssysteme implementiert wird.