关于rabbitmq:Docker搭建RabbitMQ镜像集群

30次阅读

共计 1367 个字符,预计需要花费 4 分钟才能阅读完成。

Docker 部署 RabbitMQ 镜像集群

拉取镜像并运行容器

# 拉取镜像,指定带有“mangement”的版本(蕴含 web 治理页面),该版本蕴含了 web 管制页面
docker pull rabbitmq:management


docker run -d --hostname myRabbit1 --name rabbit1 -p 15672:15672 -p 4369:4369 -p 5672:5672 -e RABBITMQ_ERLANG_COOKIE='rabbitcookie' rabbitmq:management

docker run -d --hostname myRabbit2 --name rabbit2 -p 5673:5672 -p 4370:4369 --link rabbit1:myRabbit1 -e RABBITMQ_ERLANG_COOKIE='rabbitcookie' rabbitmq:management

docker run -d --hostname myRabbit3 --name rabbit3 -p 5674:5672 -p 4371:4369 --link rabbit1:myRabbit1 --link rabbit2:myRabbit2 -e RABBITMQ_ERLANG_COOKIE='rabbitcookie' rabbitmq:management

容器内 RabbitMQ 设置

# 进入 rabbitmq01 容器,从新初始化一下,如果是新装置则 reset 能够疏忽重置。docker exec -it rabbit1 bash
rabbitmqctl stop_app
rabbitmqctl reset
rabbitmqctl start_app
exit

#进入 rabbitmq02 容器,从新初始化一下,将 02 节点退出到集群中
docker exec -it rabbit2 bash
rabbitmqctl stop_app
rabbitmqctl reset
rabbitmqctl join_cluster --ram rabbit@myRabbit1 #参数“--ram”示意设置为内存节点,疏忽该参数默认为磁盘节点。rabbitmqctl start_app
exit

#进入 rabbitmq03 容器,从新初始化一下,将 03 节点退出到集群中
docker exec -it rabbit3 bash
rabbitmqctl stop_app
rabbitmqctl reset
rabbitmqctl join_cluster --ram rabbit@myRabbit1
rabbitmqctl start_app
exit

设置镜像集群及个别操作

# 任意节点执行,设置镜像集群模式
rabbitmqctl set_policy -p / ha "^" '{"ha-mode":"all","ha-sync-mode":"automatic"}'

#查问策略 
#查看 vhost 下的所有的策略(policies)rabbitmqctl list_policies -p / 

#查看集群的状态:
rabbitmqctl cluster_status

#查看镜像队列  
`rabbitmqctl list_policies`  
#删除镜像队列  
`rabbitmqctl clear_policy`

网页监控平台

http://localhost:15672/#/queues
用户民 / 明码:guest/guest

正文完
 0