linux非root用戶的rabbitmq集群部署


  我們之前部署過一個非root用戶的rabbitmq節點(參見linux非root用戶安裝rabbitmq),現在采用同樣方式,部署另外兩個節點。

  集群的關鍵是.erlang.cookie文件,注意前面是有點號的。打開第一個節點看看:

[wlf@wlf188 rabbitmq]$ cd ~
[wlf@wlf188 ~]$ vi .erlang.cookie 

AYMYRMIDTAWBOXCITAXQ
~

 

  里面就是一串類似秘鑰的東東,把第一個節點的這個秘鑰替換掉另外兩個節點,因為.erlang.cookie是只讀的,vi替換后用wq!即可,替換完確認一下:

[wlf@wlf186 ~]$ cat .erlang.cookie 
AYMYRMIDTAWBOXCITAXQ

 

  應該注意的是集群的機器之間網絡是OK的,一般都會在etc/hosts文件中配置機器名:

[wlf@wlf188 ~]$ cat /etc/hosts
127.0.0.1   localhost 
::1         localhost 
192.168.10.113    wlf185
192.168.10.112    wlf186
192.168.10.110    wlf188

 

  主節點部署在wlf188,假設主節點已經啟動,那么現在我們啟動從節點(wlf186和wlf185)。先看wlf186:

[wlf@wlf186 ~]$ rabbitmq-server -detatched

  ##  ##
  ##  ##      RabbitMQ 3.7.18. Copyright (C) 2007-2019 Pivotal Software, Inc.
  ##########  Licensed under the MPL.  See https://www.rabbitmq.com/
  ######  ##
  ##########  Logs: /home/wlf/rabbitmq_server-3.7.18/var/log/rabbitmq/rabbit@wlf186.log
                    /home/wlf/rabbitmq_server-3.7.18/var/log/rabbitmq/rabbit@wlf186_upgrade.log

              Starting broker...
 completed with 0 plugins.
 

 

  后台啟動后,先停應用:

[wlf@wlf186 ~]$ rabbitmqctl stop_app
Stopping rabbit application on node rabbit@wlf186 ...

 

  再加入主節點集群:

[wlf@wlf186 ~]$ rabbitmqctl join_cluster rabbit@wlf188
Clustering node rabbit@wlf186 with rabbit@wlf188

 

  最后重新拉起應用:

[wlf@wlf186 ~]$ rabbitmqctl start_app
Starting node rabbit@wlf186 ...
 completed with 0 plugins.

 

  確認集群狀態:

[wlf@wlf186 ~]$ rabbitmqctl cluster_status
Cluster status of node rabbit@wlf186 ...
[{nodes,[{disc,['rabbit@wlf186','rabbit@wlf188']}]},
 {running_nodes,['rabbit@wlf188','rabbit@wlf186']},
 {cluster_name,<<"rabbit@wlf188">>},
 {partitions,[]},
 {alarms,[{'rabbit@wlf188',[]},
          {'rabbit@wlf186',[]}]}]

 

  我們看到主節點wlf188和從節點wlf186均為disc——磁盤節點,現在把另一個從節點作為內存節點加入集群,處理步驟同上,只需在加入集群時指定ram參數即可:

[wlf@wlf185 ~]$ rabbitmqctl join_cluster --ram rabbit@wlf188 
Clustering node rabbit@wlf185 with rabbit@wlf188

 

  重新啟動應用后我們再看看集群狀態,wlf185確實是內存節點:

[wlf@wlf185 ~]$ rabbitmqctl cluster_status
Cluster status of node rabbit@wlf185 ...
[{nodes,[{disc,['rabbit@wlf188','rabbit@wlf186']},
         {ram,['rabbit@wlf185']}]},
 {running_nodes,['rabbit@wlf186','rabbit@wlf188',
                 'rabbit@wlf185']},
 {cluster_name,<<"rabbit@wlf188">>},
 {partitions,[]},
 {alarms,[{'rabbit@wlf186',[]},
          {'rabbit@wlf188',[]},
          {'rabbit@wlf185',[]}]}]

 

  

  


免責聲明!

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



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