安装前准备
在CentOS系统上部署ActiveMQ前,需确保满足以下条件:

1、操作系统:CentOS 7或更高版本(推荐CentOS 8)。
2、Java环境:ActiveMQ依赖Java运行,需提前安装JDK 1.8或更高版本。
3、网络配置:开放默认端口61616(消息传输)和8161(管理控制台)。
4、权限管理:建议使用非root用户操作,避免权限风险。
步骤一:安装Java环境
若系统中未安装Java,可通过以下命令快速部署:

- 安装OpenJDK 11
- sudo yum install -y java-11-openjdk-devel
- 验证安装
- java -version
输出应显示类似OpenJDK 11.0.xx
的信息,若需配置环境变量,可编辑/etc/profile
文件,添加:
- export JAVA_HOME=/usr/lib/jvm/java-11-openjdk
- export PATH=$PATH:$JAVA_HOME/bin
执行source /etc/profile
使配置生效。
步骤二:下载并解压ActiveMQ
访问apache官网获取最新稳定版ActiveMQ(例如5.17.5):
- 下载安装包
- wget https://archive.apache.org/dist/activemq/5.17.5/apache-activemq-5.17.5-bin.tar.gz
- 解压至目标目录
- tar -zxvf apache-activemq-5.17.5-bin.tar.gz -C /opt
- 重命名目录(可选)
- sudo mv /opt/apache-activemq-5.17.5 /opt/activemq
步骤三:配置ActiveMQ
进入安装目录,修改配置文件以适配需求:

- cd /opt/activemq/conf
- 编辑主配置文件
- vi activemq.xml
根据实际需求调整以下参数:
连接端口:搜索transportConnectors
标签,确认61616端口是否启用。
内存限制:在systemUsage
标签中,可调整内存使用上限(例如设置为2GB):
- <systemUsage>
- <memoryUsage>
- <memoryUsage limit="2 gb"/>
- </memoryUsage>
- </systemUsage>
步骤四:启动与停止服务
通过脚本直接启动ActiveMQ:
- 进入可执行目录
- cd /opt/activemq/bin
- 启动服务(默认后台运行)
- ./activemq start
- 查看状态
- ./activemq status
- 停止服务
- ./activemq stop
若需以守护进程方式管理,可创建Systemd服务文件:
- sudo vi /etc/systemd/system/activemq.service
添加以下内容:
- [Unit]
- Description=ActiveMQ Service
- After=network.target
- [Service]
- Type=forking
- User=activemq
- ExecStart=/opt/activemq/bin/activemq start
- ExecStop=/opt/activemq/bin/activemq stop
- [Install]
- WantedBy=multi-user.target
执行命令启用服务:
- sudo systemctl daemon-reload
- sudo systemctl start activemq
- sudo systemctl enable activemq
步骤五:验证安装
1、检查进程:
- ps -ef | grep activemq
若看到/opt/activemq
相关进程,则说明启动成功。
2、访问管理控制台:
浏览器输入http://服务器IP:8161/admin
,默认账号密码为admin/admin
,若能正常登录,表示服务已就绪。
3、端口监听检测:
- netstat -tunlp | grep 61616
- netstat -tunlp | grep 8161
常见问题处理
1、端口冲突:若61616或8161端口被占用,需修改activemq.xml
和jetty.xml
中的端口配置。
2、权限不足:若使用非root用户运行,需确保对/opt/activemq
目录有读写权限。
3、控制台无法访问:检查防火墙设置,开放端口或关闭防火墙(仅测试环境建议):
- sudo firewall-cmd --permanent --add-port=8161/tcp
- sudo firewall-cmd --reload
4、Java版本不兼容:若启动报错,可通过java -version
确认版本,必要时升级JDK。
观点
ActiveMQ作为成熟的消息中间件,在分布式系统中承担着解耦与异步通信的核心作用,其安装过程虽依赖Java环境,但通过标准化配置可快速投入生产,实际部署时,建议结合业务需求调整内存与线程参数,并定期监控日志(位于/opt/activemq/data/activemq.log
)以保障稳定性,对于高并发场景,可进一步探索集群化部署方案,提升容灾能力。