Cómo instalar Apache ActiveMQ en Ubuntu 20.04

Apache ActiveMQ es un software de intermediación de mensajes gratuito, de código abierto y basado en Java de la Fundación Apache. Se utiliza para enviar mensajes entre distintas aplicaciones y también ofrece funciones adicionales como STOMP, JMS y OpenWire. Es compatible con los protocolos estándar del sector que permiten la comunicación entre aplicaciones distintas.

Apache ActiveMQ es la mejor opción si buscas un broker de mensajes de alto rendimiento para tus aplicaciones.

En este tutorial, te mostraremos cómo instalar Apache ActiveMQ en Ubuntu 20.04.

Requisitos previos

  • Un servidor que ejecute Ubuntu 20.04.
  • Una contraseña de root está configurado el servidor.

Instalar Java

Apache ActiveMQ es una aplicación basada en Java, por lo que Java debe estar instalado en tu servidor. Si no está instalado, puedes instalarlo ejecutando el siguiente comando:

apt-get install openjdk-11-jdk openjdk-11-jre -y

Una vez instalado, puedes verificar la versión de Java con el siguiente comando:

java -version

Deberías obtener la siguiente salida:

openjdk version "11.0.8" 2020-07-14
OpenJDK Runtime Environment (build 11.0.8+10-post-Ubuntu-0ubuntu120.04)
OpenJDK 64-Bit Server VM (build 11.0.8+10-post-Ubuntu-0ubuntu120.04, mixed mode, sharing)

Instalar Apache ActiveMQ

En el momento de escribir este tutorial, la última versión de ActiveMQ es la 5.16.0. Puedes descargarla con el siguiente comando:

wget https://downloads.apache.org//activemq/5.16.0/apache-activemq-5.16.0-bin.tar.gz

Una vez finalizada la descarga, extrae el archivo descargado con el siguiente comando:

tar -xvzf apache-activemq-5.16.0-bin.tar.gz

A continuación, mueve el directorio extraído al /opt con el siguiente comando:

mv apache-activemq-5.16.0 /opt/activemq

A continuación, tendrás que crear un nuevo usuario y grupo para ejecutar Apache ActiveMQ. Puedes crearlos con el siguiente comando:

addgroup --quiet --system activemq
adduser --quiet --system --ingroup activemq --no-create-home --disabled-password activemq

A continuación, cambia el ownerip del /opt/activemq a activemq como se muestra a continuación:

chown -R activemq:activemq /opt/activemq

Una vez que hayas terminado, puedes continuar con el siguiente paso.

Crear un Archivo de Servicio Systemd para ActiveMQ

A continuación, tendrás que crear un archivo de servicio systemd para gestionar el servicio ActiveMQ. Puedes crearlo con el siguiente comando:

nano /etc/systemd/system/activemq.service

Añade las siguientes líneas:

[Unit]
Description=Apache ActiveMQ
After=network.target
[Service]
Type=forking
User=activemq
Group=activemq

ExecStart=/opt/activemq/bin/activemq start
ExecStop=/opt/activemq/bin/activemq stop

[Install]
WantedBy=multi-user.target

Guarda y cierra el archivo cuando hayas terminado. A continuación, recarga el demonio systemd con el siguiente comando:

systemctl daemon-reload

A continuación, inicia el servicio ActiveMQ y habilítalo para que se inicie al reiniciar el sistema con el siguiente comando:

systemctl start activemq
systemctl enable activemq

Ahora puedes comprobar el estado del servicio ActiveMQ con el siguiente comando:

systemctl status activemq

Deberías obtener la siguiente salida:

? activemq.service - Apache ActiveMQ
     Loaded: loaded (/etc/systemd/system/activemq.service; disabled; vendor preset: enabled)
     Active: active (running) since Sat 2020-08-01 11:43:25 UTC; 22s ago
    Process: 31092 ExecStart=/opt/activemq/bin/activemq start (code=exited, status=0/SUCCESS)
   Main PID: 31165 (java)
      Tasks: 49 (limit: 2353)
     Memory: 190.5M
     CGroup: /system.slice/activemq.service
             ??31165 /usr/bin/java -Xms64M -Xmx1G -Djava.util.logging.config.file=logging.properties -Djava.security.auth.login.config=/opt/ac>

Aug 01 11:43:25 ubuntu2004 systemd[1]: Starting Apache ActiveMQ...
Aug 01 11:43:25 ubuntu2004 activemq[31092]: INFO: Loading '/opt/activemq//bin/env'
Aug 01 11:43:25 ubuntu2004 activemq[31092]: INFO: Using java '/usr/bin/java'
Aug 01 11:43:25 ubuntu2004 activemq[31092]: INFO: Starting - inspect logfiles specified in logging.properties and log4j.properties to get deta>
Aug 01 11:43:25 ubuntu2004 activemq[31164]: INFO: pidfile created : '/opt/activemq//data/activemq.pid' (pid '31165')
Aug 01 11:43:25 ubuntu2004 systemd[1]: Started Apache ActiveMQ.
lines 1-16/16 (END)

En este momento, ActiveMQ se está ejecutando y está a la escucha en el puerto 8161.

Acceder a la Interfaz Web de Apache ActiveMQ

Por defecto, Apache ActiveMQ está configurado para acceder desde el localhost. Así que tendrás que configurarlo para acceder desde los hosts externos. Puedes configurarlo editando el archivo /opt/activemq/conf/jetty.xml:

nano /opt/activemq/conf/jetty.xml

Busca la siguiente línea:

        <property name="host" value="127.0.0.1"/>

Sustitúyela por la siguiente línea:

        <property name="host" value="your-server-ip"/>

Guarda y cierra el archivo y reinicia el servicio Apache ActiveMQ para aplicar los cambios:

systemctl restart activemq

Ahora, abre tu navegador web y accede a Apache ActiveMQ utilizando la URL http://your-server-ip:8161:/admin. Se te pedirá un nombre de usuario y una contraseña como se muestra a continuación:

Proporciona el nombre de usuario y la contraseña por defecto como admin / admin y haz clic en el botón Iniciar sesión. Deberías ver el panel de control de Apache ActiveMQ en la siguiente pantalla:

Conclusión

Enhorabuena! has instalado correctamente Apache ActiveMQ en Ubuntu 20.04. Ahora puedes empezar a desarrollar tu primera Aplicación de Mensajería ActiveMQ.

También te podría gustar...