Apache ActiveMQ est un courtier de messages gratuit et open source et un serveur de modèles d'intégration. Il prend en charge de nombreux clients et protocoles multilingues de JAVA, C++, C, Python, Perl, PHP, etc. Il fournit de nombreuses fonctionnalités telles que les groupes de messages, les destinations virtuelles, les caractères génériques et les destinations composites, etc. Il peut être facilement intégré aux applications Spring. /P>
Dans ce tutoriel, nous allons installer Apache ActiveMQ sur le serveur CentOS 7.
Prérequis
- Serveur CentOS 7 minimal
- Privilèges root. Ce guide est écrit en tant qu'utilisateur root, si vous êtes connecté en tant qu'utilisateur sudo, exécutez sudo -i.
Mettre à jour le système de base
Avant d'installer un package, il est recommandé de mettre à jour les packages et le référentiel à l'aide de la commande suivante.
yum -y update
Une fois votre système mis à jour, continuez pour installer JAVA.
Installer JAVA
ActiveMQ prend en charge à la fois OpenJDK et Oracle JAVA. Dans ce didacticiel, nous allons installer la dernière version d'Oracle Java sur le serveur. Exécutez la commande suivante pour télécharger le package RPM.
wget --no-cookies --no-check-certificate --header "Cookie:oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.rpm"
Si vous n'avez pas installé wget, vous pouvez exécuter yum -y install wget pour installer wget. Installez maintenant le RPM téléchargé à l'aide de la commande suivante.
yum -y localinstall jdk-8u131-linux-x64.rpm
Vous pouvez maintenant vérifier la version Java à l'aide de la commande suivante.
java -version
Vous obtiendrez la sortie suivante.
[[email protected] ~]# java -version java version "1.8.0_131" Java(TM) SE Runtime Environment (build 1.8.0_131-b11) Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)
Vous devrez également vérifier si la variable d'environnement JAVA_HOME est définie. Exécutez la commande suivante pour le même.
echo $JAVA_HOME
Si vous obtenez une sortie nulle ou vide, vous devrez définir manuellement la variable JAVA_HOME. Modifiez le fichier .bash_profile à l'aide de votre éditeur préféré. Dans ce tutoriel, nous utiliserons l'éditeur nano. Exécutez la commande suivante pour modifier .bash_profile à l'aide de nano.
nano ~/.bash_profile
Ajoutez maintenant les lignes suivantes à la fin du fichier.
export JAVA_HOME=/usr/java/jdk1.8.0_131/ export JRE_HOME=/usr/java/jdk1.8.0_131/jre
Maintenant, sourcez le fichier à l'aide de la commande suivante.
source ~/.bash_profile
Vous pouvez maintenant exécuter à nouveau la commande echo $JAVA_HOME pour vérifier si la variable d'environnement est définie ou non.
[[email protected] ~]# echo $JAVA_HOME /usr/java/jdk1.8.0_131/
Installer ActiveMQ
ActiveMQ fournit des binaires pour les systèmes Unix qui sont précompilés et peuvent être utilisés directement. La seule dépendance requise était d'installer JAVA dans le système. Comme nous avons installé JAVA, nous pouvons poursuivre le téléchargement d'ActiveMQ.
wget http://www-eu.apache.org/dist//activemq/5.15.0/apache-activemq-5.15.0-bin.tar.gz
Si vous n'avez pas installé wget, vous pouvez exécuter yum -y install wget. Vous pouvez toujours trouver le lien vers la dernière version sur la page de téléchargement d'ActiveMQ.
Extrayez l'archive à l'aide de la commande suivante.
tar -zxvf apache-activemq-*-bin.tar.gz -C /var
Changez le nom du répertoire ActiveMQ par souci de simplicité en exécutant.
mv /var/apache-activemq-*/ /var/activemq/
ActiveMQ est maintenant installé sur votre système.
Démarrage d'ActiveMQ
Remplacez votre répertoire actuel par le répertoire d'installation d'ActiveMQ.
cd /var/activemq
Vous pouvez immédiatement démarrer ActiveMQ en tant que processus de premier plan en exécutant la commande suivante.
./bin/activemq console
Pour démarrer ActiveMQ en tant que processus d'arrière-plan, exécutez :
./bin/activemq start
Vous devriez obtenir la sortie suivante si le démarrage a réussi.
[[email protected]c activemq]# ./bin/activemq start INFO: Loading '/var/activemq//bin/env' INFO: Using java '/usr/java/jdk1.8.0_131//bin/java' INFO: Starting - inspect logfiles specified in logging.properties and log4j.properties to get details INFO: pidfile created : '/var/activemq//data/activemq.pid' (pid '27680')
Pour arrêter ActiveMQ, vous pouvez exécuter la commande suivante.
./bin/activemq stop
Création du service Systemd
Bien que vous puissiez facilement exécuter ActiveMQ à l'aide des commandes ci-dessus, il est recommandé d'utiliser un service systemd pour gérer le processus ActiveMQ. L'utilisation du service Systemd garantira qu'ActiveMQ démarrera automatiquement au démarrage et en cas d'échec.
Créez un fichier de service systemd à l'aide de votre éditeur de texte préféré. Dans ce tutoriel, nous utiliserons l'éditeur nano. Si vous n'avez pas installé nano, vous pouvez exécuter yum -y install nano.
nano /etc/systemd/system/activemq.service
Remplissez maintenant le fichier avec le contenu suivant.
[Unit] Description=ActiveMQ service After=network.target [Service] Type=forking ExecStart=/var/activemq/bin/activemq start ExecStop=/var/activemq/bin/activemq stop User=root Group=root Restart=always RestartSec=9 StandardOutput=syslog StandardError=syslog SyslogIdentifier=activemq [Install] WantedBy=multi-user.target
Vous pouvez maintenant démarrer ActiveMQ en utilisant :
systemctl start activemq
Pour configurer ActiveMQ afin qu'il démarre automatiquement au démarrage, utilisez.
systemctl enable activemq
Pour vérifier si le service ActiveMQ est démarré correctement, vous pouvez exécuter la commande suivante pour vérifier l'état du service ActiveMQ.
systemctl status activemq
Vous devriez obtenir une sortie similaire à celle illustrée ci-dessous.
? activemq.service - ActiveMQ service Loaded: loaded (/etc/systemd/system/activemq.service; enabled; vendor preset: disabled) Active: active (running) since Sat 2017-07-15 17:05:24 UTC; 6s ago Process: 28815 ExecStart=/var/activemq/bin/activemq start (code=exited, status=0/SUCCESS) Main PID: 28867 (java) CGroup: /system.slice/activemq.service ??28867 /usr/bin/java -Xms64M -Xmx1G -Djava.util.logging.config.file=logging.properties -Djava.security.auth... Jul 15 17:05:24 centos systemd[1]: Starting ActiveMQ service... Jul 15 17:05:24 centos activemq[28815]: INFO: Loading '/var/activemq//bin/env' Jul 15 17:05:24 centos activemq[28815]: INFO: Using java '/usr/bin/java' Jul 15 17:05:24 centos activemq[28815]: INFO: Starting - inspect logfiles specified in logging.propertie...tails Jul 15 17:05:24 centos activemq[28815]: INFO: pidfile created : '/var/activemq//data/activemq.pid' (pid '28867') Jul 15 17:05:24 centos systemd[1]: Started ActiveMQ service.
Utilisation du panneau Web d'administration
Pour accéder au panneau d'administration d'ActiveMQ, démarrez le service ActiveMQ. À l'aide de votre navigateur Web préféré, ouvrez l'URL suivante.
http://Your_Server_IP:8161/admin
Si vous avez installé firewalld, vous devrez autoriser le port 8161 à travers le pare-feu. Exécutez la commande suivante pour le même.
firewall-cmd --zone=public --permanent --add-port=8161/tcp
firewall-cmd --reload
Le nom d'utilisateur et le mot de passe initiaux pour Apache ActiveMQ sont admin et administrateur . Une fois connecté, vous verrez l'interface suivante.
Vous devez changer votre mot de passe dès que vous êtes connecté.
Conclusion
Vous pouvez maintenant utiliser le serveur Apache ActiveMQ pour gérer la communication entre plusieurs clients et serveurs. Vous pouvez en savoir plus sur Apache ActiveMQ en vous rendant sur le site ActiveMQ.