So installierst du GlassFish Java Application Server auf Rocky Linux

GlassFish ist eine freie und quelloffene Implementierung der Java EE-Plattform, die von Eclipse entwickelt wurde. Sie ist die weltweit führende Implementierung der Java EE-Plattform. Sie bietet einen leichtgewichtigen Anwendungsserver und ermöglicht es dir, mehrere Java-basierte Anwendungen einzusetzen. GlassFish unterstützt mehrere Arten von Java-Anwendungstechnologien wie Enterprise JavaBeans, JPA, JavaServer Faces, JMS und viele mehr.

GlassFish ist eine der besten Möglichkeiten für Entwickler, um Java-basierte Anwendungen zu entwickeln und einzusetzen. Es ermöglicht Entwicklern, Unternehmensanwendungen auf bequeme Art und Weise zu entwickeln und bietet zudem eine skalierbare Architektur. Das GlasshFish-Projekt wurde ursprünglich von Sun Microsystem ins Leben gerufen. Es wird mit zwei verschiedenen freien Lizenzen ausgeliefert – der Common Development and Distribution License und der GNU General Public License.

In diesem Lernprogramm werden wir den GlassFish Java Application Server mit Nginx Reverse Proxy auf Rocky Linux installieren. Wir installieren Java OpenJDK, installieren GlassFish über das Binärpaket und installieren und konfigurieren Nginx als Reverse Proxy.

Voraussetzungen

Zu Beginn musst du sicherstellen, dass du die folgenden Voraussetzungen erfüllst:

  • Ein Rocky Linux Server – Du kannst Rocky Linux 8 oder 9 verwenden.
  • Ein Nicht-Root-Benutzer mit sudo root/administrator-Rechten.
  • Ein lokaler Domainname für den lokalen Entwicklungsserver.

Kommen wir nun zur Installation.

Installation von Java OpenJDK

GlassFish ist ein Java Application Server. Um ihn zu installieren, musst du Java OpenJDK auf deinem Server installieren.

Zum Zeitpunkt der Erstellung dieses Artikels benötigt die neueste Version von GlassFish 6.2.5 mindestens Java OpenJDK 11. Und nun beginnst du die Installation, indem du Java OpenJDK 11 auf dem Rocky Linux System installierst.

Das Standard Java OpenJDK ist im Rocky Linux Appstream Repository verfügbar. Installiere es mit dem folgenden dnf-Befehl.

sudo dnf install java-11-openjdk

Wenn du dazu aufgefordert wirst, gibst du zur Bestätigung y ein und drückst ENTER, um fortzufahren. Die Installation von Java OpenJDK beginnt.

java installieren

Führe als Nächstes den folgenden java-Befehl aus, um deine Installation zu überprüfen. Du solltest die Ausgabe erhalten, dass Java OpenJDK 11 auf dem Rocky Linux installiert ist.

java -version

check java

Sobald Java OpenJDK installiert ist, musst du im nächsten Schritt GlassFish herunterladen und manuell aus dem Binärpaket installieren.

Herunterladen der GlassFish-Anwendung

GlassFish ist eine Java EE-kompatible Implementierung, die von Eclipse entwickelt wurde. Du kannst sie manuell installieren, indem du sie aus dem Quellcode erstellst, oder sie über das von Eclipse bereitgestellte Binärpaket installieren.

In diesem Schritt wirst du GlassFish über das Binärpaket installieren, das du von der Eclipse-Website herunterladen kannst.

Bevor du mit der Installation von GlassFish beginnst, führe den folgenden dnf-Befehl aus, um das unzip-Paket zu installieren. Mit diesem wird das GlassFish-Distributionspaket entpackt.

sudo dnf install unzip

Als Nächstes führst du den folgenden Befehl aus, um einen neuen Benutzer für GlassFish anzulegen. In diesem Beispiel wirst du den GLassFish-Anwendungsserver über den Nicht-Root-Benutzer„glassfish“ ausführen.

sudo useradd -m -d /opt/glassfish6 -U -s /bin/false glassfish

Nachdem der Benutzer„glassfish“ erstellt wurde, navigierst du zum Verzeichnis „/tmp“ und lädst das GlassFish-Binärpaket mit dem unten stehenden wget-Befehl herunter.

cd /tmp
wget https://download.eclipse.org/ee4j/glassfish/glassfish-6.2.5.zip

Du solltest dann die neue Datei „glassfish-6.2.5.zip“ erhalten.

Benutzer erstellen glassfish herunterladen

Führe den folgenden unzip-Befehl aus, um das GlassFish-Paket„glassfish-6.2.5.zip“ in das Verzeichnis „/opt“ zu entpacken.

unzip /tmp/glassfish-6.2.5.zip -d /opt

Nun ist das GlassFish-Paket in das Verzeichnis „/opt/glassfish6“ extrahiert.

Führe abschließend den folgenden Befehl aus, um die Eigentumsrechte am GlassFish-Installationsverzeichnis„/opt/glassfish6“ auf den Benutzer und die Gruppe„glassfish“ zu ändern.

sudo chown -R glassfish:glassfish /opt/glassfish6

Nachdem du das GlassFish-Paket heruntergeladen hast, kannst du nun die GlassFish-Anwendung manuell über die Binärdatei „/opt/glassfish6/bin/asadmin“ starten. Aber um es einfacher zu machen, wirst du GlassFish als Systemd-Dienst einrichten und ausführen.

GlassFish als Systemd-Dienst ausführen

In dieser Anleitung wirst du den GlassFish Java Application Server über den systemd-Dienst ausführen. So kannst du den GlassFish-Anwendungsserver einfach über den systemctl-Befehl verwalten.

Erstelle zunächst eine neue systemd-Dienstdatei „/lib/systemd/system/glassfish.service“ mit dem folgenden nano-Editor.

sudo nano /lib/systemd/system/glassfish.service

Füge die folgende Konfiguration in die Datei ein.

[Unit]
Description = GlassFish Server v6
After = syslog.target network.target
[Service]
User=glassfish
ExecStart=/opt/glassfish6/bin/asadmin start-domain
ExecReload=/opt/glassfish6/bin/asadmin restart-domain
ExecStop=/opt/glassfish6/bin/asadmin stop-domain
Type = forking

[Install]
WantedBy = multi-user.target

Speichere die Datei und beende den Editor, wenn du fertig bist.

Als nächstes führst du den folgenden systemctl-Befehl aus, um den systemd-Manager neu zu laden und die neue Servicedatei„glassfish.service“ anzuwenden.

sudo systemctl daemon-reload

Nachdem du den systemd Manager neu geladen hast, kannst du nun den Dienst„glassfish“ mit dem folgenden systemctl-Befehl starten und aktivieren.

sudo systemctl start glassfish
sudo systemctl enable glassfish

Glassfish-Dienst einrichten

Sobald der„glassfish„-Dienst gestartet ist, führe den folgenden systemctl-Befehl aus, um den„glassfish„-Dienst zu überprüfen und sicherzustellen, dass der Dienst läuft.

sudo systemctl status glassfish

Du solltest die Ausgabe erhalten, dass der„glassfish„-Dienst läuft, wie im folgenden Screenshot zu sehen.

glassfish service überprüfen

Jetzt, wo die Java-Anwendung„glassfish“ läuft, kannst du im nächsten Schritt mit der Konfiguration der GlassFish-Verwaltung beginnen.

GlassFish-Verwaltung konfigurieren

Bei der Standardinstallation von GlassFish gibt es kein Admin-Passwort. Daher konfigurierst du jetzt den Administrationsbenutzer und das Passwort für GlassFish und sicherst die GlassFish-Installation über die Befehlszeile„/opt/glassfish6/bin/asadmin„.

Führe den folgenden Befehl aus, um den Admin-Benutzer und das Passwort für deine GlassFish-Installation zu konfigurieren.

sudo -u glassfish /opt/glassfish6/bin/asadmin --port 4848 change-admin-password

Du wirst nun aufgefordert, einige der GlassFish-Verwaltungsfunktionen auszuführen.

  • Gib den Benutzer für GlassFish ein – der Standardbenutzer ist „admin“.
  • Die Standardinstallation von GlassFish enthält kein Passwort, also drücke ENTER.
  • Gib nun das neue Passwort für deine GlassFish-Installation ein und wiederhole den Vorgang.

Du solltest jetzt eine Meldung wie„Befehl change-admin-password erfolgreich ausgeführt“ erhalten.

Einrichtung admin glassfish

Nachdem du den GlassFish-Administrationsbenutzer konfiguriert hast, kannst du als Nächstes mit der Sicherung deiner GlassFish-Installation beginnen.

Führe den folgenden Befehl aus, um mit der Sicherung von GlassFish zu beginnen.

sudo -u glassfish /opt/glassfish6/bin/asadmin --port 4848 enable-secure-admin

Wenn du nach dem GlassFish-Administrator-Benutzer und -Passwort gefragt wirst, gibst du die Daten ein, die du zuvor konfiguriert hast. Wenn alles fertig ist, siehst du die Ausgabe„Befehl enable-secure-admin erfolgreich ausgeführt„.

Glasfische sichern

Als Nächstes führst du den folgenden Befehl aus, um denGlassFish-Dienst neu zu starten und die neuen Änderungen anzuwenden.

sudo systemctl restart glassfish

Jetzt läuft GlassFish mit einem neuen Administrationsbenutzer und Passwort und ist auch gesichert. Der GlassFish Java Application Server läuft standardmäßig auf Port8080 und die GlassFish-Administration läuft auf Port 4848.

Bevor du auf deine GlassFish-Installation zugreifst, führe den folgenden Befehl firewall-cmd aus, um die Ports 8080 und 4848 zu öffnen.

sudo firewall-cmd --add-port=8080/tcp --zone=public
sudo firewall-cmd --add-port=4848/tcp --zone=public

Öffne schließlich deinen Webbrowser und rufe die IP-Adresse gefolgt von Port 8080 auf (d.h.: http://192.168.5.100:8080). Du solltest nun die Standardseite index.html deines GlassFish Java Application Servers sehen.

Glasfisch-Index

Für die GlashFish-Verwaltung rufst du die IP-Adresse des Servers mit Port 4848 auf (z.B.: http: //192.168.5.100:4848/). Dann solltest du die Anmeldeseite der GlassFish-Administration sehen.

Glassfish-Anmeldeseite

Nginx als Reverse Proxy einrichten

Zu diesem Zeitpunkt läuft die GlassFish-Java-Anwendung mit aktivierter und gesicherter Administration. Jetzt installierst du Nginx und richtest es als Reverse Proxy für GlassFish ein.

Wenn du Nginx als Reverse Proxy verwendest, kannst du GlassFish über den Standardport HTTP oder HTTPS (falls aktiviert) ausführen.

Führe den folgenden dnf-Befehl aus, um den Nginx-Webserver zu installieren. Wenn du nach der Konfiguration gefragt wirst, gibst du Y ein und drückst ENTER, um fortzufahren.

sudo dnf install nginx

nginx installieren

Als Nächstes erstellst du mit dem folgenden nano-Editor eine neue Nginx-Serverblock-Konfiguration„/etc/nginx/conf.d/glassfish.conf„. Diese Konfiguration sorgt dafür, dass Nginx als Reverse Proxy für GlassFish läuft.

sudo nano /etc/nginx/conf.d/glassfish.conf

Füge die folgende Konfiguration in die Datei ein und stelle sicher, dass du den lokalen Domainnamen„glassfish.hwdomain.io“ durch deine Domain ersetzt.

upstream glassfish6 {
  server 127.0.0.1:8080 weight=100 max_fails=5 fail_timeout=5;
}
server {
listen          80;
server_name     glassfish.hwdomain.io;

location / {
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://glassfish6/;
}
}

Speichere die Datei und schließe den Editor, wenn du fertig bist.

Als nächstes führst du den folgenden Befehl aus, um die Nginx-Konfiguration zu überprüfen. Wenn du die richtige Konfiguration hast, solltest du eine Meldung wie„Syntax ist OK – Test ist erfolgreich“ sehen.

sudo nginx -t

Nachdem du den Nginx-Serverblock für GlassFish erstellt hast, führst du als Nächstes den folgenden Befehl aus, um den Nginx-Dienst zu starten und zu aktivieren.

sudo systemctl start nginx
sudo systemctl enable nginx

Der Nginx-Dienst sollte jetzt laufen und aktiviert sein und wird beim Systemstart automatisch ausgeführt.

nginx Reverse Proxy einrichten

Zum Schluss überprüfst du den Nginx-Dienst mit folgendem Befehl, um sicherzustellen, dass der Dienst läuft.

sudo systemctl status nginx

Die Ausgabe sieht wie folgt aus – du siehst, dass der Nginx-Dienst läuft.

nginx prüfen

Firewalld einrichten

Die Standard-Firewalld auf dem Rocky Linux läuft bereits. Um GlassFish zugänglich zu machen, musst du den HTTP-Port und den GlassFish-Administrationsport 4848 öffnen.

Führe den folgenden firewall-cmd-Befehl aus, um die HTTP- und HTTPS-Dienste und den Standard-Port 4848 für die GlassFish-Administration hinzuzufügen.

sudo firewall-cmd --add-service=http --permanent
sudo firewall-cmd --add-service=https --permanent
sudo firewall-cmd --add-port=4848/tcp --permanent

Lade nun die Firewallregeln neu und überprüfe die Liste der aktivierten Regeln mit dem folgenden Befehl.

sudo firewall-cmd --reload
sudo firewall-cmd --list-all

Du solltest die folgende Ausgabe erhalten – Die HTTP- und HTTPS-Dienste sind der Firewalld hinzugefügt und der GlassFish-Administrationsport 4848/tcp ist ebenfalls hinzugefügt.

Setup Feuerwand

Zugriff auf GlassFish

Bearbeite auf deinem lokalen Computer die Datei „/etc/hosts“ mit dem folgenden nano-Editor.

sudo nano /etc/hosts

Füge die folgende Konfiguration in die Datei ein und achte darauf, dass du die Server-IP-Adresse und den lokalen Domänennamen für deine GlassFIsh-Installation änderst.

192.168.5.100  glassfish.hwdomain.io

Speichere die Datei und beende den Editor, wenn du fertig bist.

Als Nächstes öffnest du deinen Webbrowser und rufst den Domainnamen deiner GlassFish-Installation auf (z.B.: http://glassfish.hwdomain.io/). Du solltest nun die Standardseite index.html von GlassFish erhalten.

Glasfisch-Index

Öffne nun einen neuen Tab und besuche deinen Domainnamen, gefolgt von dem Administrationsport 4848 (z.B.: https://glassfish.hwdomain.io:4848/). Du solltest nun die Anmeldeseite für die Administration deines GlassFish erhalten.

Gib den Admin-Benutzer und das Passwort ein, die du konfiguriert hast, und klicke auf Login.

Glassfish-Anmeldung

Wenn der Admin-Benutzer und das Passwort korrekt sind, solltest du das GlassFish-Administrations-Dashboard wie folgt sehen.

glassfish admin dashboard

Fazit

In dieser Anleitung hast du GlassFish Java Application Server auf einem Rocky Linux Server installiert. Außerdem hast du Java OpenJDK 11 installiert und dem Linux-System eine neue Servicedatei hinzugefügt. Schließlich hast du auch die Installation und Konfiguration des Nginx Webservers als Reverse Proxy für den GlassFish Java Application Server gelernt.

Im nächsten Schritt kannst du nun damit beginnen, andere Anwendungen zu implementieren oder die Hochverfügbarkeit von GLassFish zu konfigurieren.

Das könnte dich auch interessieren …