Red Hat Training
A Red Hat training course is available for Red Hat JBoss Enterprise Application Platform
Kapitel 4. Konfigurieren der JBoss EAP zur Ausführung als Dienst
4.1. Konfigurieren der JBoss EAP als Dienst in Red Hat Enterprise Linux (Zip und Installer-Installation)
Voraussetzungen
Konfigurieren der JBoss EAP als Dienst in Red Hat Enterprise Linux
Passen Sie die Startup-Optionen in der
jboss-eap.confDatei an.Das Startup-Skript und eine zugehörige Konfigurationsdatei befinden sich im
EAP_HOME/bin/init.d/Verzeichnis. Öffnen Siejboss-eap.confin einem Text-Editor und bestimmen Sie die Optionen für Ihre JBoss EAP Installation.Es gibt mehrere Optionen in der
jboss-eap.confDatei, Sie müssen jedoch mindestens die korrekten Werte fürJBOSS_HOMEund denJBOSS_USERangeben.Sie können die anderen in der Konfigurationsdatei angebotenen Optionen anpassen, aber wenn Sie das nicht tun, wird standardmäßig ein Standalone JBoss EAP Server unter Verwendung der Standard-Konfigurationsdatei gestartet.
AnmerkungWenn Sie möchten, dass der Dienst die JBoss EAP im Domain-Modus startet, fügen Sie
JBOSS_MODE=domainzujboss-eap.confhinzu.Kopieren Sie die Dienstdateien in die Systemverzeichnisse.
Kopieren Sie die bearbeitete Dienst-Konfigurationsdatei ins
/etc/defaultVerzeichnis.sudo cp EAP_HOME/bin/init.d/jboss-eap.conf /etc/default
Kopieren Sie das Dienst-Startup-Skript ins
/etc/init.dVerzeichnis und erteilen Sie ihm Ausführungsberechtigungen:sudo cp EAP_HOME/bin/init.d/jboss-eap-rhel.sh /etc/init.d sudo chmod +x /etc/init.d/jboss-eap-rhel.sh
Fügen Sie den neuen Dienst
jboss-eap-rhel.shzu der Liste von automatisch gestarteten Diensten mit dem Dienstverwaltungs-Befehlchkconfighinzu:sudo chkconfig --add jboss-eap-rhel.sh
Testen Sie mit einem der folgenden Befehle, ob der Dienst korrekt installiert wurde.
Für Red Hat Enterprise Linux 6:
sudo service jboss-eap-rhel.sh start
Für Red Hat Enterprise Linux 7:
sudo service jboss-eap-rhel start
Der Dienst wird gestartet. Falls Ihnen ein Fehler gemeldet wird, überprüfen Sie die Fehlerprotokolle und vergewissern Sie sich, dass die Optionen in der Konfigurationsdatei korrekt eingestellt sind.
Benutzen Sie folgenden Befehl, um den Dienst beim Start des Red Hat Enterprise Linux Servers automatisch zu starten:
sudo chkconfig jboss-eap-rhel.sh on
Benutzen Sie folgendes Verfahren, um den JBoss EAP Dienst zu entfernen.
Entfernen des JBoss EAP Dienstes bei Red Hat Enterprise Linux
Falls der Dienst gerade läuft, öffnen Sie zuerst ein Terminal und halten Sie den Dienst mit einem der folgenden Befehle an.
Für Red Hat Enterprise Linux 6:
sudo service jboss-eap-rhel.sh stop
Für Red Hat Enterprise Linux 7:
sudo service jboss-eap-rhel stop
Entfernen Sie die JBoss EAP aus der Liste von Diensten:
sudo chkconfig --del jboss-eap-rhel.sh
Löschen Sie das Startup-Skript und die Konfigurationsdatei des Dienstes:
sudo rm /etc/init.d/jboss-eap-rhel.sh sudo rm /etc/default/jboss-eap.conf
4.2. Konfiguration von JBoss EAP As-a-Service in Red Hat Enterprise Linux (RPM-Installation)
Voraussetzungen
- Installieren Sie die JBoss EAP als RPM-Installation.
- Administrationsberechtigungen auf dem Server.
Eine RPM-Installation von JBoss EAP installiert alles, was für die Ausführung von JBoss EAP As-a-Service nötig ist. Verwenden Sie einen der folgenden Befehle, um den JBoss EAP Service automatisch bei Systemstart zu starten.
Für einen Standalone Server:
chkconfig eap7-standalone on
Für eine Managed Domain:
chkconfig eap7-domain on
Informationen zum Starten oder Anhalten einer RPM-Installation von JBoss EAP auf Abruf finden Sie in den RPM-Anweisungen im JBoss EAP Konfigurationshandbuch.
Weitere Details und Optionen finden Sie im Appendix der Konfigurationsdateien für den RPM-Dienst im JBoss EAP Konfigurationshandbuch.
4.3. Konfigurieren der JBoss EAP As-a-Service im Microsoft Windows Server
Voraussetzungen
Wenn Sie den set-Befehl zur Einstellung von System-Umgebungsvariablen an der Eingabeaufforderung eines Windows Servers verwenden, wird die Umgebungsvariable nicht dauerhaft eingestellt. Verwenden Sie entweder den setx-Befehl, oder die System-Schnittstelle in der Systemsteuerung.
Konfigurieren der JBoss EAP As-a-Service im Microsoft Windows Server
Erstellen Sie zwei System-Umgebungsvariablen:
-
JBOSS_HOMEzeigt auf das JBoss EAP Installationsverzeichnis. -
NOPAUSE=1
-
Installieren Sie das JBoss Core Services Jsvc Paket
Falls nicht bereits konfiguriert, laden Sie das JBoss Core Services Jsvc Paket herunter und entpacken Sie es.
- Öffnen Sie einen Browser und melden Sie sich beim Red Hat Kundenportal an unter JBoss Software Downloads.
- Wählen Sie Apache Jsvc in der Auswahlliste für Produkte.
- Wählen Sie die neuste Version auf der Auswahlliste.
- Gehen Sie zu Red Hat JBoss Core Services Apache Jsvc auf der Liste und stellen Sie sicher, dass Sie die richtige Plattform und Architektur für Ihr System ausgewählt haben. Klicken Sie dann auf den Download-Link.
Entpacken Sie die heruntergeladene ZIP-Datei in das Verzeichnis, das Ihr JBoss EAP Installationsverzeichnis enthält.
Daraus entsteht ein
jbcs-jsvc-<VERSION>Verzeichnis auf derselben Ebene, wie Ihr JBoss EAP Installationsverzeichnis. Zum Beispiel:C:\Program Files ├── jboss-eap-7.0 │ ├── bin │ └── ... └── jbcs-jsvc-<VERSION>
Service-Installation
Öffnen Sie eine Befehlszeile und ändern Sie Verzeichnisse zu
EAP_HOME\bin.Nachfolgend sehen Sie Beispiele für einen einfachen
service.bat installBefehl zur Erstellung eines neuen Dienstes, entweder für einen Standalone Server oder einen Server in einer Managed Domain. Für eine Liste aller möglichen Optionen führen Sieservice.batohne Argumente aus.Führen Sie folgenden Befehl aus und passen Sie dabei die Protokollierungsebene für den Dienst entsprechend an:
Für einen Standalone Server:
service.bat install /loglevel INFO
Für einen Server in einer Managed Domain:
Falls Sie nicht den Standard-Master für Ihren JBoss EAP Domain Controller verwenden, ersetzen Sie Master durch den korrekten Hostnamen oder Alias des JBoss EAP Domain Controllers.
service.bat install /host master /loglevel INFO
Ein neuer Windowsdienst mit dem Namen
JBossEAP7wird erstellt.Verifizieren Sie den neuen Dienst in der
Services-KonsoleÖffnen Sie die Windows Services-Konsole (
services.msc) und überprüfen Sie, ob der Dienst erstellt wurde.Wurde der standardmäßige Dienstname in der Liste der Windows-Dienste verwendet, so lautet der angezeigte Name des neuen Dienstes:
JBossEAP7. Sie können den Dienst von der Services-Konsole aus starten und anhalten, sowie die Einstellungen ändern, wie und wann er gestartet wird.Starten und Anhalten des JBoss EAP Dienstes von einem Terminal aus
Starten Sie den Dienst von einem Terminal aus mit dem folgenden Befehl, ändern Sie gegebenenfalls den Dienstnamen:
net start JBossEAP7
Halten Sie den Dienst von einem Terminal aus mit dem folgenden Befehl an, ändern Sie gegebenenfalls den Dienstnamen:
net stop JBossEAP7
Benutzen Sie folgendes Verfahren, um den JBoss EAP Dienst zu entfernen.
Entfernen des JBoss EAP Services im Microsoft Windows Server
Falls der Dienst läuft, öffnen Sie zuerst ein Terminal und stoppen Sie den Dienst, indem Sie den Befehl
net stopmit dem Namen des Dienstes ausführen:net stop JBossEAP7
Öffnen Sie eine Befehlszeile, ändern Sie Verzeichnisse zu
EAP_HOME\binund führen Sie den folgenden Befehl aus:service.bat uninstall
4.4. Konfigurieren Sie die JBoss EAP As-a-Service mittels Jsvc
Mit dem Paket »JBoss Core Services« von Jsvc kann die JBoss EAP als Background-Service auf Red Hat Enterprise Linux und Solaris ausgeführt werden.
Auf Red Hat Enterprise Linux empfehlen wir die Verwendung von systemeigenen Methoden zur Ausführung von JBoss EAP As-a-Service.
Jsvc ist ein Set von Bibliotheken und Applikationen, mit denen Java-Applikationen auf UNIX-ähnlichen Plattformen als Background-Service laufen können. Durch Jsvc kann eine Applikation Vorgänge als privilegierter Benutzer ausführen und dann die Identität zu einem nicht privilegierten Benutzer ändern.
Jsvc benutzt drei Prozesse: einen Startprozess, einen Controller-Prozess und einen kontrollierten Prozess. Der kontrollierte Prozess ist zudem der Haupt-Java-Thread. Falls die JVM abstürzt, startet der Controller-Prozess innerhalb 60 Sekunden. Jsvc ist ein Daemon-Prozess und für JBoss EAP muss er von einem privilegierten Benutzer gestartet werden.
Installieren Sie das JBoss Core Services Jsvc Paket
- Für ZIP oder Installer-Installationen:
- Öffnen Sie einen Browser und melden Sie sich beim Red Hat Kundenportal an unter JBoss Software Downloads.
- Wählen Sie Apache Jsvc in der Auswahlliste für Produkte.
- Wählen Sie die neuste Version auf der Auswahlliste.
- Gehen Sie zu Red Hat JBoss Core Services Apache Jsvc auf der Liste und stellen Sie sicher, dass Sie die richtige Plattform und Architektur für Ihr System ausgewählt haben. Klicken Sie dann auf den Download-Link.
Entpacken Sie die heruntergeladene ZIP-Datei in das Verzeichnis, das Ihr JBoss EAP Installationsverzeichnis enthält.
Daraus entsteht ein
jbcs-jsvc-<VERSION>Verzeichnis auf derselben Ebene, wie Ihr JBoss EAP Installationsverzeichnis. Zum Beispiel:/var/opt/ ├── jboss-eap-7.0 │ ├── bin │ └── ... └── jbcs-jsvc-<VERSION>
Die Befehlbeispiele für den Start von JBoss EAP mittels Jsvc setzen voraus, dass ein
jboss-Benutzer erstellt wurde. Falls Sie noch keinen Benutzer für JBoss EAP erstellt haben, können Sie mit folgenden Befehlen Benutzer und Gruppe fürjbosserstellen:# groupadd -f -g 185 -r jboss # useradd -r -u 185 -g jboss -d EAP_HOME -s /sbin/nologin -c "JBoss" jboss
- Für RPM-Installationen bei Red Hat Enterprise Linux:
- Melden Sie sich beim Red Hat Subscription Manager an.
- Klicken Sie auf Systeme im Subskribenteninventar.
Abonnieren Sie die JBoss Core Services CDN Repositories für die Version und Architektur Ihres Betriebssystems:
Für Red Hat Enterprise Linux 6:
- jb-coreservices-1-for-rhel-6-server-rpms
Für Red Hat Enterprise Linux 7:
- jb-coreservices-1-for-rhel-7-server-rpms
Führen Sie folgenden Befehl als Root aus, um Jsvc zu installieren:
# yum groupinstall jbcs-jsvc
Mittels Jsvc die JBoss EAP als Standalone Server starten
Die folgenden Befehle werden verwendet, um die JBoss EAP im Standalone-Modus über Jsvc zu starten und zu stoppen. Die Tabellen zeigen die Pfade an, die für die Befehle für eine ZIP/Installer-Installation oder für eine RPM-Installation benötigt werden.
Tabelle 4.1. Speicherort der Jsvc-Datei für ZIP/Installer-Installationen - Standalone Server
| Dateireferenz in der Anleitung | Speicherort der Datei |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
Tabelle 4.2. Speicherorte der Jsvc Datei für RPM-Installationen - Standalone Server
| Dateireferenz in der Anleitung | Speicherort der Datei |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
Start eines Standalone JBoss EAP Servers mittels Jsvc:
JSVC_BIN \ -outfile LOG_DIR/jsvc.out.log \ -errfile LOG_DIR/jsvc.err.log \ -pidfile LOG_DIR/jsvc.pid \ -user jboss \ -D[Standalone] -XX:+UseCompressedOops -Xms1303m \ -Xmx1303m -XX:MaxPermSize=256m \ -Djava.net.preferIPv4Stack=true \ -Djboss.modules.system.pkgs=org.jboss.byteman \ -Djava.awt.headless=true \ -Dorg.jboss.boot.log.file=LOG_DIR/server.log \ -Dlogging.configuration=file:CONF_DIR/logging.properties \ -Djboss.modules.policy-permissions \ -cp EAP_HOME/jboss-modules.jar:JSVC_JAR \ -Djboss.home.dir=EAP_HOME \ -Djboss.server.base.dir=EAP_HOME/standalone \ @org.jboss.modules.Main -start-method main \ -mp EAP_HOME/modules \ -jaxpmodule javax.xml.jaxp-provider \ org.jboss.as.standalone
Anhalten eines Standalone JBoss EAP Servers mittels Jsvc:
JSVC_BIN \ -stop \ -outfile LOG_DIR/jsvc.out.log \ -errfile LOG_DIR/jsvc.err.log \ -pidfile LOG_DIR/jsvc.pid \ -user jboss \ -D[Standalone] -XX:+UseCompressedOops -Xms1303m \ -Xmx1303m -XX:MaxPermSize=256m \ -Djava.net.preferIPv4Stack=true \ -Djboss.modules.system.pkgs=org.jboss.byteman \ -Djava.awt.headless=true \ -Dorg.jboss.boot.log.file=LOG_DIR/server.log \ -Dlogging.configuration=file:CONF_DIR/logging.properties \ -Djboss.modules.policy-permissions \ -cp EAP_HOME/jboss-modules.jar:JSVC_JAR \ -Djboss.home.dir=EAP_HOME \ -Djboss.server.base.dir=EAP_HOME/standalone \ @org.jboss.modules.Main -start-method main \ -mp EAP_HOME/modules \ -jaxpmodule javax.xml.jaxp-provider \ org.jboss.as.standalone
Start einer JBoss EAP Managed Domain mittels Jsvc
Die folgenden Befehle werden verwendet, um eine JBoss EAP als Managed Domain über Jsvc zu starten und zu stoppen. Die nachfolgenden Tabellen zeigen die Pfade an, die für die Befehle für eine ZIP/Installer-Installation oder für eine RPM-Installation benötigt werden.
Tabelle 4.3. Speicherorte der Jsvc-Datei für ZIP/Installer-Installationen - Managed Domain
| Dateireferenz in der Anleitung | Speicherort der Datei |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
Tabelle 4.4. Speicherort der Jsvc-Datei für RPM-Installationen - Managed Domain
| Dateireferenz in der Anleitung | Speicherort der Datei |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
Stellen Sie vor dem Ausführen des folgenden Befehls sicher, dass die JAVA_HOME System-Umgebungsvariable angegeben ist.
Start einer JBoss EAP Managed Domain mittels Jsvc:
JSVC_BIN \
-outfile LOG_DIR/jsvc.out.log \
-errfile LOG_DIR/jsvc.err.log \
-pidfile LOG_DIR/jsvc.pid \
-user jboss \
-nodetach -D"[Process Controller]" -server -Xms64m \
-Xmx512m -XX:MaxPermSize=256m \
-Djava.net.preferIPv4Stack=true \
-Djboss.modules.system.pkgs=org.jboss.byteman \
-Djava.awt.headless=true \
-Dorg.jboss.boot.log.file=LOG_DIR/process-controller.log \
-Dlogging.configuration=file:CONF_DIR/logging.properties \
-Djboss.modules.policy-permissions \
-cp "EAP_HOME/jboss-modules.jar:JSVC_JAR" \
org.apache.commons.daemon.support.DaemonWrapper \
-start org.jboss.modules.Main -start-method main \
-mp EAP_HOME/modules org.jboss.as.process-controller \
-jboss-home EAP_HOME -jvm "${JAVA_HOME}"/bin/java \
-mp EAP_HOME/modules -- \
-Dorg.jboss.boot.log.file=LOG_DIR/host-controller.log \
-Dlogging.configuration=file:CONF_DIR/logging.properties \
-Djboss.modules.policy-permissions \
-server -Xms64m -Xmx512m -XX:MaxPermSize=256m \
-Djava.net.preferIPv4Stack=true \
-Djboss.modules.system.pkgs=org.jboss.byteman \
-Djava.awt.headless=true -- -default-jvm "${JAVA_HOME}"/bin/java \
&Anhalten einer JBoss EAP Managed Domain mittels Jsvc:
JSVC_BIN \ -stop \ -outfile LOG_DIR/jsvc.out.log \ -errfile LOG_DIR/jsvc.err.log \ -pidfile LOG_DIR/jsvc.pid \ -user jboss \ -nodetach -D"[Process Controller]" -server -Xms64m \ -Xmx512m -XX:MaxPermSize=256m \ -Djava.net.preferIPv4Stack=true \ -Djboss.modules.system.pkgs=org.jboss.byteman \ -Djava.awt.headless=true \ -Dorg.jboss.boot.log.file=LOG_DIR/process-controller.log \ -Dlogging.configuration=file:CONF_DIR/logging.properties \ -Djboss.modules.policy-permissions \ -cp "EAP_HOME/jboss-modules.jar:JSVC_JAR" \ org.apache.commons.daemon.support.DaemonWrapper \ -start org.jboss.modules.Main -start-method main \ -mp EAP_HOME/modules org.jboss.as.process-controller \ -jboss-home EAP_HOME -jvm $JAVA_HOME/bin/java \ -mp EAP_HOME/modules -- \ -Dorg.jboss.boot.log.file=LOG_DIR/host-controller.log \ -Dlogging.configuration=file:CONF_DIR/logging.properties \ -Djboss.modules.policy-permissions \ -server -Xms64m -Xmx512m -XX:MaxPermSize=256m \ -Djava.net.preferIPv4Stack=true \ -Djboss.modules.system.pkgs=org.jboss.byteman \ -Djava.awt.headless=true -- -default-jvm $JAVA_HOME/bin/java