So installierst du Apache ActiveMQ unter Ubuntu 20.04

Apache ActiveMQ ist eine kostenlose, quelloffene und Java-basierte Message Broker-Software der Apache Foundation. Sie wird verwendet, um Nachrichten zwischen verschiedenen Anwendungen zu versenden und bietet außerdem zusätzliche Funktionen wie STOMP, JMS und OpenWire. Sie unterstützt Industriestandardprotokolle, die die Kommunikation zwischen verschiedenen Anwendungen ermöglichen.

Der Apache ActiveMQ ist die beste Wahl für dich, wenn du einen leistungsstarken Message Broker für deine Anwendungen suchst.

In diesem Lernprogramm zeigen wir dir, wie du Apache ActiveMQ auf Ubuntu 20.04 installierst.

Voraussetzungen

  • Ein Server, auf dem Ubuntu 20.04 läuft.
  • Der Server ist mit einem Root-Passwort konfiguriert.

Java installieren

Apache ActiveMQ ist eine Java-basierte Anwendung, daher muss Java auf deinem Server installiert sein. Wenn es nicht installiert ist, kannst du es mit folgendem Befehl installieren:

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

Nach der Installation kannst du die Java-Version mit folgendem Befehl überprüfen:

java -version

Du solltest die folgende Ausgabe erhalten:

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)

Apache ActiveMQ installieren

Zum Zeitpunkt der Erstellung dieses Tutorials ist die neueste Version von ActiveMQ 5.16.0. Du kannst sie mit dem folgenden Befehl herunterladen:

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

Sobald der Download abgeschlossen ist, entpacke die heruntergeladene Datei mit dem folgenden Befehl:

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

Als Nächstes verschiebst du das entpackte Verzeichnis mit folgendem Befehl in das Verzeichnis /opt:

mv apache-activemq-5.16.0 /opt/activemq

Als Nächstes musst du einen neuen Benutzer und eine neue Gruppe anlegen, um Apache ActiveMQ auszuführen. Du kannst sie mit dem folgenden Befehl erstellen:

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

Als Nächstes änderst du den Besitzer des Verzeichnisses /opt/activemq in activemq, wie unten gezeigt:

chown -R activemq:activemq /opt/activemq

Wenn du damit fertig bist, kannst du mit dem nächsten Schritt fortfahren.

Erstelle eine Systemd-Dienstdatei für ActiveMQ

Als Nächstes musst du eine systemd-Dienstdatei erstellen, um den ActiveMQ-Dienst zu verwalten. Du kannst sie mit dem folgenden Befehl erstellen:

nano /etc/systemd/system/activemq.service

Füge die folgenden Zeilen hinzu:

[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

Speichere und schließe die Datei, wenn du fertig bist. Dann lädst du den systemd-Daemon mit dem folgenden Befehl neu:

systemctl daemon-reload

Als Nächstes startest du den ActiveMQ-Dienst und aktivierst ihn mit folgendem Befehl, damit er beim Neustart des Systems gestartet wird:

systemctl start activemq
systemctl enable activemq

Jetzt kannst du den Status des ActiveMQ-Dienstes mit dem folgenden Befehl überprüfen:

systemctl status activemq

Du solltest die folgende Ausgabe erhalten:

? 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)

Zu diesem Zeitpunkt läuft ActiveMQ und lauscht auf Port 8161.

Zugriff auf die Apache ActiveMQ-Weboberfläche

Standardmäßig ist Apache ActiveMQ so konfiguriert, dass der Zugriff von localhost aus erfolgt. Du musst es also für den Zugriff von externen Hosts konfigurieren. Du kannst dies durch Bearbeiten der Datei /opt/activemq/conf/jetty.xml konfigurieren:

nano /opt/activemq/conf/jetty.xml

Suche die folgende Zeile:

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

Ersetze sie durch die folgende Zeile:

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

Speichere und schließe die Datei und starte den Apache ActiveMQ-Dienst neu, um die Änderungen zu übernehmen:

systemctl restart activemq

Öffne nun deinen Webbrowser und rufe Apache ActiveMQ über die URL http://your-server-ip:8161:/admin auf . Du wirst nach einem Benutzernamen und einem Passwort gefragt (siehe unten):

Gib den Standard-Benutzernamen und das Standard-Passwort admin / admin ein und klicke auf die Schaltfläche Anmelden“. Auf dem folgenden Bildschirm solltest du das Apache ActiveMQ Dashboard sehen:

Fazit

Glückwunsch! Du hast Apache ActiveMQ erfolgreich auf Ubuntu 20.04 installiert. Jetzt kannst du mit der Entwicklung deiner ersten ActiveMQ Messaging-Anwendung beginnen.

Das könnte dich auch interessieren …