一、什麼是rabbitMq
RabbitMQ是一個消息中間件,使用Erlang開發語言(Erlang開發語言主要用于電話交換機等開發,自帶高并發光環)
二、安裝前準備(以下安裝環境是針對我自己的系統環境的,如需下載下傳安裝需比對自己的系統版本進行安裝)
注意:複制我的連結通路後可以選擇自己需要的版本下載下傳,如果直接在文章中點選超連結下載下傳的是我使用的版本,該版本對應的centOs7版linux系統可用!
1、erlang安裝包,就比如使用java開發的軟體需要安裝jdk一樣,這裡我們也需要準備語言安裝包
下載下傳位址:https://github.com/rabbitmq/erlang-rpm
2、下載下傳socat運作環境(socat是一個多功能的網絡工具,名字來由是” Socket CAT”,可以看作是netcat的N
倍加強版,socat的官方網站:http://www.dest-unreach.org/socat/ 。 )
下載下傳位址:http://mirror.centos.org/centos/7/os/x86_64/Packages
3、下載下傳rabbitMq
下載下傳位址:https://github.com/rabbitmq/rabbitmq-server/releases
将下載下傳好的三個壓縮包放在linux相應的檔案夾下(自定義的檔案夾)
以上是官方下載下傳位址,如果要友善也可以使用我這裡使用的安裝包:
下載下傳位址://download.csdn.net/download/weixin_45417573/12104429
二、安裝
1、安裝erlang
在存放erlang壓縮包的目錄下執行以下指令,完成erlang的安裝
rpm -ivh erlang-21.2.6-1.el7.x86_64.rpm --force --nodeps

2、安裝socat
執行以下指令安裝socat
rpm -ivh socat-1.7.3.2-2.el7.x86_64.rpm
3、安裝rabbitMq
執行以下指令安裝rabbitMq
rpm -ivh rabbitmq-server-3.7.13-1.el7.noarch.rpm
三、測試
這裡隻介紹啟動停止等相關指令,根據指令測試rabbitMq是否安裝成功,能否正常使用
1.開機自啟動指令:
chkconfig rabbitmq-server on
2.啟動rabbitmq指令:
service rabbitmq-server start
3.停止rabbitmq的指令:
service rabbitmq-server stop
4.啟動後可以使用以下指令檢查rabbitmq是否成功安裝
ps -ef|grep rabbit
5.另外,rabbitmq還提供給我們管理界面,但是要通過指令開啟:
rabbitmq-plugins enable rabbitmq_management
6.除了開啟管理界面還需要打開防火牆,否則防火牆攔截後我們是無法正常連接配接的:
firewall-cmd --zone=public --add-port=15672/tcp --permanent
firewall-cmd --zone=public --add-port=5672/tcp --permanent
firewall-cmd --reload
7.接下來我們就可以通過網頁通路rabbitMq提供給我們的管理界面了,rabbitMq的管理頁面預設端口是15672,而我們實際使用時5672端口,這裡就不用我說怎麼通路了吧……浏覽器出入ip:15672通路即可
但是,當我們通路後發現需要使用者登入才能使用,就像……這樣:
好的,那讓我們在回到剛才的linux系統,為rabbitmq建立使用者:
rabbitmqctl add_user admin admin
将該使用者設定成超級管理者:
rabbitmqctl set_user_tags admin administrator
接下來我們就可以通過admin使用者登入管理界面了,就像這樣:
到這裡,linux版rabbitmq就宣布安裝成功了!但是僅僅是安裝成功了,我們在後端程式中還是無法通路rabbitMq的,有可能出現connection closed的異常,那麼這裡我們需要通過管理界面開啟我們admin使用者的通路權限,就像這樣:
點選admin,看到我們現在有兩個使用者,(guest是預設使用者)我們可以看到admin使用者是沒有通路權限的,下面選擇admin使用者出現以下畫面:
點選 setpermission按鈕,看到黃色警告部分消失就說明權限添加成功了,接下來就可以通過我們的java代碼通路rabbitMq了!
注意,劃重點!!!!: 按照以上安裝教程一步一步安裝,但是不排除安裝後還是不能正常使用,或者是在設定使用者名的步驟就出現了錯誤,錯誤内容如下(這個錯誤可以通過指令查詢狀态也會出現):
如果出現以上錯誤,其實很簡單,大家可以看一下這句錯誤:
Error: unable to perform an operation on node '[email protected]'. Please see diagnostics information and
重點是這裡的
[email protected]
,隻需要把bogon添加到hosts檔案中映射到本地ip即可;步驟如下:
以管理者權限打開hosts檔案
sudo vi /etc/hosts
如圖,隻需要把bogon追加到映射後面即可