CentOS7下如何配置ActiveMQ

发布时间:2022-02-17 10:35:07 作者:iii
来源:亿速云 阅读:170
# CentOS7下如何配置ActiveMQ

## 前言

ActiveMQ作为Apache基金会下的开源消息中间件,以其高性能、多协议支持和跨平台特性被广泛应用于分布式系统中。本文将详细介绍在CentOS 7环境下从零开始配置ActiveMQ的完整流程,包含Java环境准备、安装配置、防火墙设置以及基础验证等关键步骤。

---

## 一、环境准备

### 1.1 系统要求
- CentOS 7.x 64位系统
- 至少2GB可用内存
- root或具有sudo权限的用户

### 1.2 安装Java环境
ActiveMQ 5.x需要Java 8及以上版本:

```bash
# 检查现有Java版本
java -version

# 若未安装则安装OpenJDK
sudo yum install -y java-1.8.0-openjdk-devel

# 设置环境变量(可选)
echo "export JAVA_HOME=$(dirname $(dirname $(readlink -f $(which java))))" >> ~/.bashrc
source ~/.bashrc

二、安装ActiveMQ

2.1 下载安装包

推荐使用官方二进制包:

# 创建安装目录
sudo mkdir -p /opt/activemq
cd /opt/activemq

# 下载最新稳定版(以5.16.3为例)
sudo wget https://archive.apache.org/dist/activemq/5.16.3/apache-activemq-5.16.3-bin.tar.gz

# 解压并重命名
sudo tar -zxvf apache-activemq-*.tar.gz
sudo mv apache-activemq-*/* .
sudo rm -rf apache-activemq-*

2.2 目录结构说明

bin/      # 启动/停止脚本
conf/     # 配置文件目录
data/     # 持久化数据
webapps/  # Web控制台

三、基础配置

3.1 修改监听地址

编辑conf/activemq.xml

<transportConnectors>
    <!-- 默认只监听本地,改为0.0.0.0 -->
    <transportConnector name="openwire" uri="tcp://0.0.0.0:61616"/>
</transportConnectors>

3.2 设置管理员密码

修改conf/jetty-realm.properties

# 格式: 用户名: 密码[,角色]
admin: Admin123, admin
user: User123, user

四、系统服务配置

4.1 创建systemd服务

新建/etc/systemd/system/activemq.service

[Unit]
Description=Apache ActiveMQ
After=network.target

[Service]
Type=forking
User=root
ExecStart=/opt/activemq/bin/activemq start
ExecStop=/opt/activemq/bin/activemq stop
Restart=on-abort

[Install]
WantedBy=multi-user.target

4.2 启动与开机自启

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

五、防火墙与安全配置

5.1 开放必要端口

# 开放Web控制台端口(8161)和消息端口(61616)
sudo firewall-cmd --permanent --add-port=8161/tcp
sudo firewall-cmd --permanent --add-port=61616/tcp
sudo firewall-cmd --reload

5.2 SELinux设置(如启用)

# 临时设置
sudo setsebool -P httpd_can_network_connect 1

# 或添加端口例外
sudo semanage port -a -t http_port_t -p tcp 8161

六、验证安装

6.1 检查服务状态

systemctl status activemq
# 正常应显示"Active: active (running)"

6.2 访问Web控制台

浏览器访问:

http://服务器IP:8161/admin

使用配置的用户名/密码登录(如admin/Admin123)

6.3 命令行测试

# 发送测试消息
/opt/activemq/bin/activemq producer --message "Hello ActiveMQ" --destination queue://TEST

# 消费消息
/opt/activemq/bin/activemq consumer --destination queue://TEST

七、常见问题解决

7.1 Java内存不足

修改bin/activemq脚本:

# 找到JVM参数设置
ACTIVEMQ_OPTS="-Xms512M -Xmx1G"

7.2 Web控制台无法访问

检查: 1. 防火墙状态 2. conf/jetty.xml中的监听IP 3. 日志文件data/activemq.log

7.3 持久化配置

默认使用KahaDB,如需更改存储方式需修改conf/activemq.xml中的persistenceAdapter配置。


结语

通过以上步骤,您已在CentOS 7上成功搭建了ActiveMQ服务。建议生产环境中: - 配置SSL加密传输 - 启用JMX监控 - 设置定期日志轮转

如需更高可用性,可后续研究ActiveMQ主从集群配置方案。 “`

注:实际运行时请根据具体需求调整: 1. 版本号(当前示例为5.16.3) 2. 内存参数 3. 认证密码等安全相关配置 4. 生产环境建议使用非root用户运行服务

推荐阅读:
  1. centos7下mongodb分片配置
  2. ActiveMQ 配置以及部署

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

centos activemq

上一篇:Linux常用命令pidof怎么用

下一篇:Linux常用命令printf怎么用

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》