Einführung / FirstSpirit ServerManager / Server-Eigenschaften / Clustering / Konfiguration Master-Server
Konfiguration FirstSpirit Master-Server
Inhaltsverzeichnis |
Um einen herkömmlichen FirstSpirit-Server als Master-Server in einem Clusterverbund zu registrieren, wird der Radiobutton „FirstSpirit Master-Server“ aktiviert.
Ein FirstSpirit Master-Server verwaltet zentral alle FirstSpirit-Projekte und verteilt die Aufgaben, soweit möglich, auf andere FirstSpirit-Server. Die verfügbaren Server (z. B. Generation-Slaves) werden im Bereich „Registrierte Slaves“ angezeigt:
Mit einem Klick auf die Schaltfläche Slave deregistrieren kann ein „Registrierter Slave“ wieder aus der Auswahl entfernt werden.
Zugriff auf das Dateisystem des Master-Servers
Um Daten an die Slave-Server zu übertragen und von den Slave-Servern aus Log-Dateien zum Master-Server zu schreiben, muss ein Zugriff über ein verteiltes Dateisystem möglich sein und die notwendigen Schreib- und Leserechte für ausgewählte Verzeichnissen des Master-Servers erteilt werden.
Innerhalb der Clusterumgebung existieren damit mindestens drei unterschiedliche Verzeichnisbäume.
Im Dateisystem des Masters:
- das Root-Verzeichnis des FirstSpirit Master-Servers (Platzhalter: <FirstSpirit_ROOT (Master)>)
Im Dateisystem des Slaves:
- das Root-Verzeichnis des FirstSpirit Slave-Servers (Platzhalter: <FirstSpirit_ROOT (Slave)>)
- Die Abbildung der ausgewählten Verzeichnisse des Master-Server im Dateisystem des FirstSpirit Slave-Servers (Platzhalter: <FS_ROOT_MASTER (Mapping)>)
Hinweis: Diese Platzhalter müssen durch die Angabe des individuellen Pfads zum jeweiligen Verzeichnis ersetzt werden (z. B. /opt/firstspirit5/).
Die folgenden Verzeichnisse des FirstSpirit Master-Servers werden so eingebunden, dass sie vom Slave-Server aus erreicht werden können (bzw. in das Dateisystem des Slave-Servers abgebildet werden). Beim Registrieren des Slaves wird später der Pfad zu diesem Verzeichnis benötigt (hier Platzhalter: <FS_ROOT_MASTER (Mapping)>) (siehe Slave-Konfiguration - Pfad zu FirstSpirit).
- <FirstSpirit_ROOT (Master)>/conf nach <FS_ROOT_MASTER (Mapping)>/conf
(Konfigurationsdateien)
Der Zugriff ist notwendig, damit die Konfigurationseinstellungen des Masters auf dem Slave zur Verfügung stehen; read-only - <FirstSpirit_ROOT (Master)>/data/projects nach <FS_ROOT_MASTER (Mapping)>/data/projects
(Projektinhalte)
Der Zugriff ist notwendig, um dem Slave die entsprechenden Projektdaten zur Verfügung zu stellen; read-only - <FirstSpirit_ROOT (Master)>/data/schedule nach <FS_ROOT_MASTER (Mapping)>/data/schedule
(Auftragsverwaltung)
Der Zugriff ist notwendig, um bei der Ausführung von Aufträgen über den Slave-Server, die entsprechenden Log-Infos zum Master-Server zu schreiben; read-write - <FirstSpirit_ROOT (Master)>/export nach <FS_ROOT_MASTER (Mapping)>/export
(Projektexporte)
Der Zugriff ist nur notwendig, wenn die Clusterknoten im Legacy-Modus laufen (im Isolated-Mode wird kein Zugriff benötigt); read-only - <FirstSpirit_ROOT (Master)>/log nach <FS_ROOT_MASTER (Mapping)>/log
(Logdateien)
Der Zugriff ist notwendig, um entsprechende Log-Infos zum Master-Server zu schreiben; read-write - <FirstSpirit_ROOT (Master) / Staging-Verzeichnis des Jetty Web Servers> nach <FS_ROOT_MASTER (Mapping) / Staging-Verzeichnis des Jetty Web Servers>
(Generierungsergebnisse)
Der Zugriff ist notwendig, um die Generierungsergebnisse zum Master zu schreiben (Standardverhalten); read-write
Die Unterscheidung zwischen Verzeichnissen mit read-only und read-write-Zugriff dient dazu, die Betriebssicherheit und den Datendurchsatz zu erhöhen. Die zentralen Repository-Daten des Master-Servers werden nur im Lesezugriff verteilt.
Falls erhöhte Sicherheitsanforderungen bestehen, sollten die Zugriffe mittels der vom Betriebssystem unterstützten Authentifizierungsverfahren (IP-Adresse, Kerberos, …) auf den exklusiven Zugriff der FirstSpirit-Slaves eingeschränkt werden.
Hinweis zur Reihenfolge: Die Konfiguration des Slave-Servers und der Zugriff auf die Verzeichnisse des Master-Servers müssen in einer bestimmten Reihenfolge erfolgen (siehe Konfigurationsschritte Slave). |
Nach der initialen Umstellung eines FirstSpirit-Servers auf einen FirstSpirit Master-Server muss der Server neu gestartet werden. |
Aktualisierung der Slave-Server
Um eine spätere Aktualisierung auf eine neue FirstSpirit-Version zu ermöglichen, werden einige JAR-Dateien und Start-Skripte direkt über das verteilte Dateisystem vom Master-Server verwendet. Die folgenden Verzeichnisse müssen dazu so eingebunden werden, dass sie die entsprechenden Verzeichnisse der Slave-Server ersetzen (siehe Abbildung oben):
- <FirstSpirit_ROOT (Master)>/bin ersetzt <FirstSpirit_ROOT (Slave)>/bin
(Start-Umgebung inkl. benötigter System-Binaries)
Zugriff: optional; read-only. - <FirstSpirit_ROOT (Master)>/server ersetzt <FirstSpirit_ROOT (Slave)>/server
(Java-Umgebung inkl. aller Bibliotheken)
Zugriff: optional; read-write. - <FirstSpirit_ROOT (Master)>/shared ersetzt <FirstSpirit_ROOT (Slave)>/shared
(Ressourcen, Bibliotheken, Klassen)
Zugriff: optional; read-only.
Nach einer Aktualisierung der Master-Server werden auch die Slave-Server neu gestartet und sind anschließend ebenfalls aktualisiert, ohne dass Dateien manuell ausgetauscht werden müssen (siehe auch Aktualisierung in einem Clusterverbund).
Der Master-Server enthält den gesamten Funktionsumfang eines normalen FirstSpirit-Servers und sollte bezüglich der Hardware ausfallsicher ausgelegt sein, da alle FirstSpirit-Clients den Master-Server als Endpunkt der Netzverbindungen verwenden. Die Slave-Server alleine sind nicht eigenständig benutzbar. Umgekehrt sind aber alle FirstSpirit-Funktionen auch bei ausgefallenen Slave-Servern alleine durch den Master-Server ohne Konfigurationsänderungen im Betrieb verfügbar. Die Generierungsaufträge werden dann automatisch auf dem Master, statt auf dem Slave ausgeführt, was nur zu einer höheren Auslastung des Masters führt. |
Fehleranalyse und Monitoring
Folgende Log-Dateien des Masters dienen zur Fehleranalyse bei Problemen während und nach der Konfiguration:
- <FirstSpirit_ROOT (Master)>/log/fs-wrapper.log
- <FirstSpirit_ROOT (Master)>/log/fs-server.log
Auf der FirstSpirit-Startseite kann über das FirstSpirit ServerMonitoring im Bereich „Clustering“ die Verfügbarkeit und die Auslastung der Slave-Server überwacht werden (siehe ServerMonitoring - FirstSpirit - Clustering).