如何在CentOS 8上安装Apache ActiveMQ
欢迎阅读有关如何在CentOS 8上安装Apache ActiveMQ的今天指南。 ApacheActiveMQ是开源的,也是用Java编写的最受欢迎的多协议消息传递服务器。 Apache ActiveMQ允许您将消息从一个应用程序(发送者)发送到另一个(收件人/使用者)。该消息代理具有合理水平的功能,客户端库支持和可用的成熟文档。
Apache ActiveMQ的主要功能
主要的Apache ActiveMQ的概述如下所示。
- 各种支持 跨语言客户端和协议 来自Java,C,C ++,C#,Ruby,Perl,Python,PHP。
- 完全支持 企业整合模式 在JMS客户端和消息代理上
- 支持很多 进阶功能 喜欢 留言组, 虚拟目的地, 通配符 和 复合目的地
- 支持可插拔 传输协议 喜欢 在VM中,TCP,SSL,NIO,UDP,多播,JGroups和JXTA传输
- 完全支持JMS 1.1和J2EE 1.4,支持瞬态,持久性,事务性和XA消息传递
- 休息一下 提供用于消息传递的技术独立,语言独立,基于Web的API的API
- 非常快速的支持 持久的 使用JDBC和高性能期刊
- 专为高性能集群,客户端服务器和基于对等的通信而设计
- 阿贾克斯 支持使用纯DHTML的Web浏览器的Web流支持,从而使Web浏览器成为消息传递结构的一部分。
- CXF和Axis支持 轻松将ActiveMQ放到任何这些Web服务堆栈上以提供可靠的消息传递
- 可用作内存JMS提供程序。 JMS单元测试
在CentOS 8上安装Apache ActiveMQ
该博客文章旨在引导您完成在CentOS 8 Linux发行版上安装Apache ActiveMQ的过程。这些步骤很简单,不需要全面了解Linux。
步骤1:安装Java
首先在CentOS 8上安装Java。
在CentOS 8上安装Java 11
在CentOS 8上安装Java 8
步骤2:在CentOS 8上下载Apache ActiveMQ
来访 Apache ActiveMQ下载 用于获取有关Apache ActiveMQ的最新信息的页面。
wget https://www.apache.org/dist/activemq/5.15.11/apache-activemq-5.15.11-bin.tar.gz
解压缩下载的文件。
tar xvf apache-activemq-5.15.11-bin.tar.gz
移动创建的目录 /选择 路。
sudo mv apache-activemq-*/ /opt/apache-activemq
这是目录中文件的列表。
$ ls -lh /opt/apache-activemq/
total 18M
-rwxr-xr-x. 1 cloud-user cloud-user 18M Nov 20 19:59 activemq-all-5.15.11.jar
drwxrwxr-x. 5 cloud-user cloud-user 147 Mar 6 21:14 bin
drwxr-xr-x. 2 cloud-user cloud-user 4.0K Mar 6 21:14 conf
drwxr-xr-x. 2 cloud-user cloud-user 26 Mar 6 21:14 data
drwxr-xr-x. 2 cloud-user cloud-user 76 Mar 6 21:14 docs
drwxr-xr-x. 7 cloud-user cloud-user 71 Nov 20 20:25 examples
drwxr-xr-x. 6 cloud-user cloud-user 4.0K Mar 6 21:14 lib
-rw-r--r--. 1 cloud-user cloud-user 40K Nov 20 20:25 LICENSE
-rw-r--r--. 1 cloud-user cloud-user 3.3K Nov 20 20:25 NOTICE
-rw-r--r--. 1 cloud-user cloud-user 2.6K Nov 20 20:25 README.txt
drwxr-xr-x. 6 cloud-user cloud-user 95 Mar 6 21:14 webapps
drwxrwxr-x. 3 cloud-user cloud-user 18 Mar 6 21:14 webapps-demo
步骤3:在CentOS 8上创建一个Apache ActiveMQ Systemd单元
创建一个activemq用户以运行该服务。
sudo useradd activemq
设置目录权限。
sudo chown -R activemq:activemq /opt/apache-activemq/
创建一个Systemd单位文件来管理Apache ActiveMQ服务。
$ sudo vim /etc/systemd/system/apache-activemq.service
[Unit]
Description=Apache ActiveMQ Messaging Server
After=network.target
[Service]
Type=forking
User=activemq
Group=activemq
ExecStart=/opt/apache-activemq/bin/activemq start
ExecStop=/opt/apache-activemq/bin/activemq stop
[Install]
WantedBy=multi-user.target
重新加载可用的Systemd服务单元文件列表。
sudo systemctl daemon-reload
将SELinux置于宽松模式。
sudo setenforce 0
sudo sed -i 's/^SELINUX=.*/SELINUX=permissive/g' /etc/selinux/config
接下来,启动并启用服务。
sudo systemctl enable apache-activemq.service
sudo systemctl start apache-activemq.service
检查服务状态。
$ systemctl status apache-activemq.service
● apache-activemq.service - Apache ActiveMQ Messaging Server
Loaded: loaded (/etc/systemd/system/apache-activemq.service; enabled; vendor preset: disabled)
Active: active (running) since Fri 2020-03-06 22:06:09 EAT; 5s ago
Process: 4306 ExecStop=/opt/apache-activemq/bin/activemq stop (code=exited, status=1/FAILURE)
Process: 4680 ExecStart=/opt/apache-activemq/bin/activemq start (code=exited, status=0/SUCCESS)
Main PID: 4732 (java)
Tasks: 14 (limit: 11512)
Memory: 91.9M
CGroup: /system.slice/apache-activemq.service
└─4732 /usr/bin/java -Xms64M -Xmx1G -Djava.util.logging.config.file=logging.properties -Djava.security.auth.login.config=/opt/apache-activem>
Mar 06 22:06:09 cent8.novalocal systemd[1]: Starting Apache ActiveMQ Messaging Server...
Mar 06 22:06:09 cent8.novalocal activemq[4680]: INFO: Loading '/opt/apache-activemq//bin/env'
Mar 06 22:06:09 cent8.novalocal activemq[4680]: INFO: Using java '/usr/bin/java'
Mar 06 22:06:09 cent8.novalocal activemq[4680]: INFO: Starting - inspect logfiles specified in logging.properties and log4j.properties to get details
Mar 06 22:06:09 cent8.novalocal activemq[4680]: INFO: pidfile created : '/opt/apache-activemq//data/activemq.pid' (pid '4732')
Mar 06 22:06:09 cent8.novalocal systemd[1]: Started Apache ActiveMQ Messaging Server.
步骤4:更改管理员用户密码
将默认的管理员用户密码更改为唯一密码。
$ sudo vi /opt/apache-activemq/conf/jetty-realm.properties
该文件中的用户定义采用以下形式:
username: password [,rolename ...]
更新如下。
admin: MyAdminPassw0rd, admin
user: MyUserPassw0rd, user
更改后,重新启动apache-activemq服务。
sudo systemctl restart apache-activemq
验证身份验证是否正常并替换 password
使用您的密码:
curl --head --user admin:MyAdminPassw0rd http://localhost:8161/admin/xml/topics.jsp
输出:
HTTP/1.1 200 OK
Date: Fri, 06 Mar 2020 19:41:51 GMT
X-FRAME-OPTIONS: SAMEORIGIN
X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff
Set-Cookie: JSESSIONID=node0yqbxi60ra47n1fysq6zgx2lte0.node0; Path=/admin; HttpOnly
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Content-Type: text/xml;charset=iso-8859-1
Content-Length: 187
Server: Jetty(9.4.22.v20191022)
一 200 显示OK消息。一 401欺诈 该消息表示用户名或密码不正确。
步骤5:访问Apache ActiveMQ Web控制台
Web控制台在端口上运行 8161。打开服务器的IP地址/主机名,并访问ActiveMQ Web控制台。
http://192.168.122.48:8161/admin/
使用创建的用户名和密码进行身份验证。
将显示以下ActiveMQ Web界面。
参照 Apache ActiveMQ文档 欲了解更多信息。其他相关指南:
如何在RHEL 8 / CentOS 8上安装RabbitMQ
如何在Ubuntu 18.04 LTS上设置RabbitMQ集群
如何备份和还原RabbitMQ数据和配置