Comment réparer JBoss AS bloqué au démarrage sous Linux ?



Résolution des problèmes de démarrage de JBoss AS 7.1.1 sur CentOS 7

Récemment, j’ai été confronté à un problème lors de l’utilisation de JBoss Application Server sur CentOS 7. Après avoir installé la version 7.1.1, le serveur restait bloqué pendant la phase de démarrage.

Le résultat de la tentative de démarrage était le suivant :

  [[email protected] bin]# ./standalone.sh
  =========================================================================
   Environnement de démarrage de JBoss
   JBOSS_HOME: /home/chandan/Downloads/jboss-as-7.1.1.Final
   JAVA: java
   JAVA_OPTS:  -server -XX:+UseCompressedOops -XX:+TieredCompilation -Xms64m -Xmx512m -XX:MaxPermSize=256m -Djava.net.preferIPv4Stack=true -Dorg.jboss.resolver.warning=true -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true -Djboss.server.default.config=standalone.xml
  =========================================================================
  Avertissement de la machine virtuelle du serveur OpenJDK 64 bits : l'option MaxPermSize=256m est ignorée ; la prise en charge a été supprimée dans la version 8.0
  13:39:15,689 INFO  [org.jboss.modules] JBoss Modules version 1.1.1.GA
  13:39:16,236 INFO  [org.jboss.msc] JBoss MSC version 1.0.2.GA
  13:39:16,346 INFO  [org.jboss.as] JBAS015899: JBoss AS 7.1.1.Final "Brontes" en démarrage
  

Malgré une attente de quelques minutes, le serveur ne démarrait pas.

Si vous rencontrez cette situation, pas de panique !

Il s’avère qu’un problème bien connu existe entre JBoss 7 et Java 8. La solution consiste à utiliser Java 7. La première étape est donc de vérifier si vous utilisez Java 8.

  [[email protected] bin]# java -version
  openjdk version "1.8.0_111"
  OpenJDK Runtime Environment (build 1.8.0_111-b15)
  OpenJDK 64-Bit Server VM (build 25.111-b15, mixed mode)
  [[email protected] bin]#
  

Comme le montre l’exemple ci-dessus, Java 8 était installé. Il est nécessaire de passer à Java 7.

Sur CentOS, vous pouvez facilement basculer vers une version antérieure de Java en utilisant la commande suivante :

update-alternatives --config java

Cette commande vous présentera une liste des versions Java disponibles. Vous n’aurez qu’à choisir celle qui convient.

  [[email protected] bin]# update-alternatives --config java
  Il existe 2 programmes fournissant 'java'.

     Sélection    Commande
  -----------------------------------------------
   *+ 1           java-1.7.0-openjdk.x86_64 (/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.121-2.6.8.0.el7_3.x86_64/jre/bin/java)
      2           java-1.8.0-openjdk.x86_64 (/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-2.b15.el7_3.x86_64/jre/bin/java)

  Appuyez sur Entrée pour conserver la sélection actuelle[+], ou tapez le numéro de sélection:
  

En saisissant ‘1’, vous sélectionnez la version Java 7 et êtes prêt à lancer JBoss.

Si vous utilisez RHEL ou n’avez pas Java 7 d’installé, vous devez au préalable installer et configurer correctement le chemin d’accès (PATH).

Après avoir configuré Java 7, JBoss 7 a pu démarrer sans problème.

    [[email protected] bin]# ./standalone.sh
    =========================================================================
     Environnement de démarrage de JBoss
     JBOSS_HOME: /home/chandan/Downloads/jboss-as-7.1.1.Final
     JAVA: java
     JAVA_OPTS:  -server -XX:+UseCompressedOops -XX:+TieredCompilation -Xms64m -Xmx512m -XX:MaxPermSize=256m -Djava.net.preferIPv4Stack=true -Dorg.jboss.resolver.warning=true -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true -Djboss.server.default.config=standalone.xml
    ========================================================================
    13:46:04,337 INFO  [org.jboss.modules] JBoss Modules version 1.1.1.GA
    13:46:04,622 INFO  [org.jboss.msc] JBoss MSC version 1.0.2.GA
    13:46:04,661 INFO  [org.jboss.as] JBAS015899: JBoss AS 7.1.1.Final "Brontes" en démarrage
    13:46:05,552 INFO  [org.xnio] XNIO Version 3.0.3.GA
    13:46:05,568 INFO  [org.jboss.as.server] JBAS015888: Création du service de gestion http en utilisant la liaison de socket (management-http)
    13:46:05,584 INFO  [org.xnio.nio] XNIO NIO Implementation Version 3.0.3.GA
    13:46:05,621 INFO  [org.jboss.as.logging] JBAS011502: Suppression des gestionnaires de logs de démarrage
    13:46:05,643 INFO  [org.jboss.remoting] (MSC service thread 1-3) JBoss Remoting version 3.2.3.GA
    13:46:05,651 INFO  [org.jboss.as.clustering.infinispan] (ServerService Thread Pool -- 31) JBAS010280: Activation du sous-système Infinispan.
    13:46:05,722 INFO  [org.jboss.as.configadmin] (ServerService Thread Pool -- 26) JBAS016200: Activation du sous-système ConfigAdmin
    13:46:05,734 INFO  [org.jboss.as.naming] (ServerService Thread Pool -- 38) JBAS011800: Activation du sous-système Naming
    13:46:05,778 INFO  [org.jboss.as.osgi] (ServerService Thread Pool -- 39) JBAS011940: Activation du sous-système OSGi
    13:46:05,871 INFO  [org.jboss.as.security] (ServerService Thread Pool -- 44) JBAS013101: Activation du sous-système Security
    13:46:05,884 INFO  [org.jboss.as.naming] (MSC service thread 1-1) JBAS011802: Démarrage du service Naming
    13:46:05,901 INFO  [org.jboss.as.webservices] (ServerService Thread Pool -- 48) JBAS015537: Activation de l'extension WebServices
    13:46:05,983 INFO  [org.jboss.as.mail.extension] (MSC service thread 1-1) JBAS015400: Liaison de la session de messagerie [java:jboss/mail/Default]
    13:46:06,001 INFO  [org.jboss.as.connector] (MSC service thread 1-2) JBAS010408: Démarrage du sous-système JCA (JBoss IronJacamar 1.0.9.Final)
    13:46:06,002 INFO [org.jboss.as.security] (MSC service thread 1-2) JBAS013100: Version actuelle de PicketBox=4.0.7.Final
    13:46:06,104 INFO  [org.jboss.as.connector.subsystems.datasources] (ServerService Thread Pool -- 27) JBAS010403: Déploiement du pilote JDBC conforme à la classe org.h2.Driver (version 1.3)
    13:46:06,440 INFO  [org.jboss.ws.common.management.AbstractServerConfig] (MSC service thread 1-3) JBoss Web Services - Pile CXF Serveur 4.0.2.GA
    13:46:06,522 INFO  [org.apache.coyote.http11.Http11Protocol] (MSC service thread 1-4) Démarrage de Coyote HTTP/1.1 sur http--127.0.0.1-8080
    13:46:06,746 INFO  [org.jboss.as.server.deployment.scanner] (MSC service thread 1-4) JBAS015012: Démarrage du service FileSystemDeploymentService pour le répertoire /home/chandan/Downloads/jboss-as-7.1.1.Final/standalone/deployments
    13:46:06,747 INFO  [org.jboss.as.remoting] (MSC service thread 1-1) JBAS017100: Écoute sur /127.0.0.1:9999
    13:46:06,796 INFO  [org.jboss.as.remoting] (MSC service thread 1-3) JBAS017100: Écoute sur /127.0.0.1:4447
    13:46:06,883 INFO  [org.jboss.as.connector.subsystems.datasources] (MSC service thread 1-3) JBAS010400: Liaison de la source de données [java:jboss/datasources/ExampleDS]
    13:46:07,003 INFO  [org.jboss.as] (Controller Boot Thread) JBAS015951: Console d'administration en écoute sur http://127.0.0.1:9990
    13:46:07,004 INFO  [org.jboss.as] (Controller Boot Thread) JBAS015874: JBoss AS 7.1.1.Final "Brontes" démarré en 3468ms - 133 services sur 208 démarrés (74 services sont passifs ou à la demande)
  

J’espère que cela vous sera utile. Pour en savoir plus sur l’administration et la configuration de JBoss EAP, cliquez ici.

L’article vous a plu ? N’hésitez pas à le partager.