CentOS7安裝RabbitMQ (安裝包安裝)


環境:

CentOS7

需要安裝:erlang 22.2  rabbitmq 3.8.3

參考:

rabbit官網地址:http://www.rabbitmq.com/which-erlang.html

rabbit文檔:http://www.rabbitmq.com/install-generic-unix.html

https://blog.csdn.net/weixin_41004350/article/details/83046842

入門教程:https://www.rabbitmq.com/getstarted.html

一、安裝erlang

rabbitmq是erlang語言編寫的,安裝rabbitmq之前,需要先安裝erlang,這里用erlang的源碼進行安裝,erlang安裝包官網下載地址:http://erlang.org/download/

網盤鏈接:提取碼:0k9j

在Rabbit中存在兩種消息確認模式,

自動確認:只要消息從隊列獲取,無論消費者獲取到消息后是否成功消費,都認為是消息成功消費
手動確認:消費從隊列中獲取消息后,服務器會將該消息處於不可用狀態,等待消費者反饋

改為手動確認方式只需改兩處,1.開啟監聽時將autoAck參數改為false,2.消息消費成功后返回確認

RabbitMQ提供了四種Exchange模式:direct(路由模式),fanout(發布訂閱模式),topic(通配符模式),header 。

1.下載安裝包(otp_src_22.2.tar.gz)然后上傳至Linux服務器

2.解壓:定位到安裝包所在目錄

tar -zxvf otp_src_22.2.tar.gz

3.安裝必要的環境# 在編譯之前,必須安裝以下依賴包

yum install -y make gcc gcc-c++ m4 openssl openssl-devel ncurses-devel unixODBC unixODBC-devel java java-devel

 4.編譯並安裝

cd otp_src_22.2 
./configure --prefix=/usr/local/erlang
make && make install 

 5.配置環境變量

#進入profile文件
vim /etc/profile

#添加如下內容
PATH=$PATH:/usr/local/erlang/bin

source /etc/profile

 6.安裝完成,直接輸入erl,得到如下圖得安裝成功

二、安裝rabbitmq

1.下載rabbitmq安裝包,我是通過xftp上傳到服務器的

2.解壓:定位到安裝包目錄

xz -d rabbitmq-server-generic-unix-3.8.3.tar.xz
tar xf rabbitmq-server-generic-unix-3.8.3.tar

3.安裝必要的環境

yum install python -y
yum install xmlto -y
yum install python-simplejson -y (這個我沒安裝成功)

4.配置# 添加環境變量

vi /etc/profile
------  添加如下內容  ------
PATH=$PATH:/usr/local/rabbitmq_server-3.8.3/sbin

#重載一下環境變量
source /etc/profile
#添加web管理插件
rabbitmq-plugins enable rabbitmq_management 

5.添加配置文件

默認rabbitmq是沒有配置文件的,需要去官方github上,復制一個配置文件模版過來,將配置文件復制到 /usr/local/rabbitmq_server-3.7.8/etc/rabbitmq/ 下,github地址:https://github.com/rabbitmq/rabbitmq-server/tree/master/docs

6.啟動rabbitmq服務(輸入rabbitmq-server detached后可能會出現【node with name "rabbit" already running】,可能是因為rabbitmq已經自動啟動了,可以用命令

sudo rabbitmqctl status查看下狀態
# 后台啟動rabbitmq服務
rabbitmq-server detached 

7.登錄管理插件 

啟用了rabbitmq的管理插件,會有一個web管理界面,默認監聽端口15672,將此端口在防火牆上打開,則可以訪問web界面(172.16.xx.xx:15672),默認用戶名guest密碼也是guest,登錄后報錯:User can only log in via localhost,那是因為默認是限制了guest用戶只能在本機登陸,可以修改配置文件rabbitmq.conf來取消這個限制。

 

 

 

 

 

 

 

 

 

 

 

登錄后的界面:

rabbitmq常用命令

查看狀態:
sudo rabbitmqctl status

停止rabbitmq:
sudo rabbitmqctl stop

啟動:
sudo rabbitmq-server detached

插件管理:

插件列表: rabbitmq-plugins list 

啟動插件: rabbitmq-plugins enable XXX   (XXX為插件名)

停用插件: rabbitmq-plugins disable XXX

用戶管理:

添加用戶: rabbitmqctl add_user username password

刪除用戶: rabbitmqctl delete_user username

修改密碼: rabbitmqctl change_password username newpassword

設置用戶角色: rabbitmqctl set_user_tags username tag

列出用戶: rabbitmqctl list_users

權限管理:

列出所有用戶權限: rabbitmqctl list_permissions

查看制定用戶權限: rabbitmqctl list_user_permissions username

清除用戶權限: rabbitmqctl clear_permissions [-p vhostpath] username

設置用戶權限: rabbitmqctl set_permissions [-p vhostpath] username conf write read

                          conf: 一個正則匹配哪些資源能被該用戶訪問

                          write:一個正則匹配哪些資源能被該用戶寫入

                          read:一個正則匹配哪些資源能被該用戶讀取


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM