Cluster


Wird auf einem Cluster-System ein Plugin installiert, so sollte die Cluster-Verbindung aktiv sein. Dann wird das Plugin auf alle Server im Cluster übertragen und steht dort sofort zur Verfügung. Ansonsten müssen die Server neu gestartet werden.

Funktionsweise

Oberfläche zum Konfigurieren von Clustern

Xima® Formcycle verfügt über die Möglichkeit für eine hohe Verfügbarkeit des Systems ein Failover-Cluster im Sinne eines Hot-Standbys zu betreiben. Hierbei werden mehrere Instanzen von Master-Server miteinander verbunden, sodass sich diese gegenseitig überwachen und auf Ausfälle reagieren können. Hierfür sind die Master-Server von Xima® Formcycle in zwei verschiedene Modi (Knoten-Typ) betreibbar:

Master

In diesem Modus ist der Master-Server von Xima® Formcycle ohne Einschränkungen voll nutzbar und betriebsbereit. Er befindet sich im Standardfall im Knoten-Status Aktiv.

Failover

Im Failover-Modus schaltet der Master-Server verschiedene Funktionalitäten wie zum Beispiel die Verbindungen zum Frontend-Server und das zeitgesteuerte Ausführen von Statuswechseln ab. In diesem Zustand befindet sich der Failover-Knoten im Status Leerlauf. Abseits der deaktivieren Funktionen sind auf diesem Server Formulare und die Verwaltungsoberfläche weiterhin aufruf- und nutzbar.

Failover-Szenario

Sollte im laufenden Betrieb nun der Ausfall oder die Trennung eines Knotens vom Typ Master registriert werden (z.B. Server-Ausfall oder Verlust der Netzwerkverbindung), so handeln die verfügbaren Failover-Knoten untereinander aus, welcher für dessen Ersetzung verantwortlich gemacht wird. Dies ist im Regelfall der Knoten, der aktuell keinen anderen Master-Knoten vertritt und am längsten Mitglied des Cluster-Verbundes ist. Dieser Knoten startet nun die abgeschalteten Funktionen und versucht pauschal die Verbindung zu allen ihm bekannten Frontend-Server mit aktivierter Auswahl Automatisch verbinden herzustellen. Er befindet sich nun im Status Aktiv (Failover) und ersetzt den ausgefallenen Master-Knoten in vollem Funktionsumfang. Tritt dieser anschließend mit gleich gebliebener Knoten-ID dem Cluster wieder bei, so veranlasst der Failover-Knoten diesen wieder alle Verbindungen zum Frontend-Server aufbaut und somit im Status Aktiv alle Funktionalitäten bereit zu stellen. Der Failover-Knoten selbst begibt sich wieder in den Status Leerlauf und wartet auf weitere Ereignisse auf die er wieder entsprechend reagieren kann.

Technische Voraussetzungen

Um ein Cluster-Verbund betreiben zu können, ist es nötig, dass sich die einzelnen Instanzen der Master-Server untereinander sehen und erreichen können. Dies ist je nach Konfiguration auch trotz der Verwendung einer Firewall realisierbar. Abhängig vom verwendeten Protokoll (Standard: UDP) ist es des Weiteren unter Umständen nötig die zugehörigen Ports frei zu geben.

Konfiguration

Oberfläche zur Änderung der Grundeinstellungen

Aktiviert

Aktiviert bzw. Deaktiviert die Cluster-Funktionalität des aktuellen Master-Servers. Ist diese deaktiviert, so wird die aktuelle Instanz mit vollem Funktionsumfang betrieben, steht aber innerhalb des Cluster-Verbundes nicht zur Verfügung und wird somit bei einem Ausfall nicht durch einen Failover-Knoten ersetzt.

Knoten-Typ

Gibt an, in welchem Modus der aktuelle Master-Server betrieben werden soll. Mögliche Werte sind hierbei aktuell Master (kompletter Funktionsumfang inkl. Ersetzung bei Ausfall) und Failover (Eingeschränkter Funktionsumfang, dient als Ersatz bei Ausfall eines Master-Knotens).

Gruppenname

Dient als Identifikator des Cluster-Verbunds. Alle Master-Server welche in einem Verbund betrieben werden sollen, müssen denselben Gruppennamen besitzen.

Zum Beispiel: XFC-Cluster

Knoten-ID

Dient als Identifikator der Master-Server-Instanz innerhalb des Cluster-Verbundes. Diese ID muss innerhalb einer Gruppe eindeutig sein.

Zum Beispiel: XFC-Master

Erweiterte Einstellungen

Der Option "Erweiterte Einstellungen" ermöglicht es zusätzliche Eingaben für die Konfigurationen der Cluster-Verbindung zu aktivieren. Ist dieser Schalter aktiviert, so wird der Reiter "Erweiterte Einstellungen" aktiviert und an Stelle der Standard-Konfiguration die geänderten Einstellungen berücksichtigt. Nötig ist dies meist nur bei problematischen Netzwerk-Topologien, Beschränkungen der Port-Freigaben oder bei weiteren Problemen beim Aufbau des Clusters.

Übersicht

Übersicht über alle Cluster-Knoten, die sich in der Gruppe befinden.

Die Übersicht dient der Anzeige alle sich aktuell in der Gruppe befindlichen Cluster-Knoten inkl. deren ID, Status, Adresse (logische Netzwerk-Adresse), Typ und dem Zeitpunkt des Beitritts in eben diese. Ferner wird die aktuelle Instanz auf deren Oberfläche diese Informationen angezeigt werden in fetter Schrift dargestellt.

Erweiterte Einstellungen

Oberfläche zur Änderung der erweiterten Einstellungen

Protokoll

Diese Auswahl dient der Festlegung des zu verwendenden Netzwerk-Protokolls. Hier steht das verbindungslose UDP und das verbindungsorientierte TCP zur Verfügung.

Standard-Einstellung: UDP

Lokale Adresse (Netzwerkadapter)

In dieser Einstellung wird die zu benutzende IP-Adresse (oder ein auflösbarer Hostname) und der dazugehörige Port des lokalen Servers konfiguriert (Binde-Adresse). Zu beachten ist hierbei, dass besagte Adresse zu einem lokalen Netzwerkadapter passen muss. Sollte dies nicht der Fall sein, so erscheint beim Speichern der Einstellungen und dem dazugehörigen Verbindungsaufbau eine entsprechende Fehlermeldung und die Cluster-Verbindung kann nicht zu Stande kommen. Ferner muss der konfigurierte Port für die Kommunikation über das jeweilige Protokoll freigegeben sein. Sollte des Weiteren hier der Wert 0 eingetragen werden wird ein automatischer Mechanismus zum Ermittelt und Benutzen eines freien, temporären Ports eingesetzt.

Standardseinstellungen

  • Adresse:
  • Port:7600

Beispielskonfigurationen

  • Adresse: 192.168.0.1, Port:7600
  • Adresse: fc-master.example.de, Port 7600

Verwendung alternativer externer Adresse

Verwendung einer alternativen externen Adresse

Der Schalter "Alternative externe Adresse verwenden" ermöglicht es neben der lokalen Adresse des Netzwerkadapters eine externe Adresse zu konfigurieren über welche der aktuelle Server erreichbar ist. Nötig wird dies bei komplexeren Netzwerk-Topologien bei denen der Server zum Beispiel durch eine Firewall nicht direkt erreichbar ist. Um eine Kommunikation nun dennoch zu gewährleisten ist es nötig hier die externe Adresse der Firewall zu definieren. Ferner ist in der Firewall eine Portweiterleitung (port forwarding oder auch virtual server) auf den Server einzurichten.

Externe Adresse

Dient zur Eingabe der externen Adresse (IP oder Hostname) und des ggf. abweichenden externen Ports über welchen der Server durch eine Weiterleitung auf die lokale Adresse erreichbar ist. Durch die Angabe des Ports mit dem Wert 0 wird die Verwendung eines abweichenden Ports deaktiviert und der Port der lokalen Adresse verwendet.

Multicast-Adresse und Port (nur für UDP)

Verwendung des UDP-Protokolls

Diese Konfiguration ermöglicht es, den UDP-Port und die Adresse für das Discovery, also das Auffinden der weiteren Clusterknoten, zu hinterlegen. Hierfür wird an die angegebene Adresse unter Verwendung des zugehörigen Ports ein Multicastsignal gesendet und auf die Antwort der weiteren Knoten gewartet. Um dies zu ermöglichen, ist es neben einer entsprechenden Portfreigabe der Firewall nötig, dass alle Knoten des gewünschten Clusters dieselbe Adresse- bzw. Portkombination verwenden. Als gültiger Adressraum gilt hierbei der IPv4-Standard von 224.0.0.0 bis 239.255.255.255. Ferner gilt für die Angabe des Ports ebenso die Regel, dass dieser bei einem konfigurierten Wert von 0 automatisch aus dem Bereich der verfügbaren temporären Ports ermittelt wird.

Standardseinstellungen

  • Adresse:228.8.8.8
  • Port:7600

Beispielskonfiguration

  • Adresse: 224.0.0.0
  • Port:9999

Erwartete Knoten (nur für TCP)

Verwendung des TCP-Protokolls

Bei der Verwendung des TCP-Protokolls ist es nötig, innerhalb dieser Tabelle alle erwarteten Cluster-Knoten anzugeben. Grundlage hierfür ist die Tatsache, dass das Discovery (das Auffinden der weiteren Cluster-Knoten) nicht mittels Multicast realisiert werden kann und man diese entsprechend hinterlegen muss. Das Hinzufügen eines Eintrages in diese Tabelle wird mittels Plus-Zeichen und das Bearbeiten durch den in der entsprechenden Tabellenzeile dargestellten Stifts realisiert. Nun erfolgt die Eingabe der Adresse des neuen erwarteten Knotens. Hierbei ist dem Muster <IP-Adresse oder Hostname>:<Port> zu folgen. Bei der Verwendung des Hostnamens ist zu beachten, dass dieser bei fehlschlagender Auflösung zu einer IP-Adresse in der Cluster-Konfiguration nicht berücksichtigt werden und somit ggf. der entsprechende Server nicht dem Cluster beitreten kann. Aufgrund dieser Tatsache ist die Verwendung der IP-Adresse anzuraten. Nach der Eingabe ist diese zusätzlich über das Hacken-Symbol in der entsprechenden Zeile zu bestätigen oder ist über das Kreuz-Symbol verwerfbar.

Beispielskonfigurationen

  • 192.168.0.1:7600
  • fc-master.beispiel.de:7600