【RabbitMQ】Linux安裝RabbitMQ

00潤物無聲00發表於2017-03-14

  RabbitMQ是Erlang編寫的,所以在安裝RabbitMQ之前,需要先安裝Erlang,安裝語言庫,以便執行代理伺服器

1.安裝Erlang

cd /usr/local/src/
mkdir rabbitmq
cd rabbitmq

wget http://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm
rpm -Uvh erlang-solutions-1.0-1.noarch.rpm

rpm --import http://packages.erlang-solutions.com/rpm/erlang_solutions.asc
 
sudo yum install erlang

2.安裝RabbitMQ

上傳rabbitmq-server-3.4.1-1.noarch.rpm檔案到/usr/local/src/rabbitmq/

[root@root rabbitmq]# rpm -ivh rabbitmq-server-3.4.1-1.noarch.rpm 

預設安裝路徑是usr/sbin目錄下


日誌檔案的路徑:在/var/log/rabbitmq/目錄下找到rabbit@[hostname].log的日誌檔案。

Mnssian資料庫資料夾:/var/lib/rabbitmq/mnesia


啟動、停止
service rabbitmq-server start
service rabbitmq-server stop
service rabbitmq-server restart


進入/usr/sbin目錄,執行命令,檢查伺服器的狀態:

[root@root sbin]# rabbitmqctl status

此時安裝並且啟動成功,我們可以在sbin目錄下使用rabbitmqctl來管理RabbitMQ節點;

  rabbitmqctl是幾乎所有的RabbitMQ管理需要的一站式解決方案。可以使用它建立vhost和列出vhost,還可以關閉RabbitMQ,可以建立使用者,刪除使用者,列出使用者。以及給我們的使用者在vhost上分配許可權等等。


rabbitmqclt的基本功能:

//新增vhost
[root@root sbin]# rabbitmqctl add_vhost dynamic
Creating vhost "dynamic" ...


//列出vhost
[root@root sbin]# rabbitmqctl list_vhosts
Listing vhosts ...
/
dynamic


//新增使用者
[root@root sbin]# rabbitmqctl add_user fxq fxq
Creating user "fxq" ...


//在指定的vhost上,給使用者授權,使用者可以同時授予讀,寫,配置許可權
[root@root sbin]# rabbitmqctl set_permissions -p dynamic fxq ".*" ".*" ".*"
Setting permissions for user "fxq" in vhost "dynamic" ...


//驗證許可權是否授予
[root@root sbin]# rabbitmqctl list_permissions -p dynamic
Listing permissions in vhost "dynamic" ...
fxq .* .* .*

//清除許可權
[root@root sbin]# rabbitmqctl clear_permissions -p dynamic fxq

//設定角色為管理員
[root@root sbin]# rabbitmqctl set_user_tags fxq administrator
Setting tags for user "fxq" to [administrator] ...


//列出佇列
[root@root sbin]# rabbitmqctl list_queues
Listing queues ...


//列出交換器
[root@root sbin]# rabbitmqctl list_exchanges
Listing exchanges ...
direct
amq.direct direct
amq.fanout fanout
amq.headers headers
amq.match headers
amq.rabbitmq.log topic
amq.rabbitmq.trace topic
amq.topic topic


  我們熟悉了rabbitmqctl指令碼在命令列上管理RabbitMQ,如果有一個圖形化介面豈不是更好。所以有了RabbitMQ Management外掛,可以圖形化資訊,使得管理更加輕鬆

3.安裝圖形化介面

[root@root sbin]# rabbitmq-plugins enable rabbitmq_management
The following plugins have been enabled:
  mochiweb
  webmachine
  rabbitmq_web_dispatch
  amqp_client
  rabbitmq_management_agent
  rabbitmq_management

Applying plugin configuration to rabbit@root... started 6 plugins.

重啟服務,使用我們之前用命令建立的使用者fxq進行登入。




  通過圖形化介面可以看到之前命令列中新增的vhost,使用者,以及給使用者分配的角色。而這些內容,通過圖形胡介面可以更加方便的使用。圖形化介面也使得監控交換器,佇列,通道,以及訊息的變化,交換器和佇列的繫結等內容,更加簡單。




相關文章