Red Hat Training
A Red Hat training course is available for Red Hat JBoss Enterprise Application Platform
Chapitre 4. Configurer JBoss EAP pour être exécuté en tant que service
4.1. Configurer JBoss EAP en tant que service sur Red Hat Enterprise Linux (Installations ZIP et du programme d'installation)
Conditions préalables
Configurer JBoss EAP en tant que service sur Red Hat Enterprise Linux
Personnalisez les options de démarrage dans le fichier
jboss-eap.conf.Le script de démarrage et un fichier de configuration associé se trouvent dans le répertoire
EAP_HOME/bin/init.d/. Ouvrezjboss-eap.confdans un éditeur de texte et définissez les options pour votre installation JBoss EAP.Il existe plusieurs options dans le fichier
jboss-eap.conf, mais vous devez. au minimum, fournir les valeurs correctes deJBOSS_HOMEet deJBOSS_USER.Vous pouvez personnaliser les autres options fournies dans le fichier de configuration, mais si vous ne le faîtes pas, il démarrera par défaut en tant que serveur JBoss EAP autonome en utilisant le fichier de configuration par défaut.
NoteSi vous souhaitez que le service lance JBoss EAP en mode de domaine, veuillez ajouter
JBOSS_MODE=domainàjboss-eap.conf.Copiez les fichiers de service dans les répertoires du système.
Copiez le fichier de configuration du service modifié dans le répertoire
/etc/default.sudo cp EAP_HOME/bin/init.d/jboss-eap.conf /etc/default
Copiez le script de démarrage du service dans le répertoire
/etc/init.d, et donnez-lui des permissions d'exécution :sudo cp EAP_HOME/bin/init.d/jboss-eap-rhel.sh /etc/init.d sudo chmod +x /etc/init.d/jboss-eap-rhel.sh
Ajouter le nouveau service
jboss-eap-rhel.shpour répertorier tous les services lancés automatiquement, en utilisant la commande de gestion de servicechkconfig.sudo chkconfig --add jboss-eap-rhel.sh
Vérifiez que le service soit installé correctement en utilisant l'une des commandes suivantes.
Pour Red Hat Enterprise Linux 6 :
sudo service jboss-eap-rhel.sh start
Pour Red Hat Enterprise Linux 7 :
sudo service jboss-eap-rhel start
Le service sera lancé. Si vous obtenez une erreur, vérifiez les journaux d'erreurs et assurez-vous que les options du fichier soient correctement définies.
Pour que le service soit lancé automatiquement lorsque le serveur Red Hat Enterprise Linux démarre, veuillez exécuter la commande suivante :
sudo chkconfig jboss-eap-rhel.sh on
Si vous souhaitez supprimer le service JBoss EAP, veuillez utiliser la procédure suivante.
Supprimer le service JBoss EAP de Red Hat Enterprise Linux
Si le service est en cours d'exécution, ouvrez un terminal et arrêtez le service par l'une des commandes suivantes.
Pour Red Hat Enterprise Linux 6 :
sudo service jboss-eap-rhel.sh stop
Pour Red Hat Enterprise Linux 7 :
sudo service jboss-eap-rhel stop
Supprimer JBoss EAP de la liste des services :
sudo chkconfig --del jboss-eap-rhel.sh
Supprimez le fichier de configuration ainsi que le script de démarrage du service :
sudo rm /etc/init.d/jboss-eap-rhel.sh sudo rm /etc/default/jboss-eap.conf
4.2. Configurer JBoss EAP en tant que service sur Red Hat Enterprise Linux (Installation RPM)
Conditions préalables
- Installer JBoss EAP par une installation RPM.
- Privilèges d'administrateur sur le serveur.
Une installation RPM de JBoss EAP installe tout ce qui est nécessaire à l’exécution de JBoss EAP en tant que service. Utilisez une des commandes suivantes pour activer le service JBoss EAP pour démarrer automatiquement au démarrage du système.
Pour un serveur autonome :
chkconfig eap7-standalone on
Pour un domaine géré :
chkconfig eap7-domain on
Pour démarrer ou arrêter une installation RPM de JBoss EAP sur demande, voir les instructions RPM du Guide de configuration de JBoss EAP.
Voir l'annexe de fichiers de configuration du service RPMdans le Guide de configuration pour obtenir plus d'options et de détails.
4.3. Configurer JBoss EAP en tant que service dans un serveur Microsoft Windows
Conditions préalables
En utilisant la commande set pour définir des variables d'environnement de système dans une invite de commande de Window Server, vous ne définirez pas la variable d'ennironnement de façon permanente. Vous devrez soit utiliser la commande setx, soit l'interface Système dans le Panneau de configuration.
Configurer JBoss EAP en tant que service dans un serveur Microsoft Windows
Créer deux variables système d'environnement :
-
JBOSS_HOMEpointant sur le répertoire d'installation JBoss EAP. -
NOPAUSE=1
-
Installer le paquet Jsvc JBoss Core Services
S'il n'a pas déjà été configuré, télécharger et extraire le paquet Jsvc JBoss Core Services
- Ouvrez un navigateur et connectez-vous au Portail Client de Red Hat à l'adresse suivante JBoss Software Downloads page.
- Sélectionner Apache Jsvc dans le menu déroulant Produit.
- Sélectionner la dernière version dans le menu déroulant Version.
- Chercher Red Hat JBoss Core Services Apache Jsvc dans la liste, en prenant soin de bien sélectionner la plateforme et l'architecture qui conviennent à votre système, et cliquer sur le lien Télécharger.
Extraire le fichier ZIP téléchargé dans le répertoire contenant le répertoire de l'installation JBoss EAP.
Vous aurez alors un répertoire
jbcs-jsvc-<VERSION>qui se trouvera au même niveau que celui de l'installation JBoss EAP. Exemple :C:\Program Files ├── jboss-eap-7.0 │ ├── bin │ └── ... └── jbcs-jsvc-<VERSION>
Installer le service
Ouvrir un terminal, et changer de répertoire
EAP_HOME\bin.Vous trouverez ci-dessous des exemples de commande de base
service.bat installpour créer un nouveau service pour un serveur autonome, ou pour un serveur dans un domaine géré. Pour obtenir la liste de toutes les options possibles, exécutezservice.batsans aucun argument.Exécuter la commande suivante, en ajustant le niveau de journalisation du service selon les besoins :
Pour un serveur autonome :
service.bat install /loglevel INFO
Pour un serveur de domaine géré :
Si vous n'utilisez pas le master par défaut du contrôleur de domaine JBoss EAP 6, remplacer master par le nom d'hôte qui convient ou un alias du contrôleur de domaine JBoss EAP.
service.bat install /host master /loglevel INFO
Un nouveau service Windows sera alors créé, portant le nom
JBossEAP7.Vérifier le nouveau service dans la Console de
ServicesOuvrir la console de services de Windows (
services.msc) et vérifiez que le service a bien été créé.Si le nom de service par défaut était utilisé, dans la liste des services Windows, le nouveau service aura pour nom:
JBossEAP7. Vous pourrez démarrer et arrêter le service à partir de la Console de services, ainsi que changer ses paramètres de configuration de démarrage (comment et quand).Démarrage et arrêt du service JBoss EAP à partir d'un terminal.
Pour démarrer le service d'un terminal, utiliser la commande suivante, en modifiant le nom du service si nécessaire.
net start JBossEAP7
Pour stopper le service d'un terminal, utiliser la commande suivante, en modifiant le nom du service si nécessaire.
net stop JBossEAP7
Si vous souhaitez supprimer le service JBoss EAP, veuillez utiliser la procédure suivante.
Supprimer JBoss EAP Service dans un serveur Microsoft Windows
Si le service est en cours d'exécution, ouvrir tout d'abord un terminal et arrêter le service en exécutant la commande
net stopaccompagnée du nom du service :net stop JBossEAP7
Dans un terminal, changer de répertoire
EAP_HOME\binet exécuter la commande suivante :service.bat uninstall
4.4. Configurer JBoss EAP en tant que service utilisant Jsvc
Le paquet JBoss Core Services de Jsvc peut être utilisé pour exécuter JBoss EAP en tant que service d'arrière-plan de Red Hat Enterprise Linux et Solaris.
Dans Red Hat Enterprise Linux, nous vous conseillons d'utiliser les méthodes natives pour exécuter JBoss EAP en tant que service.
Jsvc est un ensemble de bibliothèques et d'applications qui permettent aux applications Java d'être exécutées sur des plateforme style UNIX en arrière-plan. Jsvc permet à une application d'effectuer des opérations en tant qu'utilisateur privilégié, puis de changer identité en tant qu'utilisateur non privilégié.
Jsvc utilise trois processus : un processus de lanceur, un processus de contrôleur et un processus contrôlé. Le processus contrôlé est également le principal thread Java. Si la JVM plante le processus du contrôleur, il redémarrera dans les 60 secondes. Jsvc est un processus de démon et pour JBoss EAP, il doit être lancé par un utilisateur privilégié.
Installer le paquet Jsvc JBoss Core Services
- Pour les installations ZIP ou programme d'installation :
- Ouvrez un navigateur et connectez-vous au Portail Client de Red Hat à l'adresse suivante JBoss Software Downloads page.
- Sélectionner Apache Jsvc dans le menu déroulant Produit.
- Sélectionner la dernière version dans le menu déroulant Version.
- Chercher Red Hat JBoss Core Services Apache Jsvc dans la liste, en prenant soin de bien sélectionner la plateforme et l'architecture qui conviennent à votre système, et cliquer sur le lien Télécharger.
Extraire le fichier ZIP téléchargé dans le répertoire contenant le répertoire de l'installation JBoss EAP.
Vous aurez alors un répertoire
jbcs-jsvc-<VERSION>qui se trouvera au même niveau que celui de l'installation JBoss EAP. Exemple :/var/opt/ ├── jboss-eap-7.0 │ ├── bin │ └── ... └── jbcs-jsvc-<VERSION>
Les exemples de commande d'utilisation de Jsvc pour démarrer JBoss EAP supposent qu’un utilisateur de
jbossa été créé. Si vous n’avez pas déjà créé d'utilisateur pour JBoss EAP, exécutez les commandes suivantes pour créer le groupe et l'utilisateurjboss:# groupadd -f -g 185 -r jboss # useradd -r -u 185 -g jboss -d EAP_HOME -s /sbin/nologin -c "JBoss" jboss
- Pour les installations RPM de Red Hat Enterprise Linux :
- Se connecter au Red Hat Subscription Manager.
- Cliquer sur Systèmes dans Inventaire des abonnés.
Abonnez-vous aux référentiels JBoss Core Services en fonction de votre système d'exploitation et de votre architecture :
Pour Red Hat Enterprise Linux 6 :
- jb-coreservices-1-for-rhel-6-server-rpms
Pour Red Hat Enterprise Linux 7 :
- jb-coreservices-1-for-rhel-7-server-rpms
Exécutez la commande suivante en tant qu'utilisateur root pour installer Jsvc :
# yum groupinstall jbcs-jsvc
Utilisez Jsvc pour démarrer JBoss EAP comme un serveur autonome
Les commandes suivantes sont utilisées pour démarrer et arrêter JBoss EAP en mode autonome avec Jsvc. Les tableaux ci-dessous vous montrent les chemins à utiliser pour les commandes d'une installation RPM ou pour une installation ZIP/Programme d'installation de JBoss EAP.
Tableau 4.1. Emplacements des fichiers Jsvc pour les installations ZIP/Programme d'installation - Mode autonome
| Référence fichier dans Instructions | Emplacement fichier |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
Tableau 4.2. Emplacements des fichiers Jsvc pour les installations RPM - Mode autonome
| Référence fichier dans Instructions | Emplacement fichier |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
Démarrez un serveur JBoss EAP autonome par 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
Stopper un serveur JBoss EAP autonome par 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
Utilisez Jsvc pour démarrer un domaine géré JBoss EAP
Les commandes suivantes sont utilisées pour démarrer et arrêter un domaine géré JBoss EAP avec Jsvc. Les tableaux ci-dessous vous montrent les chemins à utiliser pour les commandes d'une installation RPM ou pour une installation ZIP/Programme d'installation de JBoss EAP.
Tableau 4.3. Emplacements des fichiers Jsvc pour les installations ZIP/Programme d'installation - Mode géré
| Référence fichier dans Instructions | Emplacement fichier |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
Tableau 4.4. Emplacements des fichiers Jsvc pour les installations RPM - Mode géré
| Référence fichier dans Instructions | Emplacement fichier |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
Avant d'exécuter la commande suivante, veillez bien à définir la variable d'environnement JAVA_HOME.
Démarrez un domaine géré JBoss EAP avec 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 \
&Arrêtez un domaine géré JBoss EAP avec 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