讀懂在單臺機器上建立RabbitMQ集羣

在優銳課java中瞭解有關在單臺計算機上安裝集羣以及如何向集羣添加更多節點的更多信息,碼了不少專業的相關知識, 分享給你們參考學習。java

若是在單臺計算機上設置羣集時遇到問題,那麼如下文章可能會幫助回答一些問題。 我假設已經在本地計算機(rabbit @ localhost)上設置RabbitMQ,而且想知道如何添加兩個以上的節點並將它們羣集。app

這些說明與在運行OS X Yosemite的MacBook Pro上的安裝有關。tcp

因爲已經安裝了RabbitMQ。 須要作的就是在新節點上實例化實例。 如下命令將在名爲hare @ localhost的節點上實例化Rabbit的實例。學習

1     RABBITMQ_NODE_PORT=5674
2 
3         RABBITMQ_NODENAME=hare@localhost
4 
5         rabbitmq-server &

 

確保端口號不一樣於當前使用的端口。spa

癥結是Rabbit綁定到插件的端口。 可能會看到如下錯誤:插件

 1 BOOT FAILED
 2 
 3 ===========
 4 
 5 Error description:
 6 
 7  {could_not_start,rabbitmq_mqtt,
 8 
 9     {{shutdown,
10 
11       {failed_to_start_child,'rabbit_mqtt_listener_sup_:::1883',
12 
13          {shutdown,
14 
15             {failed_to_start_child,tcp_listener,
16 
17               {cannot_listen,{0,0,0,0,0,0,0,0},1883,eaddrinuse}}}}},
18 
19      {rabbit_mqtt,start,[normal,[]]}}}
20 
21 這意味着當前正在運行的節點的Rabbit MQTT正在使用端口1883。
22 
23 BOOT FAILED
24 
25 ===========
26 
27 Error description:
28 
29  {could_not_start,rabbitmq_stomp,
30 
31     {{shutdown,
32 
33         {failed_to_start_child,'rabbit_stomp_listener_sup_:::61613',
34 
35            {shutdown,
36 
37               {failed_to_start_child,tcp_listener,
38 
39          {cannot_listen,{0,0,0,0,0,0,0,0},61613,eaddrinuse}}}}},
40 
41      {rabbit_stomp,start,[normal,[]]}}}

 

這意味着當前正在運行的節點的Rabbit STOMP正在使用端口61613。code

要解決此衝突,請在RABBITMQ_SERVER_START_ARGS中添加一個參數,爲該插件指定一個新端口。orm

RabbitMQ Web界面的概述選項卡中的端口和上下文下顯示了已安裝插件的列表。server

下面顯示瞭如何爲Rabbit管理和Rabbit MQTT配置端口blog

 1 RABBITMQ_NODE_PORT=5674
 2 
 3     RABBITMQ_NODENAME=hare@localhost
 4 
 5     RABBITMQ_SERVER_START_ARGS="
 6 
 7         -rabbitmq_management listener [{port,15674}]
 8 
 9         -rabbitmq_mqtt tcp_listeners [1884]"
10 
11     rabbitmq-server &

 

如今,將節點添加到集羣中。 中止實例,將其加入另外一個節點並啓動。

1 rabbitmqctl -n hare@localhost stop_app
2 
3 rabbitmqctl -n hare@localhost join_cluster rabbit@localhost
4 
5 rabbitmqctl -n hare@localhost start_app

文章寫道這裏,若有不足之處,歡迎補充。

相關文章
相關標籤/搜索