Docker搭建RabbitMQ集群(镜像模式)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Docker搭建RabbitMQ集群(镜像模式),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2442字,纯文字阅读大概需要4分钟。
内容图文
一、创建桥接网络
docker network create rabbitmq_net
二、拉取镜像
docker pull rabbitmq
docker pull haproxy
#查看镜像
docker images rabbitmq
docker images haproxy
三、配置主机名
vi /etc/hosts
192.168.1.20 rabbitmq01
192.168.1.20 rabbitmq02
192.168.1.20 rabbitmq03
测试主机名:
ping rabbitmq01
四、创建容器
docker run -d --name=rabbitmq01 -p 5673:5672 -p 15673:15672 -e RABBITMQ_NODENAME=rabbitmq01 -e RABBITMQ_ERLANG_COOKIE='meetyou' -h rabbitmq01 -e RABBITMQ_DEFAULT_USER=meetyou -e RABBITMQ_DEFAULT_PASS=2019Meetyou --net=rabbitmq_net rabbitmq:latest
docker run -d --name=rabbitmq02 -p 5674:5672 -p 15674:15672 -e RABBITMQ_NODENAME=rabbitmq02 -e RABBITMQ_ERLANG_COOKIE='meetyou' -h rabbitmq02 -e RABBITMQ_DEFAULT_USER=meetyou -e RABBITMQ_DEFAULT_PASS=2019Meetyou --net=rabbitmq_net rabbitmq:latest
docker run -d --name=rabbitmq03 -p 5675:5672 -p 15675:15672 -e RABBITMQ_NODENAME=rabbitmq03 -e RABBITMQ_ERLANG_COOKIE='meetyou' -h rabbitmq03 -e RABBITMQ_DEFAULT_USER=meetyou -e RABBITMQ_DEFAULT_PASS=2019Meetyou --net=rabbitmq_net rabbitmq:latest
- RABBITMQ_ERLANG_COOKIE:通过Erlang Cookie,相当于共享秘钥的概念,长度任意,只要所有容器都一致即可。
- -h: 设置容器hostname名称
- –net: 设置所属网络
进入容器,启动管理页面
docker exec -it rabbitmq01 /bin/bash
rabbitmq-plugins enable rabbitmq_management
exit
docker exec -it rabbitmq02 /bin/bash
rabbitmq-plugins enable rabbitmq_management
exit
docker exec -it rabbitmq03 /bin/bash
rabbitmq-plugins enable rabbitmq_management
exit
访问MQ地址测试:
http://localhost:15673
http://localhost:15674
http://localhost:15675
五、salve加入集群操作
(注意做这个步骤的时候:需要配置/etc/hosts必须相互能够寻地到 我们已通过-h指定hostname)rabbitmq02、rabbitmq03容器(docker exec -it 容器id /bin/bash),执行一下:
rabbitmqctl stop_app
rabbitmqctl join_cluster --ram rabbitmq01@rabbitmq01
//(--ram:内存存储方式,默认磁盘存储)
rabbitmqctl start_app
移动节点
rabbitmqctl forget_cluster_node rabbitmq02@rabbitmq02
Removing node rabbitmq02@rabbitmq02 from cluster …
六、配置镜像队列
//设置镜像队列策略(在任意一个节点上执行)
rabbitmqctl set_policy ha-all "^" '{"ha-mode":"all"}'
*将所有队列设置为镜像队列,即队列会被同步复制到各个节点,RabbitMQ高可用集群就已经搭建好了,我们可以重启服务,查看队列是否在从节点同步。
查询集群状态
rabbitmqctl cluster_status
更改节点类型(内存型或磁盘型)
rabbitmqctl stop_app
#磁盘存储
rabbitmqctl change_cluster_node_type disc
#内存存储
rabbitmqctl change_cluster_node_type ram
rabbitmqctl start_app
内容总结
以上是互联网集市为您收集整理的Docker搭建RabbitMQ集群(镜像模式)全部内容,希望文章能够帮你解决Docker搭建RabbitMQ集群(镜像模式)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。