Virtimo Cluster-Manager
|
Die Nutzung des Cluster-Managers ist lizenzpflichtig. Für jede INUBIT-Instanz innerhalb eines Clusters muss eine separate Lizenz erworben werden. |
Verwendung
Mit dem Virtimo Cluster-Manager besteht die Möglichkeit, mehrere INUBIT-Instanzen zu einem Cluster zusammenzuführen, zur Laufzeit neue Instanzen hinzuzufügen bzw. herauszunehmen.
So kann beispielsweise eine gezielte Reaktion auf hohe Lasten oder hohe Verfügbarkeit eines INUBIT-Systems erreicht werden.
Voraussetzungen
Die folgenden Komponenten sind für die vollständige Implementierung eines geclusterten Systems erforderlich:
-
INUBIT-Instanzen: Mindestens zwei INUBIT-Installationen, einschließlich einer Lizenz für die Verwendung des Cluster-Managers
-
JGroups: INUBIT-Instanzen müssen über JGroups miteinander kommunizieren können
-
Load-Balancer: Die eingehenden Anfragen an die INUBIT-Instanzen des Clusters verteilen
Der Cluster-Manager steuert, welche Knoten zum Cluster gehören und wer der aktuelle Leader ist. Der Load-Balancer kümmert sich um die Verteilung der eingehenden Anfragen an die einzelnen INUBIT-Instanzen im Cluster. Diese Trennung der Zuständigkeiten muss bei der Konfiguration mit berücksichtigt werden
Architektur
Ein Cluster besteht immer aus einem Leader-Knoten und beliebig vielen Backup-Knoten. Sollen INUBIT-Instanzen in einem Cluster zusammenarbeiten, muss dies bei Implementierung der Technical Workflows berücksichtigt werden.
Leader-Knoten
Der Leader-Knoten übernimmt dabei alle Aufgaben, die innerhalb des Systems fachlich auf nur einem einzelnen Knoten ausgeführt werden sollen, z.B. geschedulte Workflows.
Backup-Knoten
Alle Knoten (Leader und Backup) übernehmen die Aufgaben, die fachlich parallel ausgeführt werden können.
Die Prüfung, ob die aktuelle INUBIT-Instanz ein Leader- oder Backup-Knoten ist, erfolgt mithilfe eines zusätzlichen Workflows.
Applikationsstatus
Der Cluster-Manager läuft zusätzlich auf jeder INUBIT-Instanz und prüft selbstständig in regelmäßigen Abständen, ob die Instanz noch verfügbar ist. Sollte der INUBIT nicht mehr erreichbar sein, wird die Instanz im Cluster abgemeldet. Die Abmeldung im Load-Balancer ist keine Aufgabe des Cluster-Managers und muss separat gelöst werden
Folgende INUBIT REST-API Endpunkte bieten sich zur Prüfung des Status an:
Konfiguration
Aktivierung des Cluster-Managers
Über die Datei <inubit-installdir>/inubit/server/ibis_root/conf/ibis.xml kann der Cluster-Manager aktiviert werden:
<Properties>
...
<!-- Cluster Manager configuration -->
<Property name="ActivateClusterManager" type="Boolean">false</Property>
</Properties>
-
Process Engine stoppen
-
Property
ActivateClusterManagerauftruesetzen -
Process Engine starten
Konfiguration des Cluster-Managers
-
Die eigentlichen Konfigurationsdetails für den Cluster-Manager werden über die Datei
inubit-installdir>/inubit/server/ibis_root/conf/clustermanager/virtimo_cluster_manager.xmlgesteuert. Hier werden alle für die Konfiguration der Clusterknoten erforderlichen Einstellungen vorgenommen. -
Die Standardkonfiguration von JGroups befindet sich in
<inubit-installdir>/inubit/server/ibis_root/conf/clustermanager/jgroups.xml. Alle erforderlichen Einstellungen für die Kommunikation zwischen Knoten werden hier vorgenommen.Die Datei enthält alle möglichen Konfigurationsoptionen, die über diesen Link aufgerufen werden können JGroups.
Festlegung des Leader-Knotens
Über die Einstellung priority wird festgelegt, welcher Knoten als Leader im Cluster aktiv sein soll.
Legen Sie für genau einer Instanz in der Konfiguration den höchsten Integerwert fest.
Sobald diese Instanz dem Cluster beitritt, wird sie als Leader gesetzt.
Sollte der Leader ausfallen, wird anhand der Priorität der übrigen Instanzen ein neuer Leader gewählt. Dies ist die Instanz mit der dann aktuell höchsten Priorität.
|
Konfigurieren Sie für jede INUIBT-Instanz im Cluster eine andere Priorität. Damit lässt sich die Wahl des Leader-Knotens am sichersten steuern. |
Prüfung auf den Leader-Knoten
Auf der Instanz, die als Leader aktiv ist, wird eine Datei im Dateisystem abgelegt. Der Pfad zur Ablage kann über die Konfiguration angepasst werden. Ein zusätzlicher Workflow prüft das Vorhandensein dieser Datei. Darüber kann zur Laufzeit ermittelt werden, ob die jeweilige INUBIT-Instanz der Leader-Knoten ist oder nicht.
Den Workflow finden Sie unter: <inubit-installdir>/inubit/server/ibis_root/conf/clustermanager/inubit-cluster-manager-workflow.zip.
Benutzerdefiniertes Logging aktivieren
Um die Logausgaben des Cluster-Managers in eine separate Datei umzuleiten, gehen Sie wie folgt vor:
-
Melden Sie sich mit einer Workbench an
-
Gehen Sie zur Registerkarte Administrator und wählen Sie Allgemeine Einstellungen
-
Navigieren Sie in der Baumstruktur zu Logging > Trace
-
Wählen Sie im rechten Seitenbereich Individuelles Server-Trace aus und klicken Sie auf die Schaltfläche "…".
-
Der Logger-Dialog wird geöffnet
-
Klicken Sie mit der rechten Maustaste, um das Kontextmenü zu öffnen und wählen Sie Hinzufügen
-
Geben Sie den Namen
de.virtimo.inubit.clustermanagerein, wählen Sie "Rotierende Datei-Ausgabe" und klicken Sie auf OK -
Wenn Sie den Namen der Protokolldatei aktualisieren möchten, wählen Sie den neu hinzugefügten Eintrag in der Tabelle aus und klicken Sie auf die Schaltfläche "…".
-
Wählen Sie "Ausgabedatei" und passen Sie den Wert auf etwa
$ibis.root.directory$/log/clustermanager.logan -
Schließen Sie den Dialog "Rotierende Dateiausgabe" mit OK
-
Schließen Sie den Dialog "Logger" mit OK
-
Speichern Sie die allgemeinen Einstellungen, indem Sie auf das Speichern-Symbol in der globalen Symbolleiste klicken