RabbiitMQクラスタ構成

1357 ワード

参照http://www.rabbitmq.com/clustering.html
一、ホスト名を変更する
echo 「ラビット1」 > /proc/sys/ケネル/hostname
または echo 「ラビット1」 > /etc/hostname
サーバーごとのホスト名は同じではありません。
修正/etc/rabbilimq/rabitmq-event.co nfig
RABBITMQ_NODENAME=ラビット1
各サーバーのRABBITMQ_NODENAMEも違っていなければなりません。
ホスト名マップを変更
 vi/etc/hosts
127.1.0.1              local host.local domain local host
:1            local host 6.local domain 6 local host 6
192.168.156 rabbit 156.test.com.cn
192.168.113 rabbit 113 rabbit 113.test.com.cn
二、ラビットMQサービスを停止する。
先に実行できます
service rabbility q-server stop
三、coockieをコピーする
メインサーバを見つけて、/var/lib/rabbiitmq/erlang.co okieファイルを見つけて、他のサーバーにコピーします。
四、サービスを開始して、クラスタに追加するコマンドを実行する
メインサーバとして選択し、次のコマンドを実行してサービスを開始します。
ラヴィットmq-server-detached
そしてクラスタ状態を確認します。
rabbitmqctl cluster ustatus
rabbit1$ rabbitmqctl cluster_status
Cluster status of node rabbit@rabbit1 ...
[{nodes,[{disc,[rabbit@rabbit1]}]},{running_nodes,[rabbit@rabbit1]}]
...done.
他のサーバがクラスタに追加し、次のコマンドを実行します。
rabbitmq-server-deteched
rabbit2$ rabbitmqctl stop_app
Stopping node rabbit@rabbit2 ...done.
rabbit2$ rabbitmqctl join_cluster rabbit@rabbit1
Clustering node rabbit@rabbit2 with [rabbit@rabbit1] ...done.
rabbit2$ rabbitmqctl start_app
Starting node rabbit@rabbit2 ...done.