Cómo instalar Apache ActiveMQ en Debian 10
Apache ActiveMQ es un broker de mensajes de código abierto escrito en Java y desarrollado por Apache. Es uno de los brokers de mensajes más populares. Ofrece potencia y flexibilidad, soporta multiprotocolo y servidor de mensajería basado en java. Conectividad desde los principales lenguajes de programación como C, C++, Python, .Net, etc.
Apache ActiveMQ permite integrar aplicaciones multiplataforma utilizando el omnipresente protocolo AMPQ. Un intercambio entre aplicaciones web utilizando el STOMP sobre websocket, gestionar dispositivos IoT utilizando el MQTT, y soporta la infraestructura JMS y más allá.
En este tutorial, le mostraremos cómo instalar Apache ActiveMQ en la última versión de Debian Buster 10. Instalaremos el ActiveMQ utilizando el archivo binario oficial, configuraremos el ActiveMQ como un servicio systemd y habilitaremos la autenticación por contraseña.
Requisitos previos
Para esta guía, utilizaremos la última versión de Debian Buster 10 con 2GB de RAM, 50GB de espacio libre en disco y 2 CPUs.
¿Qué vamos a hacer?
- Instalar Java en Debian 10
- Descargar e instalar Apache ActiveMQ
- Configurar Apache ActiveMQ como servicio Systemd
- Configurar la contraseña encriptada para la consola web
- Probando
Paso 1 – Instalar Java en Debian 10
En primer lugar, instalaremos el OpenJDK y el JRE de Java en Debian Buster 10. Ambos paquetes están disponibles por defecto en el repositorio de Debian.
Actualice todos los repositorios disponibles en el sistema Debian e instale el OpenJDK y el JRE de Java utilizando el siguiente comando apt.
sudo apt update sudo apt install default-jdk default-jre
Una vez completada la instalación, compruebe la versión de Java utilizando el siguiente comando.
java -version
A continuación se muestra la respuesta que obtendrá.
openjdk version "11.0.7" 2020-04-14 OpenJDK Runtime Environment (build 11.0.7+10-post-Debian-3deb10u1) OpenJDK 64-Bit Server VM (build 11.0.7+10-post-Debian-3deb10u1, mixed mode, sharing)
Como resultado, el Java OpenJDK y JRE ’11’ ha sido instalado en el servidor Debian.
Paso 2 – Descargar e instalar Apache ActiveMQ
En este paso, descargaremos e instalaremos Apache ActiveMQ en nuestro sistema Debian.
Antes de continuar, vamos a crear un nuevo usuario del sistema ‘activemq’ utilizando el siguiente comando.
adduser --system --no-create-home --disabled-login --group activemq
Ahora descargue el archivo binario de Apache ActiveMQ y extraiga el archivo usando el siguiente comando.
wget --quiet http://www-us.apache.org/dist/activemq/5.15.12/apache-activemq-5.15.12-bin.tar.gz tar -xf apache-activemq-5.15.12-bin.tar.gz
Después de eso, mueva el directorio de Apache ActiveMQ a ‘/opt/activemq’ y cambie la propiedad del directorio ActiveMQ al usuario ‘activemq’.
mv apache-activemq-*/ /opt/activemq sudo chown -R activemq:activemq /opt/activemq
Como resultado, Apache ActiveMQ está instalado en el sistema Debian.
Paso 3 – Configurar Apache ActiveMQ como servicio Systemd
Después de descargar e instalar Apache ActiveMQ, vamos a configurar ActiveMQ como un servicio systemd.
Ahora vaya al directorio ‘/etc/systemd/system’ y cree un nuevo archivo de servicio ‘activemq.service’ usando el editor vim.
cd /etc/systemd/system/ vim activemq.service
Pegue en él la siguiente configuración.
[Unit] Description=Apache ActiveMQ After=network.target [Service] Type=forking WorkingDirectory=/opt/activemq/bin ExecStart=/opt/activemq/bin/activemq start ExecStop=/opt/activemq/bin/activemq stop Restart=on-abort User=activemq Group=activemq [Install] WantedBy=multi-user.target
Guarde y cierre.
A continuación, recargue el gestor systemd para aplicar la nueva configuración del servicio systemd.
systemctl daemon-reload
Ahora inicie el servidor ActiveMQ y añádalo al arranque del sistema.
systemctl start activemq systemctl enable activemq
Como resultado, Apache ActiveMQ está en funcionamiento, compruébelo con el siguiente comando.
systemctl status activemq
A continuación se muestra el resultado que obtendrá.
Paso 4 – Configurar la contraseña encriptada para la consola web
Por defecto, la autenticación de la Consola Web de ActiveMQ está habilitada, todos los usuarios y contraseñas para ActiveMQ se almacenan en el ‘jetty-realm.properties’ como texto plano. Para este paso, cambiaremos la contraseña de texto plano por defecto por una contraseña encriptada.
Primero, descargue la distribución de jetty y extraiga.
wget --quiet https://repo1.maven.org/maven2/org/eclipse/jetty/jetty-distribution/9.4.28.v20200408/jetty-distribution-9.4.28.v20200408.tar.gz tar -xf jetty-distribution-*.tar.gz
Ahora ve al directorio ‘jetty-distribution-*’.
cd jetty-distribution-*/
Ejecuta el siguiente comando para generar tu contraseña, y asegúrate de cambiar la ‘sal’ y la contraseña por las tuyas.
java -cp lib/jetty-util-9*.jar org.eclipse.jetty.util.security.Password salt password
Ahora obtendrás la siguiente respuesta.
2020-04-29 07:15:22.367:INFO::main: Logging initialized @194ms to org.eclipse.jetty.util.log.StdErrLog mypassword OBF:1uh41zly1x8g1vu11ym71ym71vv91x8e1zlk1ugm MD5:34819d7beeabb9260a5c854bc85b3e44 CRYPT:myylAylKPNtmw
Copie el archivo ‘CRYPT:myy...’ contraseña encriptada a su nota, ya que se utilizará para el ActiveMQ.
Ahora vaya al directorio de configuración de ActiveMQ ‘/opt/activemq/conf’ y edite la configuración ‘jetty-realm.properties’ usando el editor vim.
cd /opt/activemq/conf/ vim jetty-realm.properties
Cambie la contraseña de administrador por defecto con la contraseña encriptada generada ‘CRYPT:myy…’ como se indica a continuación.Advertisement
admin: CRYPT:myylAylKPNtmw, admin user: user, user
Guarde y cierre.
A continuación, reinicie el servicio Apache ActiveMQ para aplicar la nueva configuración.
systemctl restart activemq
Como resultado, se ha completado la configuración de la Consola Web de ActiveMQ con la contraseña encriptada.
Paso 5 – Pruebas
Ahora abra su navegador web y escriba la dirección IP del servidor con el puerto ‘8161’.
http://serverip:8161/
Y obtendrá la página index.html por defecto de la Consola Web de ActiveMQ.
A continuación, añada la ruta ‘/admin’ en la URL como se indica a continuación.
http://serverip:8161/admin
Y se le pedirá la autenticación de ActiveMQ.
Escriba el usuario por defecto ‘admin’ con su contraseña generada en la parte superior, luego haga clic en ‘OK’ para iniciar sesión.
Una vez que su contraseña sea correcta, obtendrá el panel de control de ActiveMQ como se muestra a continuación.
Como resultado, la instalación y configuración de Apache ActiveMQ en Debian Buster 10 se ha completado con éxito.