网站搜索

如何在 CentOS/RHEL 8 上安装 Apache ActiveMQ


ActiveMQ 是一种流行的、开源的、多协议的面向消息的中间件 (MOM) 实现,具有用 Java 编写的企业功能,使用在两个应用程序或应用程序内的两个组件之间发送消息。

它支持多种跨语言客户端,包括 Java、C、C++、C#、Ruby、Perl、Python、PHP 以及 OpenWire、STOMP、MQTT、AMQP、REST 和 WebSockets 等传输协议。

另请阅读:如何在 Debian 10 上安装 Apache ActiveMQ

它的一些用例包括事务消息传递、集群和通用异步消息传递模型、Web 数据流、使用 HTTP 进行消息传递的 RESTful API 等等。

在本文中,我们将向您解释如何在 CentOS 8RHEL 8 Linux 发行版上安装最新版本的 Apache ActiveMQ

在 CentOS 和 RHEL 8 上安装 Apache ActiveMQ

要安装ActiveMQ,您的系统必须在服务器上安装Java。如果未安装 Java,您可以使用我们的如何在 CentOS 和 RHEL 8 上安装 Java 指南将其安装在您的系统上。

安装 Java 后,您可以进一步下载最新版本的 ActiveMQ 或使用以下 wget 命令获取源包,如图所示。

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

现在使用 tar 命令提取存档文件,并使用 cd 命令将其移动到提取的目录中,如图所示。

tar zxvf apache-activemq-5.16.4-bin.tar.gz
cd apache-activemq-5.16.4

现在您的 ActiveMQ 软件包应该安装在 /opt 目录中,您可以使用 ls 命令查看其内容。

ls -l 

从上面的输出中,您需要注意一些关键目录,它们包括以下内容:

  • bin – 存储二进制文件以及其他相关文件。
  • conf – 包含配置文件:主配置文件activemq.xml,以XML格式编写。
  • 数据 – 存储 PID 文件以及日志文件。
  • docs – 包含文档文件。
  • lib – 存储库文件。
  • webapps – 包含网络界面和管理控制台文件。

在 Systemd 下将 ActiveMQ 作为服务运行

要将ActiveMQ作为服务运行,您需要在名为activemq的用户下创建一个ActiveMQ服务单元文件,因此首先使用以下命令创建用户useradd 命令如图所示。

useradd activemq

接下来,对ActiveMQ安装目录设置正确的权限,其所有内容都属于新创建的用户和组。此外,确认新的权限设置如下。

chown -R activemq:activemq /opt/apache-activemq-5.16.4
ls -l /opt/apache-activemq-5.16.4/

现在,在 /etc/systemd/system/ 目录下为 ActiveMQ 创建一个名为 activemq.service 的服务单元文件。

vi /etc/systemd/system/activemq.service

activemq.service 文件中添加以下配置。

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

[Service]
Type=forking

User=activemq
Group=activemq

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


[Install]
WantedBy=multi-user.target

保存文件并关闭它。然后使用以下命令重新加载 systemd 管理器配置以读取新创建的服务。

systemctl daemon-reload

接下来就可以使用systemctl命令来启动了。启用并检查 Apache ActiveMQ 服务的状态,如图所示。

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

默认情况下,ActiveMQ 守护程序侦听端口 61616,您可以使用 ss 实用程序确认该端口,如下所示。

ss -ltpn 

在访问 ActiveMQ Web 控制台之前,如果您正在运行 firewalld 服务(默认情况下),则需要打开端口 8161 > Web 控制台使用 firewall-cmd 工具在防火墙中侦听,如图所示。

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

测试 ActiveMQ 安装

ActiveMQ Web 控制台用于通过 Web 浏览器管理和监控 ActiveMQ。要访问它,请打开 Web 浏览器并将其指向以下 URL:

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

您将登陆以下网络界面。

要开始实际管理 ActiveMQ,请单击“管理 ActiveMQ 代理”链接登录管理 Web 控制台。或者,以下 URL 也将直接带您进入管理 Web 控制台登录界面。

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

然后使用默认用户名admin和密码admin登录。

以下屏幕截图显示了 Web 控制台仪表板,其中包含用于管理和监控 ActiveMQ 的各种功能。

概括

在本文中,我们解释了如何在 CentOS 8RHEL 8 Linux 发行版上安装最新版本的 Apache ActiveMQ。如果您想了解更多信息,尤其是如何使用 Apache ActiveMQ,请阅读 ActiveMQ 5 官方文档。不要忘记通过下面的评论表向我们发送您的反馈。