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.