九步安装Rabbitmq集群

九步安装Rabbitmq集群

1.安装rabbitmq

yum install rabbitmq-server

2. 两台安装好后,先停止服务

service rabbitmq-server stop

3. 同步cookie

scp /var/lib/rabbitmq/.erlang.cookie root@192.168.203.25:/var/lib/rabbitmq/.erlang.cookie

然后两台机器均启rabbitmq服务:

service rabbitmq-server start

备注:如果不同scp覆盖,注意两台机器的.erlang.cookie权限和所属用户、用户组须保持一致

4. 在第二个节点将rabbitmq加入集群

rabbitmqctl stop_apprabbitmqctl join_cluster rabbit@controller1rabbitmqctl start_app

两台机器上均可以查看集群状态

rabbitmqctl cluster_statusCluster status of node rabbit@controller1...[{nodes,[{disc,[rabbit@controller1,rabbit@controller2]}]}, {running_nodes,[rabbit@controller1,rabbit@controller2]}, {partitions,[]}]...done.

5. 修改节点类型(集群中至少有一个节点为disc模式)

rabbitmqctl stop_apprabbitmqctl change_cluster_node_type ramrabbitmqctl start_app

6. 镜像队列配置

设置以字母开始的队列都被镜像到集群中的所有节点上

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

备注:其实在两个节点做好集群,还没有做mirrored queue镜像队列时,在slave节点上用命令“rabbitmqctl list_queues”查看集群队列,其实查看到的是master节点上queue,假如停止master上的rabbitmq-server服务,在slave节点上就查看不到了。

做mirroredqueue队列的作用就在于:定义policy策略,让slave能够把master上queue同步到slave本地,当master服务down了slave能够替代master提供服务。

具体信息可参考:https://blog.sina.com.cn/s/blog_959491260101m6ql.html

7. 增加配置

在两台安装rabbitmq的节点上添加配置:

vim /etc/rabbitmq/rabbitmq.config[{rabbit,[{loopback_users,[]}]}].

8. 安装rabbitmq监控

rabbitmq-plugins enable rabbitmq_management

web访问链接:https://192.168.205.9:15672

9. 然后分别重启两台rabbitmq-server服务

service rabbitmq-server restart