如何在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界面。

如何在CentOS 8上安裝Apache ActiveMQ

參照 Apache ActiveMQ文檔 欲了解更多信息。其他相關指南:

如何在RHEL 8 / CentOS 8上安裝RabbitMQ

如何在Ubuntu 18.04 LTS上設置RabbitMQ集群

如何備份和還原RabbitMQ數據和配置

Sidebar