如何在CentOS7上安装并配置ActiveMQ服务?

ActiveMQ 是 Apache 软件基金会旗下一个功能强大、广受欢迎的开源消息中间件,它实现了 Java 消息服务(JMS)1.1 规范,并提供多种跨语言客户端和协议支持,在稳定可靠的 CentOS 7 服务器上部署 ActiveMQ,能够为分布式系统提供高效、可扩展的消息通信能力,本文将详细介绍在 CentOS 7 环境下安装、配置和管理 ActiveMQ 的完整流程。

如何在CentOS7上安装并配置ActiveMQ服务?

环境准备

在开始安装之前,必须确保 CentOS 7 系统已安装 Java 运行环境(JRE)或 Java 开发工具包(JDK),因为 ActiveMQ 是基于 Java 构建的,推荐使用 JDK 1.8 或更高版本,可以通过以下命令检查 Java 是否已安装及其版本:

java -version

如果系统提示未找到命令,则需要先安装 Java,可以使用 yum 命令进行安装:

sudo yum install -y java-1.8.0-openjdk-devel

确保系统已安装 wget 工具,用于下载 ActiveMQ 安装包。

下载与安装 ActiveMQ

  1. 下载安装包
    访问 ActiveMQ 官方网站或直接使用 wget 命令下载最新的稳定版,以 ActiveMQ 5.15.9 为例:

    wget http://archive.apache.org/dist/activemq/5.15.9/apache-activemq-5.15.9-bin.tar.gz
  2. 解压与部署
    将下载的压缩包解压到 /opt 目录下,这是一个存放可选第三方软件的常用目录。

    sudo tar -zxvf apache-activemq-5.15.9-bin.tar.gz -C /opt

    为了便于后续版本升级和管理,可以创建一个符号链接:

    sudo ln -s /opt/apache-activemq-5.15.9 /opt/activemq

配置防火墙

CentOS 7 默认使用 firewalld 作为防火墙管理工具,ActiveMQ 默认需要开放两个主要端口:8161(Web 控制台)和 61616(消息代理服务的主要通信端口),执行以下命令开放这些端口:

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

启动与管理 ActiveMQ

ActiveMQ 的启动脚本位于其 bin 目录中。

  • 启动 ActiveMQ:

    如何在CentOS7上安装并配置ActiveMQ服务?

    /opt/activemq/bin/activemq start
  • 检查运行状态:

    /opt/activemq/bin/activemq status

    或者通过查看进程:

    ps -ef | grep activemq
  • 停止 ActiveMQ:

    /opt/activemq/bin/activemq stop

访问 Web 管理控制台

启动成功后,可以通过浏览器访问 ActiveMQ 的 Web 管理控制台,在浏览器地址栏输入:

http://<您的服务器IP地址>:8161/admin

系统会弹出身份验证窗口,默认的用户名和密码均为 admin,登录后,您可以在直观的界面中监控队列、主题、连接和消息等状态。

配置为系统服务

为了实现 ActiveMQ 服务的开机自启和更便捷的管理,建议将其配置为 systemd 服务。

  1. 创建服务文件
    使用 vim 或其他编辑器创建服务文件:

    sudo vim /etc/systemd/system/activemq.service
  2. 填入以下内容

    如何在CentOS7上安装并配置ActiveMQ服务?

    [Unit]
    Description=ActiveMQ Service
    After=network.target
    [Service]
    Type=forking
    User=root
    Group=root
    ExecStart=/opt/activemq/bin/activemq start
    ExecStop=/opt/activemq/bin/activemq stop
    ExecStatus=/opt/activemq/bin/activemq status
    Restart=on-abort
    TimeoutSec=300
    [Install]
    WantedBy=multi-user.target
  3. 启用并启动服务

    sudo systemctl daemon-reload
    sudo systemctl enable activemq
    sudo systemctl start activemq

    之后,就可以使用 systemctl status activemqsystemctl stop activemq 等命令来管理服务了。


相关问答FAQs

问题1:如何修改 ActiveMQ Web 控制台的管理员密码?

解答: 默认的管理员密码存在安全风险,应立即修改,密码配置文件位于 ActiveMQ 安装目录的 conf 子目录下,文件名为 jetty-realm.properties,使用编辑器打开此文件:
sudo vim /opt/activemq/conf/jetty-realm.properties格式为 用户名: 密码, 角色,要将 admin 用户的密码修改为 your_new_password,可以修改为:
admin: your_new_password, admin
保存文件后,重启 ActiveMQ 服务即可使新密码生效。

问题2:ActiveMQ 默认还使用了哪些其他重要端口?

解答: 除了 Web 控制台(8161)和核心消息协议(61616)外,ActiveMQ 还默认监听其他端口以支持不同的通信协议,下表列出了部分常用端口:

端口号 协议 描述
61616 TCP OpenWire 协议,默认的客户端连接端口
8161 HTTP Web 控制台和 REST API 端口
61613 STOMP STOMP 协议客户端连接端口
5672 AMQP AMQP 1.0 协议客户端连接端口
61614 MQTT MQTT 协议客户端连接端口

在配置防火墙或网络策略时,应根据实际使用的协议开放相应的端口。

【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!

(0)
热舞的头像热舞
上一篇 2025-10-05 00:32
下一篇 2025-10-05 00:33

相关推荐

  • CentOS系统下U盘文件名乱码问题,到底应该如何彻底解决?

    在 CentOS 系统中使用 U 盘时,我们有时会遇到一个令人头疼的问题:插入 U 盘后,打开查看,里面的中文文件名或文件夹名变成了一堆无法阅读的乱码,如问号、方块或其他奇怪的符号,这种现象不仅影响了工作效率,也给数据管理带来了困扰,本文将深入探讨这一问题的根源,并提供一系列从临时到永久、从简单到深入的解决方案……

    2025-10-06
    005
  • CentOS连接光猫后,应该如何配置网络才能正常上网?

    在现代网络环境中,将服务器直接连接到光猫以获取公网IP地址,是搭建网站、游戏服务器或其他网络服务的常见需求,对于稳定且功能强大的CentOS系统而言,实现这一连接主要有两种主流方式,具体取决于光猫的工作模式,本文将详细介绍如何在CentOS系统中连接光猫,涵盖配置步骤、注意事项及常见问题,准备工作与网络模式确认……

    2025-10-28
    003
  • 分布式优化_优化类

    在分布式优化领域,优化类算法是核心。它们旨在协调多个计算节点,以高效、可扩展的方式解决大规模优化问题,如机器学习模型训练和资源分配。

    2024-07-05
    005
  • 服务器与客户端的距离如何影响域名注册服务?

    服务器与客户端之间的距离取决于网络架构和物理位置,而域名注册服务则涉及将易于记忆的域名关联到数字IP地址的过程。这两者在互联网结构中扮演不同的角色:一个是物理连接的问题,另一个是网络资源定位的服务。

    2024-07-26
    005

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

广告合作

QQ:14239236

在线咨询: QQ交谈

邮件:asy@cxas.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信