1、下载
网址:ActiveMQ
注意:新版本5.17起 要求jdk11, 5.16兼容jdk8, 所以,确保已经安装 java11 或以上的版本
这里安装较新版:6.0.1,已经安装了java17
如何安装jdk17,请详见我的另一篇文章:linux centos7 安装java17_Saindy5828的博客-CSDN博客
另外要注意的是:
如果安装的是6.0.1以下的版本,那么只有是以下的几个版本是安全的,其它的是有安全漏洞:
2、上传并解压tar 包,
tar -xvf apache-activemq-6.0.1-bin.tar.gz
3、解压后的文件移动到统一目录
mv apache-activemq-6.0.1 /usr/share/
以下是可选步骤,我不是内网,直接跳过此步骤,使用默认的127.0.0.1 的IP:
配置文件
进入目录:
cd /usr/share/apache-activemq-6.0.1/conf
修改conf/jetty.xml 中127.0.0.1 为ip 地址,如果是服务器需要配置内网地址或者0.0.0.0
4、进入目录:
cd /usr/share/apache-activemq-6.0.1/bin/linux-x86-64
5、启动:
./activemq start
查看启动状态:
./activemq statu
或:
ps aux|grep activemq
停止:
./atcivemq stop
另:
也可以把它加入环境变量中去
vim /etc/profile
在文件的末尾加入:
export PATH=/usr/share/apache-activemq-6.0.1/bin/linux-x86-64:$PATH
保存并退出后
使环境变量生效
source /etc/profile
如果启动成功后,可以通过域名 或 IP+端口的形式 进行访问
一:域名的形式,
在nginx的配置文件里,配置节点:
server { listen 80; server_name 你的域名.com; location / { proxy_pass http://localhost:8161; proxy_set_header x-forwarded-for $remote_addr; } error_page 404 /404.html; location = /40x.html { } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } # 强制跳转到Https访问 #rewrite ^(.*) https://$server_name$1 permanent; }
如果是IP + 端口的方式,要开放防火墙端口:
iptables -I INPUT -p tcp --dport 8161 -j ACCEPT
iptables -I INPUT -p tcp --dport 61616 -j ACCEPT
如果是阿里云等第三方云服务器,需要到安全组开放端口 8161和61616 两个端口
6、连接web可视化界面
http://ip地址:8161/admin/
域名:
http://nginx配置中的域名/admin
用户名,密码 admin admin
=======================设置密码部分===========================
activemq默认不启用密码,默认账号和密码是:system 和 manager
如果要打开认证,则在 安装目录下的conf文件夹内,修改activemq.xml文件:
进入配置目录:
cd /usr/share/apache-activemq-6.0.1/conf
打开配置文件:
vim activemq.xml
在broker的节点内,添加 plugus 的 simpleAuthenticationPlugin 标签:
<plugins>
<simpleAuthenticationPlugin>
<users>
<authenticationUser username="comando" password="commander123123" groups="users,admins"/>
</users>
</simpleAuthenticationPlugin>
</plugins>
这样,连接就要用 username 设置的用户名 和password设置的密码进行连接访问。
修改控制台访问队列的账号密码
在上面的修改了队列的账号密码账号,我们如果需要在控制台查看队列信息,需要修改默认的账号密码,也就是修改conf文件夹的credentials.properties 文件里面的用户名和密码。
保存,退出编辑
重启activemq
activemq restart