rabbitmq在Linux中的安裝與啟動


rabbitmq在Linux中的安裝與啟動

版權聲明:本文為博主原創文章,未經博主允許不得轉載。 https://blog.csdn.net/a909422229/article/details/80690372

安裝Erlang

由於RabbitMQ依賴Erlang, 所以需要先安裝Erlang。

Erlang的安裝方式大概有兩種:

  1. 從Erlang Solution安裝(推薦)

    1.  
      # 添加erlang solutions源
    2.  
      $ wget https://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm
    3.  
      $ sudo rpm -Uvh erlang-solutions- 1.0-1.noarch.rpm
    4.  
       
    5.  
      $ sudo yum install erlang
  2. 從EPEL源安裝(這種方式安裝的Erlang版本可能不是最新的,有時候不能滿足RabbitMQ需要的最低版本)

    1.  
      # 啟動EPEL源
    2.  
      $ sudo yum install epel-release
    3.  
      # 安裝erlang
    4.  
      $ sudo yum install erlang

完成后安裝RabbitMQ:

先下載rpm:

wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.6/rabbitmq-server-3.6.6-1.el7.noarch.rpm

下載完成后安裝:

yum install rabbitmq-server-3.6.6-1.el7.noarch.rpm 

 

 
          

安裝時如果遇到下面的依賴錯誤

  1.  
    Error: Package: socat-1.7.2.3-1.el6.x86_64 (epel)
  2.  
    Requires: libreadline.so.5()(64bit)

可以嘗試先執行

$ sudo yum install socat 

關於RabbitMQ的一些基本操作

  1.  
    $ sudo chkconfig rabbitmq-server on # 添加開機啟動RabbitMQ服務
  2.  
    $ sudo /sbin/service rabbitmq-server start # 啟動服務
  3.  
    $ sudo /sbin/service rabbitmq-server status # 查看服務狀態
  4.  
    $ sudo /sbin/service rabbitmq-server stop # 停止服務
  5.  
     
  6.  
    # 查看當前所有用戶
  7.  
    $ sudo rabbitmqctl list_users
  8.  
     
  9.  
    # 查看默認guest用戶的權限
  10.  
    $ sudo rabbitmqctl list_user_permissions guest
  11.  
     
  12.  
    # 由於RabbitMQ默認的賬號用戶名和密碼都是guest。為了安全起見, 先刪掉默認用戶
  13.  
    $ sudo rabbitmqctl delete_user guest
  14.  
     
  15.  
    # 添加新用戶
  16.  
    $ sudo rabbitmqctl add_user username password
  17.  
     
  18.  
    # 設置用戶tag
  19.  
    $ sudo rabbitmqctl set_user_tags username administrator
  20.  
     
  21.  
    # 賦予用戶默認vhost的全部操作權限
  22.  
    $ sudo rabbitmqctl set_permissions -p / username ".*" ".*" ".*"
  23.  
     
  24.  
    # 查看用戶的權限
  25.  
    $ sudo rabbitmqctl list_user_permissions username

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

開啟web管理接口

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

$ sudo rabbitmq-plugins enable rabbitmq_management 

然后通過瀏覽器訪問

http://localhost:15672

輸入用戶名和密碼訪問web管理界面了。

配置RabbitMQ

關於RabbitMQ的配置,可以下載RabbitMQ的配置文件模板/etc/rabbitmq/rabbitmq.config, 然后按照需求更改即可。
關於每個配置項的具體作用,可以參考官方文檔
更新配置后,別忘了重啟服務哦!

開啟用戶遠程訪問

默認情況下,RabbitMQ的默認的guest用戶只允許本機訪問, 如果想讓guest用戶能夠遠程訪問的話,只需要將配置文件中的loopback_users列表置為空即可,如下:

{loopback_users, []}

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

{loopback_users, ["admin"]} 

更新配置后,別忘了重啟服務哦!

 sudo /sbin/service rabbitmq-server status  # 查看服務狀態

這里可以看到log文件的位置,轉到文件位置,打開文件:

這里顯示的是沒有找到配置文件,我們可以自己創建這個文件

cd /etc/rabbitmq/
vi rabbitmq.config

編輯內容如下:

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

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

保存配置后重啟服務:

service rabbitmq-server stop
service rabbitmq-server start

此時就可以從外部訪問了,但此時再看log文件,發現內容還是原來的,還是顯示沒有找到配置文件,可以手動刪除這個文件再重啟服務,不過這不影響使用

rm rabbit\@mythsky.log 
service rabbitmq-server stop
service rabbitmq-server start

啟動后的界面如下:

注意:記得要開放5672和15672端口

 

[java]  view plain  copy
 
 
 
 
  1. /sbin/iptables -I INPUT -p tcp --dport 5672 -j ACCEPT  
  2. /sbin/iptables -I INPUT -p tcp --dport 15672 -j ACCEPT  


免責聲明!

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



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