1. Systemanforderungen
Die Systemanforderungen für Installation und Betrieb des FVA Simulation Hub sind abhängig davon, wie viele FVA-Workbench-Instanzen gestartet und welche Berechnungen durchgeführt werden.
Die folgenden Mindestanforderungen gelten beim Betrieb eines FVA Simulation Hub mit drei durchgängig laufenden FVA-Workbench-Instanzen:
-
Prozessor: 2,4 GHz mit 6 Kernen
-
RAM: 32 GB
-
Speicher: 20-30 GB (exkl. Betriebssystem)
2. Windows
2.1. Verzeichnisstruktur
Für die Installation der Anwendung wird die folgende Verzeichnisstruktur empfohlen:
| Verzeichnis | Beschreibung |
|---|---|
|
Verzeichnis für die Anwendungsdateien des FVA Simulation Hub. |
|
Verzeichnis für die Java-Laufzeitumgebung. |
|
Verzeichnis für die FVA-Workbench-Lizenzen. |
|
Verzeichnis für diverse Log-Dateien der Hilfswerkzeuge. |
|
Verzeichnis für diverse benötigte Hilfswerkzeuge. |
|
Verzeichnis für die FVA-Workbench-Instanzen. |
Je nach Bedarf können diese Verzeichnisse geändert bzw. frei gewählt werden. In diesem Fall müssen die Pfade angepasst werden, die im weiteren Verlauf der Installationhinweise angegeben sind.
2.2. Programme installieren
2.2.1. Notepad++
Die Installation von Notepad++ ist optional. Es wird aber empfohlen, um die Konfigurationdateien komfortabel zu bearbeiten.
Installation:
-
Download von https://notepad-plus-plus.org/
-
Installation mit
.exe-Datei
2.2.2. 7-zip
Das Windows-Standard-ZIP-Tool ist fehleranfällig (besonders mit langen Pfaden) und deshalb nicht zu verwenden. Als Alternative wird 7-zip empfohlen.
Installation:
-
Download von https://www.7-zip.de/
-
Installation mit
.exe-Datei
2.2.3. Java
Der FVA Simulation Hub benötigt zur Ausführung die Java-Laufzeitumgebung in der Version 21.
Installation:
-
Download von https://jdk.java.net/archive/ (Windows 21 zip)
-
kopieren nach
C:\FVA\FVA-Simulation-Hub\lib -
Entpacken mit "7-zip → Hier entpacken"
2.2.4. NSSM
Für die Ausführung des FVA Simulation Hub als Windows-Dienst wird NSSM (Non-Sucking Service Manager) vorausgesetzt.
Installation:
-
Download von https://nssm.cc/download
-
kopieren nach
C:\FVA\FVA-Simulation-Hub\tools -
Entpacken mit "7-zip → Hier entpacken"
2.2.5. FVA-Lizenzserver
Der FVA Simulation Hub muss mit Floating-Lizenzen betrieben werden. Dazu ist der Einsatz des FVA-Lizenzservers erforderlich.
Installation:
-
Download von https://download.fva-service.de/
-
kopieren nach
C:\FVA\FVA-Simulation-Hub\tools -
Installationhinweise unter https://doc.fva-service.de/ beachten
2.2.6. FVA-Workbench
Zur Durchführung von Berechnungen werden FVA-Workbench-Instanzen benötigt.
Je mehr Instanzen bereitgestellt werden, desto mehr Berechungen können zeitgleich bearbeitet werden. Die maxmiale Anzahl an FVA-Workbench-Instanzen ist hierbei nur durch die verwendete Hardware (Prozessoren, Arbeitspeicher, Festplattenkapazität) und die verfügbaren Lizenzen limitiert.
Installation:
-
Download von https://download.fva-service.de/ (Portable)
-
kopieren nach
C:\FVA\FVA-Simulation-Hub\worker -
Entpacken mit "7-zip → Entpacken nach 'FVA-Workbench-x.y.z-YYYYMMDD-XXXXX'"
Erst ab Version 9.0.0 der FVA-Workbench kann eine Instanz mehrfach aus einem Verzeichnis ausgeführt werden. Für alle Versionen davor müssen die FVA-Workbench-Portable-Archive mehrmals entpackt werden (Suffix der Verzeichnisse beispielsweise mit _01 und _02, je nach Anzahl benötigter Instanzen).
|
Folgende Versionen der FVA-Workbench werden unterstützt:
-
10.0.x (10.0.1, 10.0.0)
-
9.0.x (9.2.1, 9.2.0, 9.0.2, 9.0.1, 9.0.0)
-
8.1.x (8.1.2, 8.1.1, 8.1.0)
-
8.0.x (8.0.1, 8.0.0)
-
7.1.x (7.1.2, 7.1.1, 7.1.0)
Da die Portable-Varianten der FVA-Workbench verwendet werden, muss zwingend die "Microsoft Visual C++ Redistributable" installiert werden. Die zugehörige .exe-Datei befindet sich für gewöhnlich im Hauptverzeichnis der Protable-Version (Dateiname z. B. vc2017redist_x64.exe).
|
| Für die Berechnung von Gleitlagern mit COMBROS ist die Installation von MATLAB Runtime R2016b(9.1) erforderlich. Hier kann die Version heruntergeladen werden: www.mathworks.com/products/compiler/matlab-runtime.html |
2.2.7. FVA Simulation Hub
Installation:
-
Download von https://download.fva-service.de/
-
kopieren nach
C:\FVA\FVA-Simulation-Hub\app -
Entpacken mit "7-zip → Hier entpacken"
2.3. Konfiguration
2.3.1. Java-Laufzeitumgebung
Um den Pfad zur Java-Laufzeitumgebung zu konfigurieren, muss die Datei C:\FVA\FVA-Simulation-Hub\app\bin\run.conf.bat.example zu run.conf.bat umbenannt werden.
In dieser Datei muss der Pfad zur Java-Laufzeitumgebung gesetzt werden:
set "JAVA_HOME=C:\FVA\FVA-Simulation-Hub\lib\jdk-21.0.2"
2.3.2. Anwendung
Zum Ändern der Konfigurationsparameter muss die Datei C:\FVA\FVA-Simulation-Hub\app\config\application.yml.example zu application.yml umbenannt werden.
In dieser Datei können die Konfigurationsparameter der Anwendung bearbeitet werden. Ein Auflistung aller Parameter ist hier zu finden: Konfiguration
2.4. Anwendung ausführen
Öffnen Sie die Kommandozeile, wechseln Sie in das Installationsverzeichnis und starten Sie die Anwendung:
$ cd C:\FVA\FVA-Simulation-Hub\app $ bin\run.cmd
| Der hier beschriebene Start der Anwendung sollte nur für Testzwecke verwednet werden. Für den produktiven Betrieb sollte die Anwendung als Dienst betrieben werden. |
Die Anwendung startet standardmäßig unter dem Port 8080. Nach dem Start können Sie die erfolgreiche Ausführung im Browser testen. Klicken Sie dazu den folgenden Link: http://localhost:8080/
Verwenden Sie zum Beenden der Anwendung von der Kommandozeile aus die Tastenkombination [STRG]+[C]. Dadurch ermöglichen Sie der Anwendung ein "sanftes" Beenden mit dem automatischen Herunterfahren aller gestarteten FVA-Workbench-Instanzen.
|
2.5. Dienst einrichten
Dienst konfigurieren und starten
Dienst erstellen:
$ C:\FVA\FVA-Simulation-Hub\tools\nssm-2.24\win64\nssm.exe install FVA-Simulation-Hub C:\FVA\FVA-Simulation-Hub\app\bin\run.cmd
Ausführungsverzeichnis setzen:
$ C:\FVA\FVA-Simulation-Hub\tools\nssm-2.24\win64\nssm.exe set FVA-Simulation-Hub AppDirectory C:\FVA\FVA-Simulation-Hub\app
Log-Dateien umleiten:
$ C:\FVA\FVA-Simulation-Hub\tools\nssm-2.24\win64\nssm.exe set FVA-Simulation-Hub AppStdout C:\FVA\FVA-Simulation-Hub\logs\service.log $ C:\FVA\FVA-Simulation-Hub\tools\nssm-2.24\win64\nssm.exe set FVA-Simulation-Hub AppStderr C:\FVA\FVA-Simulation-Hub\logs\service-error.log
Ausführenden Benutzer setzen:
$ C:\FVA\FVA-Simulation-Hub\tools\nssm-2.24\win64\nssm.exe set FVA-Simulation-Hub ObjectName .\simhub-user password
Dienst starten:
$ C:\FVA\FVA-Simulation-Hub\tools\nssm-2.24\win64\nssm.exe start FVA-Simulation-Hub
Service überwachen
Status prüfen:
$ C:\FVA\FVA-Simulation-Hub\tools\nssm-2.24\win64\nssm.exe status FVA-Simulation-Hub
Dienst stoppen und entfernen
$ C:\FVA\FVA-Simulation-Hub\tools\nssm-2.24\win64\nssm.exe stop FVA-Simulation-Hub $ C:\FVA\FVA-Simulation-Hub\tools\nssm-2.24\win64\nssm.exe remove FVA-Simulation-Hub confirm
3. Linux
| Für die Installation und die Ausführung von FVA-Workbench-Instanzen ist Windows als Betriebssystem erforderlich. Eine Installation unter Linux ist nur bei Load Balancing als Gateway möglich. |
3.1. Verzeichnisstruktur
Für die Installation der Anwendung wird die folgende Verzeichnisstruktur empfohlen:
| Verzeichnis | Beschreibung |
|---|---|
|
Verzeichnis für die Anwendungsdateien des FVA Simulation Hub. |
|
Verzeichnis für die Java-Laufzeitumgebung. |
Je nach Bedarf können diese Verzeichnisse geändert bzw. frei gewählt werden. In diesem Fall müssen die Pfade angepasst werden, die im weiteren Verlauf der Installationhinweise angegeben sind.
3.2. Programme installieren
3.2.1. Java
Der FVA Simulation Hub benötigt zur Ausführung die Java-Laufzeitumgebung in der Version 21.
Installation:
-
Download von https://jdk.java.net/archive/ (Linux 21 tar.gz)
-
kopieren nach
/opt/FVA-Simulation-Hub/lib -
Entpacken mit
tar -zxf openjdk-21.0.1_linux-x64_bin.tar.gz
3.2.2. FVA Simulation Hub
Installation:
-
Download von https://download.fva-service.de/
-
kopieren nach
/opt/FVA-Simulation-Hub/app -
Entpacken mit
tar -zxf FVA-Simulation-Hub_v[VERSION].tar.gz
3.3. Konfiguration
3.3.1. Java-Laufzeitumgebung
Um den Pfad zur Java-Laufzeitumgebung zu konfigurieren, muss die Datei /opt/FVA-Simulation-Hub/app/bin/run.conf.example zu run.conf umbenannt werden.
In dieser Datei muss der Pfad zur Java-Laufzeitumgebung gesetzt werden:
set "JAVA_HOME=/opt/FVA-Simulation-Hub/lib/jdk-21.0.2"
3.3.2. Anwendung
Zum Ändern der Konfigurationsparameter muss die Datei /opt/FVA-Simulation-Hub/app/config/application.yml.example zu application.yml umbenannt werden.
In dieser Datei können die Konfigurationsparameter der Anwendung bearbeitet werden. Ein Auflistung aller Parameter ist hier zu finden: Konfiguration
3.4. Anwendung ausführen
Wechseln Sie in das Installationsverzeichnis und starten Sie die Anwendung:
$ cd /opt/FVA-Simulation-Hub/app $ bash bin/run.sh
| Der hier beschriebene Start der Anwendung sollte nur für Testzwecke verwednet werden. Für den produktiven Betrieb sollte die Anwendung als Dienst betrieben werden. |
Die Anwendung startet standardmäßig unter dem Port 8080. Nach dem Start können Sie die erfolgreiche Ausführung im Browser testen. Klicken Sie dazu den folgenden Link: http://localhost:8080/
3.5. Dienst einrichten
Dienst konfigurieren und starten
Vergeben Sie ausführende Berechtigung für das Start-Script:
$ chmod +x /opt/FVA-Simulation-Hub/app/bin/run.sh
Service erstellen und starten
$ cp /opz/FVA-Simulation-Hub/app/bin/systemd/fva-simulation-hub.service /etc/systemd/system/
$ nano /etc/systemd/system/fva-simulation-hub.service
# 'WorkingDirectory' -> Setzen Sie hier das Installationsverzeichnis
# 'ExecStart' -> Setzen Sie hier den vollständigen Pfad zur run.sh
# 'SyslogIdentifier' -> Setzen Sie hier eine ID für das System-Log
$ systemctl daemon-reload
$ systemctl enable fva-simulation-hub
$ systemctl start fva-simulation-hub
Service überwachen
Status prüfen:
$ systemctl status fva-simulation-hub $ journalctl -u fva-simulation-hub -b
Service stoppen und entfernen:
$ systemctl stop fva-simulation-hub.service $ systemctl disable fva-simulation-hub.service $ rm /etc/systemd/system/fva-simulation-hub.service $ systemctl daemon-reload $ systemctl reset-failed
4. Reverse Proxy
Der Einsatz eines Reverse Proxy kann folgende Vorteile bieten:
-
Verschlüsselte Kommunikation zwischen Client und Server (HTTPS-Verbindung durch SSL-Zertifikate)
-
Verschleierung des Backend-Servers (Zugiffe beispielsweise über my-service.company.com anstelle von my-service.company.com:8080)
In diesem Abschnitt wird die Einrichtung eines Reverse Proxy am Beispiel von NginX beschrieben. Andere Programme, wie Apache oder Microsoft Internet Information Services (IIS), können alternativ auch verwendet werden.
4.1. Windows
Voraussetzungen
Es wird angenommen, dass Zertifikatsdatein bereits unter den folgenden Pfaden zur Verfügung stehen:
C:\certs\[DOMAIN]\cert.pem C:\certs\[DOMAIN]\fullchain.pem C:\certs\[DOMAIN]\privkey.pem
NginX installieren
Falls noch nicht vorhanden, kann Nginx mit den folgenden Schritten installiert werden:
-
Download von https://nginx.org/en/download.html
-
kopieren nach
C:\FVA\FVA-Simulation-Hub\tools -
Entpacken mit "7-zip → Hier entpacken"
-
Dienst erstellen und starten:
$ C:\FVA\FVA-Simulation-Hub\tools\nssm-2.24\win64\nssm.exe install Nginx C:\FVA\FVA-Simulation-Hub\tools\nginx-1.26.3\nginx.exe $ C:\FVA\FVA-Simulation-Hub\tools\nssm-2.24\win64\nssm.exe start Nginx
Konfiguration erstellen
Am Ende der Datei C:\FVA\FVA-Simulation-Hub\tools\nginx-1.26.3\conf\nginx.conf, aber innerhalb der http-Sektion muss folgender Inhalt eingefügt werden:
server {
listen 80;
listen [::]:80;
server_name [SUBDOMAIN].[DOMAIN];
# example: server_name my-app.example.com;
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name [SUBDOMAIN].[DOMAIN];
# example: server_name my-app.example.com;
ssl_certificate C:/certs/[DOMAIN]/fullchain.pem;
# example: ssl_certificate C:/certs/example.com/fullchain.pem;
ssl_certificate_key C:/certs/[DOMAIN]/privkey.pem;
# example: ssl_certificate_key C:/certs/example.com/example.com/privkey.pem;
location / {
proxy_pass http://127.0.0.1:[APP_PORT];
# example: proxy_pass http://127.0.0.1:8080;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $http_host;
# WebSocket support
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}
Stellen Sie sicher, dass Sie alle der folgenden Platzhalter ersetzt haben:
-
[DOMAIN]
-
[SUBDOMAIN]
-
[APP_PORT]
Die maximal zulässige Größe für Requests kann bei Nginx über den Parameter client_max_body_size festgelegt werden.
|
Konfiguration testen
Testen Sie die Konfiguration mit dem folgenden Kommando:
$ C:\FVA\FVA-Simulation-Hub\tools\nginx-1.26.3\nginx.exe -t
NginX neustarten
Mit dem folgenden Kommando können Sie Nginx neustarten und die Anpasungen werden aktiv:
$ systemctl restart nginx
$ C:\FVA\FVA-Simulation-Hub\tools\nssm-2.24\win64\nssm.exe restart Nginx
4.2. Linux
Voraussetzungen
Es wird angenommen, dass Zertifikatsdatein bereits unter den folgenden Pfaden zur Verfügung stehen:
/etc/pki/tls/certs/[DOMAIN]/cert.pem /etc/pki/tls/certs/[DOMAIN]/fullchain.pem /etc/pki/tls/certs/[DOMAIN]/privkey.pem
NginX installieren
Falls noch nicht vorhanden, kann Nginx mit dem folgenden Kommando installiert werden:
$ apt install nginx
Konfiguration erstellen
Erstellen Sie die Datei /etc/nginx/conf.d/[SUBDOMAIN].conf mit dem folgenden Inhalt:
server {
listen 80;
listen [::]:80;
server_name [SUBDOMAIN].[DOMAIN];
# example: server_name my-app.example.com;
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name [SUBDOMAIN].[DOMAIN];
# example: server_name my-app.example.com;
ssl_certificate /etc/pki/tls/certs/[DOMAIN]/fullchain.pem;
# example: ssl_certificate /etc/pki/tls/certs/example.com/fullchain.pem;
ssl_certificate_key /etc/pki/tls/certs/[DOMAIN]/privkey.pem;
# example: ssl_certificate_key /etc/pki/tls/certs/example.com/privkey.pem;
location / {
proxy_pass http://127.0.0.1:[APP_PORT];
# example: proxy_pass http://127.0.0.1:8080;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $http_host;
# WebSocket support
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}
Stellen Sie sicher, dass Sie alle der folgenden Platzhalter ersetzt haben:
-
[DOMAIN]
-
[SUBDOMAIN]
-
[APP_PORT]
Die maximal zulässige Größe für Requests kann bei Nginx über den Parameter client_max_body_size festgelegt werden.
|
Konfiguration testen
Testen Sie die Konfiguration mit dem folgenden Kommando:
$ nginx -t
NginX neustarten
Mit dem folgenden Kommando können Sie Nginx neustarten und die Anpasungen werden aktiv:
$ systemctl restart nginx