實作架設 Server ,從套件庫下載安裝,可以大幅地節省工程師開發與部署的時間,使用 yum 來達成,這是最簡單的方法。
Table of Contents
Toggle功能簡介
RabbitMQ 是一個訊息佇列服務,提供一個非同步通訊機制,負責處理網路通訊,當網路連接發生不可用狀況,消息會被暫存於佇列當中,網路暢通的時候再處理請求,一般用來解決應用解耦,非同步消息等,實現高性能,高可用,可伸縮和最終一致性架構。
主機架構
建置單台的主機架構。
Node | IP | Port |
Master | 192.168.1.100 | 5672 |
Web | 192.168.1.100 | 15672 |
安裝套件
CentOS 7 Install RabbitMQ standalone
Install Erlang
新建檔案,建立套件庫資訊。
vim /etc/yum.repos.d/rabbitmq_erlang.repo
[rabbitmq_erlang]
name=rabbitmq_erlang
baseurl=https://packagecloud.io/rabbitmq/erlang/el/7/$basearch
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=https://packagecloud.io/rabbitmq/erlang/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300
[rabbitmq_erlang-source]
name=rabbitmq_erlang-source
baseurl=https://packagecloud.io/rabbitmq/erlang/el/7/SRPMS
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=https://packagecloud.io/rabbitmq/erlang/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300
從套件庫,使用 yum 命令安裝。
yum -y install erlang
Install RabbitMQ
新建檔案,建立套件庫資訊。
vim /etc/yum.repos.d/rabbitmq_rabbitmq-server.repo
[rabbitmq_rabbitmq-server]
name=rabbitmq_rabbitmq-server
baseurl=https://packagecloud.io/rabbitmq/rabbitmq-server/el/7/$basearch
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=https://packagecloud.io/rabbitmq/rabbitmq-server/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300
[rabbitmq_rabbitmq-server-source]
name=rabbitmq_rabbitmq-server-source
baseurl=https://packagecloud.io/rabbitmq/rabbitmq-server/el/7/SRPMS
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=https://packagecloud.io/rabbitmq/rabbitmq-server/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300
從套件庫,使用 yum 命令安裝。
yum install rabbitmq-server
防火牆設定
開通防火牆
使用 firewall-cmd 命令來開通防火牆。
firewall-cmd --permanent --add-port=5672
firewall-cmd --permanent --add-port=15672
重載防火牆
使用 firewall-cmd 命令來重載防火牆,立即生效。
firewall-cmd --reload
運行管理
啟動服務
安裝完成後,並不會自動啟動服務,使用 systemctl start 命令來啟動服務。
systemctl start rabbitmq-server
開機啟動
實現主機重開時,可以自動啟動服務,使用 systemctl enable 命令來啟用開機啟動。
systemctl enable rabbitmq-server
停止服務
啟動服務後,使用 systemctl stop 命令終止服務運行。
systemctl stop rabbitmq-server
狀態驗證
Install RabbitMQ CentOS 啟動服務後,使用 systemctl status 命令來查看服務狀況。
systemctl status rabbitmq-server
● rabbitmq-server.service - rabbitmq-server
Loaded: loaded (/usr/lib/systemd/system/rabbitmq-server.service; enabled; vendor preset: disabled)
Active: active (running) since Wed 2022-03-02 22:01:12 CST; 3 weeks 1 days ago
Docs: man:rabbitmq-server.service(8)
Main PID: 19541 (rabbitmq-server)
啟用插件
啟用管理後台。
rabbitmq-plugins enable rabbitmq_management
systemctl restart rabbitmq-server
建立帳號
安裝後預設並沒有使用者可登入,建立使用者及權限。
rabbitmqctl add_user admin password
rabbitmqctl set_user_tags admin administrator
rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"
測試網址
http://localhost:15672
帳號: admin
密碼: password
此頁面表示服務工作正常。它還包括有關重要服務文件和目錄位置的一些基本訊息,該服務已安裝並運行,現在可以登入管理頁面來管理該服務。
啟用 STOMP 插件 (選項)
支援 STOMP。
rabbitmq-plugins enable rabbitmq_stomp
rabbitmq-plugins enable rabbitmq_web_stomp
rabbitmq-plugins enable rabbitmq_web_stomp_examples
心得分享
Centos Install RabbitMQ 快速安裝後,便於個人電腦、筆電在開發研究或測試時使用,省略複雜的設定,所以沒有參數需要調整,簡單快速建置就能使用服務,除此之外還有其他平台: