type
status
date
slug
summary
tags
category
icon
password
准备工作
安装Java环境
1 上传jdk到服务器目标目录
2 解压jdk
3 配置环境变量
写入下列内容
使该文件生效
查看环境是否配置好
配置成功如下图
安装ActiveMQ
1 上传ActiveMQ安装包到服务器目标目录
2 解压文件
3 配置用户
去conf文件下
3.1 添加用户
打开编辑groups.properties 添加users用户组
添加以下内容
打开编辑users.properties 添加user用户及密码
添加以下内容
3.2 STOMP客户端权限控制
编辑activemq.xml
3.2.1 基于JAAS进行用户和权限配置
ActiveMQ的login.config默认配置如下
该配置与jaasAuthenticationPlugin标签的configuration属性形成映射,使STOMP客户端账户与WEB端账户保持一致
在标签内添加以下内容
3.2.2 基于simpleAuthenticationPlugin进行用户和权限配置
同样是在标签内添加,STOMP客户端账户可以与WEB端账户不一致
3.2.3 浅谈JAAS (Java Authentication and Authorization Service)和simpleAuthenticationPlugin
两者都是对角色(用户组)的权限配置,从而控制用户的权限。simpleAuthenticationPlugin插件适用于比较简单用户较少的认证情况,并且用户和密码都是通过明文写入在activemq.xml中。JAAS是一种认证和授权机制,可以通过不同的数据源来获取用户和权限信息,支持多种登陆模块。从两者的定位看,就可以明确simpleAuthenticationPlugin是ActiveMQ控制用户权限的一种实现,而JAAS是符合ActiveMQ用户权限控制的一中抽象规则,所有可以片面的得出JAAS具备扩张性强及灵活的特点。
4 运行远程访问
4.1 ActiveMQ配置远程访问
编辑jetty.xml
找到id为jettyPort的标签,如下
将127.0.0.1改为
0.0.0.0
4.2 云服务器配置安全组
在网络于安全的安全组入方向添加如下规则,保证本地正常访问云端MQ服务。
5 启动ActiveMQ
5.1 成功运行进入到bin目录
访问http://yourIp:8161/admin/topics.jsp查看是否运行成功,成功则如下图输入users.properties中配置的账户密码便可登陆到Web管理平台
5.2 排查运行失败
如果页面无法访问的话,在服务器终端ActiveMQ的bin目录下输入
就像我一开始配置activemq.xml的时候漏了一个标签,导致运行失败,通过查找日志发现问题并解决
5.3 暂停运行
6 开机自启动
6.1 创建执行用户
创建用户组
创建用户mquser,并添加到activemq用户组下,并限定该用户用于特定服务的用户
将/opt/ActiveMq/apache-activemq-6.1.2目录的所有权赋予给新建的mquser
6.2 编写自启动脚本
在/etc/systemd/system/目录下创建我们的自启动服务
在文件内容写入以下内容,该服务在网络服务启动后才启动(After=network.target),分别配置启动MQ服务命令、用户及用户组。在服务器因异常退出(Restart=on-failure)的时候会尝试5次(RestartSec=5)重启。
重新加载systemd配置(注:新建或者修改都需要重新加载)
设置该项自启动服务在系统启动时启动
验证服务状态
至此,CentOS7.6安装ActiveMQ教程结束,从安装->配置->自启动服务。撒花🎉🎉
- 作者:木卷卷
- 链接:https://www.mushe.blog//article/12383a4c-fbad-8020-904d-c9e79905d2e0
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。