RabbitMQ学习(一) 多服务器下使用docker搭建RabbitMQ集群

RabbitMQ学习(一) 多服务器下RabbitMQ集群搭建

参考资料:
感谢博主:https://blog.csdn.net/qq_28364999/article/details/80939577#comments

1. 集群搭建

1.1 准备工作:
(1)安装docker
https://blog.csdn.net/yangkang1122/article/details/88706470
(2)获取RabbitMQ镜像

docker search rabbitmq
docker pull docker.io/rabbitmq:3.6.15-management

在这里插入图片描述
2.集群搭建:
(1)主机、容器、端口信息如下

hostname     容器名            IP                         PORT
node1        rabbit1          192.168.100.163            4369、5671、5672、15671、15672、25672
node2        rabbit2          192.168.100.179            4369、5671、5672、15671、15672、25672
node3        rabbit3          192.168.100.172            4369、5671、5672、15671、15672、25672

(2)在各个主机根目录下建立目录用于存储rabbitmq容器数据

mkdir /data/rabbitmq
chmod 775 -R /data/rabbitmq

(3)在第一台主机上创建容器rabbit1

docker run -d --hostname node1   \
              --add-host="node1":192.168.100.163 \
              --add-host="node2":192.168.100.179 \
              --add-host="node3":192.168.100.172 \
              --name rabbit1 \
              -p "4369:4369" \
              -p "5671:5671"  \
              -p "5672:5672"  \
              -p "15671:15671"  \
              -p "15672:15672"  \
              -p "25672:25672"  \
              -v /data/rabbitmq:/var/lib/rabbitmq:z \
              -e RABBITMQ_DEFAULT_USER=user01 \
              -e RABBITMQ_DEFAULT_PASS=password01  \
              -e RABBITMQ_ERLANG_COOKIE='secret cookie here' \
              docker.io/rabbitmq:3.6.15-management

(4)在其余两台主机上创建容器rabbitmq2、rabbitmq3:

 docker run -d --hostname node2 \
               --add-host="node1":192.168.100.163 \
               --add-host="node2":192.168.100.179 \
               --add-host="node3":192.168.100.172 \
               --name rabbit2 \
               -p "4369:4369" \
               -p "5671:5671" \
               -p "5672:5672" \
               -p "15671:15671" \
               -p "15672:15672" \
               -p "25672:25672" \
               -v /data/rabbitmq:/var/lib/rabbitmq:z \
               -e RABBITMQ_DEFAULT_USER=user01 \
               -e RABBITMQ_DEFAULT_PASS=password01 \
               -e RABBITMQ_ERLANG_COOKIE='secret cookie here' \
               docker.io/rabbitmq:3.6.15-management
 docker run -d --hostname node3  \
               --add-host="node1":192.168.100.163 \
               --add-host="node2":192.168.100.179 \
               --add-host="node3":192.168.100.172 \
               --name rabbit3 \
               -p "4369:4369" \
               -p "5671:5671" \
               -p "5672:5672" \
               -p "15671:15671" \
               -p "15672:15672" \
               -p "25672:25672"  \
               -v /data/rabbitmq:/var/lib/rabbitmq:z \
               -e RABBITMQ_DEFAULT_USER=user01 \
               -e RABBITMQ_DEFAULT_PASS=password01 \
               -e RABBITMQ_ERLANG_COOKIE='secret cookie here' \
               docker.io/rabbitmq:3.6.15-management

(5)创建集群
进入容器rabbit1并用户user01设置为管理员

docker exec –it rabbit1 bash
rabbitmqctl set_user_tags user01 administrator

进入其他两个节点,将其加入集群

docker exec –it rabbit2 bash
或者
docker exec –it rabbit3 bash

以磁盘节点方式加入,@后为主机名,不含域名:

rabbitmqctl stop_app
rabbitmqctl join_cluster rabbit@node1
rabbitmqctl start_app

以内存节点方式加入:

rabbitmqctl stop_app
rabbitmqctl join_cluster --ram rabbit@node1
rabbitmqctl start_app

至此,RabbitMQ集群已创建完成,可以用命令rabbitmqctl cluster_status查看集群状态信息.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值