Cómo instalar Apache ActiveMQ en CentOS / RHEL 8


ActiveMQ es una popular implementación multiprotocolo de código abierto de middleware orientado a mensajes (MOM) con funciones empresariales escritas en Java, que se utiliza para enviar mensajes entre dos aplicaciones o dos componentes dentro de una aplicación.

Es compatible con una amplia gama de clientes multilingües de Java, C, C ++, C #, Ruby, Perl, Python, PHP y protocolos de transporte como OpenWire, STOMP, MQTT, AMQP, REST y WebSockets.

Algunos de sus casos de uso incluyen mensajería transaccional, clústeres y modelo de mensajería asíncrona de propósito general, transmisión web de datos, API RESTful para mensajería usando HTTP y mucho más.

En este artículo, le explicaremos cómo instalar la última versión de Apache ActiveMQ en la distribución de Linux CentOS 8 y RHEL 8.

Instalación de Apache ActiveMQ en CentOS y RHEL 8

Para instalar ActiveMQ, su sistema debe tener Java instalado en su servidor. Si Java no está instalado, puede instalarlo en su sistema usando nuestra guía Cómo instalar Java en CentOS y RHEL 8.

Una vez instalado Java, puede continuar para descargar la última versión de ActiveMQ o usar el siguiente comando wget para obtener el paquete fuente como se muestra.

# cd /opt
# wget https://www.apache.org/dist/activemq/5.15.10/apache-activemq-5.15.10-bin.tar.gz

Ahora extraiga el archivo de almacenamiento usando el comando tar y muévase al directorio extraído usando el comando cd como se muestra.

# tar zxvf apache-activemq-5.15.10-bin.tar.gz
# cd apache-activemq-5.15.10

Ahora su paquete ActiveMQ debería estar instalado en el directorio /opt/apache-activemq-5.15.9 y puede ver su contenido usando el comando ls.

# ls -l 

De la salida anterior, hay algunos directorios clave que debe tener en cuenta, que incluyen lo siguiente:

  • bin – stores the binary file plus other related files.
  • conf – contains the configuration files: the main configuration file activemq.xml, written in XML format.
  • data – stores the PID file as well as log files.
  • docs – contains documentation files.
  • lib – stores library files.
  • webapps – contains the web interface and admin console files.

Ejecución de ActiveMQ como servicio en Systemd

Para ejecutar ActiveMQ como servicio, debe crear un archivo de unidad de servicio ActiveMQ bajo el usuario llamado activemq, así que comience creando el usuario usando el comando useradd como se muestra.

# useradd activemq

A continuación, configure los permisos correctos en el directorio de instalación de ActiveMQ y todo su contenido pertenece al usuario y grupo recién creado. Además, confirme que los nuevos permisos están configurados de la siguiente manera.

# chown -R activemq:activemq /opt/apache-activemq-5.15.10
# ls -l /opt/apache-activemq-5.15.10/

Ahora cree un archivo de unidad de servicio para ActiveMQ llamado activemq.service en el directorio/etc/systemd/system /.

# vi /etc/systemd/system/activemq.service

Agregue la siguiente configuración en el archivo activemq.service .

[Unit]
Description=Apache ActiveMQ Message Broker
After=network-online.target

[Service]
Type=forking

User=activemq
Group=activemq

WorkingDirectory=/opt/apache-activemq-5.15.10/bin
ExecStart=/opt/apache-activemq-5.15.10/bin/activemq start
ExecStop=/opt/apache-activemq-5.15.10/bin/activemq stop
Restart=on-abort


[Install]
WantedBy=multi-user.target

Guarde el archivo y ciérrelo. Luego, vuelva a cargar la configuración del administrador de systemd para leer el servicio recién creado, usando el siguiente comando.

# systemctl daemon-reload

A continuación, puede usar los comandos systemctl para comenzar. habilite y verifique el estado del servicio Apache ActiveMQ como se muestra.

# systemctl start activemq.service
# systemctl enable activemq.service
# systemctl status activemq.service

De forma predeterminada, el demonio de ActiveMQ escucha en el puerto 61616 y puede confirmar el puerto utilizando la utilidad ss de la siguiente manera.

# ss -ltpn 

Antes de poder acceder a la consola web de ActiveMQ, si tiene el servicio firewalld en ejecución (que debería ser el predeterminado), debe abrir el puerto 8161 en el que escucha la consola web en el firewall, utilizando la herramienta firewall-cmd como se muestra.

# firewall-cmd --zone=public --permanent --add-port=8161/tcp
# firewall-cmd --reload

Prueba de la instalación de ActiveMQ

La consola web de ActiveMQ se utiliza para administrar y monitorear ActiveMQ a través de un navegador web. Para acceder a él, abra un navegador web y apúntelo a la siguiente URL:

http://localhost:8161
OR
http://SERVER_IP:8161

Llegará a la siguiente interfaz web.

Para iniciar la administración real de ActiveMQ, inicie sesión en la consola web de administración haciendo clic en el enlace "Administrador de agente de ActiveMQ". Alternativamente, la siguiente URL también lo llevará directamente a la interfaz de inicio de sesión de la consola web de administración.

http://localhost:8161/admin 
OR
http://SERVER_IP:8161/admin

Luego use el nombre de usuario admin y la contraseña admin predeterminados para iniciar sesión.

La siguiente captura de pantalla muestra el panel de la consola web, con varias funciones para administrar y monitorear ActiveMQ.

En este artículo, hemos explicado cómo instalar la última versión de Apache ActiveMQ en la distribución de Linux CentOS 8 y RHEL 8. Si desea obtener más información, especialmente sobre cómo utilizar Apache ActiveMQ, lea la documentación oficial de ActiveMQ 5. No olvide enviarnos sus comentarios a través del formulario de comentarios a continuación.