RabbitMQ 高可用架構部署方案筆記

0. 部署架構簡介

hostname ip role
host1 192.168.10.11 rabbitmq-master
host2 192.168.10.12 rabbitmq-slave

1. 安裝軟件

分別在host1host2上執行:

$ wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.0/rabbitmq-server-3.6.0-1.noarch.rpm
$ wget http://www.rabbitmq.com/releases/erlang/erlang-18.2-1.el7.centos.x86_64.rpm

$ rpm -ivh erlang-18.2-1.el7.centos.x86_64.rpm
$ rpm -ivh rabbitmq-server-3.6.0-1.noarch.rpm

2. 拷貝cookie

host1cookie複製到host2中去:

scp /var/lib/rabbitmq/.erlang.cookie host2:/var/lib/rabbitmq/.erlang.cookie

3. /etc/hosts

分別將host1host2/etc/hosts修改成下面這樣:

192.168.10.11   host1
192.168.10.12   host2

4. 啓動rabbitmq集羣

host1上執行:

rabbitmq-server -detached

host2上執行:

rabbitmq-server -detached
rabbitmqctl stop_app
rabbitmqctl join_cluster --ram rabbit@host1
rabbitmqctl start_app

5. 啓動host1的web管理頁面(可選)

$ rabbitmq-plugins enable rabbitmq_management
$ cat /etc/rabbitmq/rabbitmq.config
[{rabbit, [{loopback_users, []}]}].

6. 設置高可用策略

host1上執行(在host2上執行也行):

rabbitmqctl set_policy -p / ha-allqueue "^" '{"ha-mode":"all"}'

7. 利用keepalived或是haproxy實現rabbitmq主備的自動切換

8. ref

http://www.cnblogs.com/flat_peach/archive/2013/04/07/3004008.html
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章