[CentOS7環境搭建](七)安裝RabbitMQ

參考鏈接https://blog.csdn.net/qq_22075041/article/details/78855708

安裝Erlang

因爲RabbitMQ是以Erlang語言編寫的,所以我們首先需要安裝Erlang

  1. 訪問官網:http://www.erlang.org/downloads
  2. 下載源碼包,如下所示:
    這裏寫圖片描述
  3. 使用WinSCP上傳到CentOS7服務器上的/usr/local目錄
  4. 執行以下命令
yum install ncurses-devel
cd /usr/local
tar xf opt_src_20.3.tar.gz
cd otp_src_20.3
./configure --prefix=/usr/local/erlang20 --without-javac
make
make install
//檢查是否安裝成功
/usr/local/erlang20/bin
./erl  //進入命令行說明安裝成功

安裝RabbitMQ

1.解壓安裝包

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

2.安裝依賴

yum install python -y
yum install xmlto -y
yum install python-simplejson -y

3 . 將RabbitMQ文件夾重命名爲rabbitmq
4 . 編輯環境變量 vi /etc/profile

export PATH=$PATH:/usr/local/erlang20/bin:/usr/local/rabbitmq/sbin

5 . 使環境變量生效:source /etc/profile

運行RabbitMQ

  • 啓動RabbitMQ
cd /usr/local/rabbitmq/sbin
./rabbitmq-server

也可以直接執行rabbitmq-server,因爲我們配置了環境變量。
如下圖所示,表示RabbitMQ已經啓動成功。
這裏寫圖片描述

  • 關閉RabbitMQ
./rabbitmqctl stop

RabbitMQ的一些基本操作

$ sudo chkconfig rabbitmq-server on  # 添加開機啓動RabbitMQ服務
$ sudo /sbin/service rabbitmq-server start # 啓動服務
$ sudo /sbin/service rabbitmq-server status  # 查看服務狀態
$ sudo /sbin/service rabbitmq-server stop   # 停止服務

# 查看當前所有用戶
$ sudo rabbitmqctl list_users

# 查看默認guest用戶的權限
$ sudo rabbitmqctl list_user_permissions guest

# 由於RabbitMQ默認的賬號用戶名和密碼都是guest。爲了安全起見, 先刪掉默認用戶
$ sudo rabbitmqctl delete_user guest

# 添加新用戶
$ sudo rabbitmqctl add_user username password

# 設置用戶tag
$ sudo rabbitmqctl set_user_tags username administrator

# 賦予用戶默認vhost的全部操作權限
$ sudo rabbitmqctl set_permissions -p / username ".*" ".*" ".*"

# 查看用戶的權限
$ sudo rabbitmqctl list_user_permissions username

更多關於rabbitmqctl的使用,可以參考幫助手冊。

開啓web管理接口

如果只從命令行操作RabbitMQ,多少有點不方便。幸好RabbitMQ自帶了web管理界面,只需要啓動插件便可以使用。

$ sudo rabbitmq-plugins enable rabbitmq_management

然後通過瀏覽器訪問

http://localhost:15672

輸入用戶名和密碼訪問web管理界面了(guest,guest)。
這裏寫圖片描述

開啓用戶遠程訪問

默認情況下,RabbitMQ的默認的guest用戶只允許本機訪問,否則會報錯:登錄rabbitmq報錯User can only log in via localhost 。如果想讓guest用戶能夠遠程訪問的話,只需要將/rabbitmq/etc/rabbitmq/rabbitmq.conf配置文件中的loopback_users列表置爲空即可,如下:

{loopback_users, []}

如果沒有該配置文件,則新建一個:

vi rabbitmq.config

編輯內容如下:

[{rabbit, [{loopback_users, []}]}].

這裏的意思是開放使用,rabbitmq默認創建的用戶guest,密碼也是guest,這個用戶默認只能是本機訪問,localhost或者127.0.0.1,從外部訪問需要添加上面的配置。

保存配置後重啓服務:

service rabbitmq-server stop
service rabbitmq-server start

另外關於新添加的用戶,直接就可以從遠程訪問的,如果想讓新添加的用戶只能本地訪問,可以將用戶名添加到上面的列表, 如只允許admin用戶本機訪問。

{loopback_users, ["admin"]}

更新配置後,別忘了重啓服務哦!

開放端口5672和15672端口

個人學習的話,建議直接關閉防火牆。

/sbin/iptables -I INPUT -p tcp --dport 5672 -j ACCEPT  
/sbin/iptables -I INPUT -p tcp --dport 15672 -j ACCEPT 

登錄後出現下圖,表示完美成功。
這裏寫圖片描述

發佈了134 篇原創文章 · 獲贊 242 · 訪問量 57萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章