L'actu sur le net

- Contributions de l’équipe OSSA
- Toolinux
- Da Linux French Page
- Daily Daemon News
- Libroscope
- Linagora.com
- LinuxFrench.Net
- LogicielLibre.Net
- PHP

Articles populaires

- [Manuel] Introduction à Cacti
- [Tutoriel] Ajout d’un script dans les commandes Nagios
- [Nagios] Surveillance des disques RAID sous Linux
- [OpenLDAP] Start/stop script
- Fichiers de configurations Samba
- JMX (Java Management eXtensions)
- [OpenLDAP] Script de démarrage et d’arrêt
- [Nagios] Supervision of OpenLDAP’s replication status

 © Linagora.com

Accueil > Documentations > JBoss > Installation du clustering sous JBoss 3

Installation du clustering sous JBoss 3

Introduction

Ce document vise à compléter et préciser le manuel officiel du clustering sous JBOSS. Il trouve origine dans le travail commun effectué dans les locaux de CAP gemini à la Défense. Il s’agit donc d’un retour d’expérience concret basé sur l’installation de JBOSS en vue de maquettages ultérieurs.

Mise en garde

Ce travail nous a permis de conclure que JBOSS 3 (.0.X ou .2) n’est pas utilisable avec les machines virtuelles d’IBM (problème rencontré avec la version 1.3.1, des recherches sur Internet nous ont permis de trouver traces de tels problèmes avec la nouvelle VM 1.4). Il est donc important d’effectuer la procédure avec une VM Sun.

Etape 1 : Obtention et décompression de JBOSS

Suite à divers problèmes rencontrés avec la version 3.0.4, nous ne pouvons que conseiller l’utilisation de la dernière version stable actuellement disponible : la 3.0.6. Celle-ci est téléchargeable sur le site de JBOSS (http://www.jboss.org) ou bien sur l’espace JBOSS attribué au sein du projet sourceforge (http://jboss.sourceforge.net).

Une fois le binaire JBOSS téléchargé (il faut prendre le bundle contenant Tomcat) et décompressé, on ne peut que conseiller fortement l’utilisation de la commande Unix chown de manière à préciser des droits pour un groupe précédemment créée : jboss.

chown -R jboss :jboss $JBOSS_HOME
où JBOSS_HOME est la variable d’environnement contenant le répertoire principal de JBOSS.
Par exemple si vous avez décompressé JBOSS dans /usr/local cette variable aurait pour valeur : /usr/local/jboss3.0.6-tomcat4.1.18

On peut noter que l’utilisation d’un lien symbolique Unix permet de fortement simplifier les changements de versions.

ln -s jboss
permet de simplifier la maintenance puisque JBOSS_HOME contient plutôt que le dossier pointé , l’adresse du pointeur, soit /usr/local/jboss.

Remarque :
On peut tout aussi bien utiliser /opt par exemple, en lieu et place de /usr/local utilisé ici.

Etape 2 : Modification de la configuration de JBOSS

Cette section détaille comment modifier la configuration de JBOSS en vue d’obtenir une version à même de fonctionner en mode cluster. L’optique retenue ici n’est pas forcément la même que celle utilisée en vue de préparer un master JBOSS avant mise en production en clientèle. Cette optique permet juste d’obtenir une solution fonctionnelle a peu de frais (de configuration) même si elle n’est pas optimale (comprend des services lancés inutilement).

Remarque :
JBOSS comprend 3 configurations types permettant de répondre a 3 utilisations différentes :
- Minimal : pour un serveur JBOSS autonome (pas dans un cluster) sans services Web.
- Default : pour un serveur JBOSS autonome lançant un servlet engine embarqué (JETTY ou Tomcat suivant la version choisie).
- All : pour un support des clusters et le lancement du moteur http/JSP en mode embarqué.

La suite de cette section s’intéressera donc à la seule configuration permettant de lancer le support du mode cluster.

Configuration de la couche de communication

JBOSS utilise pour son fonctionnement en mode cluster, une librairie Open Source du nom de JavaGroups. Celle-ci permet de configurer des couches de bas niveau utilisées pour la découverte des nœuds du cluster par exemple. La configuration du cluster dans JBOSS (le Mbean JMX détaillant la configuration du cluster) est faite dans un fichier du nom de cluster-service.xml (dans le répertoire $JBOSS_HOME/all/deploy).

Cette couche de communication réclame un paramétrage différent de celui fait par défaut pour fonctionner sous Linux.Il suffit de préciser un attribut bind_adr avec pour valeur l’adresse IP du serveur Linux sur lequel on fait l’installation.

Remarque : Une fois encore rappelons que ceci n’a de sens que pour une mise en œuvre rapide et que pour une industrialisation du déploiement des solutions automatisant ces modifications de paramétrage peuvent être imaginées.

A ce stade le clustering esr opérationnel, il ne reste plus qu’à modifier la configuration pour mettre en place le farming (propagation des déploiements entre nœud du cluster).

Un lancement de JBOSS doit permettre après examen des logs de visualiser qu’il y a bien découverte dynamique des nœuds du cluster. Pour cela rappelons comment lancer la bonne configuration (all) :

cd $JBOSS_HOME/bin ./run.sh -c all

un tail -f server.log dans le répertoire logs de la configuration JBOSS permettant d’observer l’évolution de la découverte (nombre de nœuds trouvés par exemple).

Rendre le farming opérationnel

Un petit bug rend le farming non opérationnel dans la distribution classique de JBOSS, pour le résoudre il suffit de modifier le fichier XML de configuration de ce service (farm-service.xml).

Une mauvaise dépendance entre Mbeans est la cause du non fonctionnement de ce service, il suffit donc de remplacer la chaîne de caractères EmbeddedCatalina41 par WebServer pour résoudre ce souci.

Maintenant en déployant une application (.ear ou .war ou .xml) dans le répertoire farm d’un nœud doit induire le déploiement de cette application ou service dans tous les autres nœuds du cluster.

Références utiles

Documentation officielle JBOSS 3 sur le clustering par Bill Burke et Sacha Labourey.

Auteur : Jérôme Molière
Source : http://www.open-j2ee.org/

 Qui sommes nous ?

Dernière mise à jour : 27/08/2008
XHTML - SPIP 1.9.2