1、拉取映象
docker pull rabbitmq:management
2、執行容器
docker run -d --hostname rabbit_host1 --name rabbitmq1 -p 15672:15672 -p 5672:5672 -e rabbitmq_erlang_cookie='rabbitmq_cookie' rabbitmq:management
docker run -d --hostname rabbit_host2 --name rabbitmq2 -p 5673:5672 --link rabbitmq1:rabbit_host1 -e rabbitmq_erlang_cookie='rabbitmq_cookie' rabbitmq:management
docker run -d --hostname rabbit_host3 --name rabbitmq3 -p 5674:5672 --link rabbitmq1:rabbit_host1 --link rabbitmq2:rabbit_host2 -e rabbitmq_erlang_cookie='rabbitmq_cookie' rabbitmq:management
主要引數:
-p 15672:15672 management 介面管理訪問埠
-p 5672:5672 amqp 訪問埠
--link 容器之間連線
erlang cookie 值必須相同,也就是乙個集群內 rabbitmq_erlang_cookie 引數的值必須相同。因為 rabbitmq 是用erlang實現的,erlang
cookie 相當於不同節點之間通訊的金鑰,erlang節點通過交換
erlang cookie 獲得認證
3、加入節點到集群
設定節點1:
docker exec -it
rabbitmq1 bash
root@rabbit_host1:/#rabbitmqctl
root@rabbit_host1:/#rabbitmqctl
reset
root@rabbit_host1:/#rabbitmqctl
root@rabbit_host1:/#exit
設定節點2,加入到集群:
docker exec -it
rabbitmq2 bash
root@rabbit_host2:/#rabbitmqctl
root@rabbit_host2:/#rabbitmqctl
reset
root@rabbit_host2:/# rabbitmqctl join_cluster --ram
rabbit@rabbit_host1
root@rabbit_host2:/#rabbitmqctl
root@rabbit_host2:/#
exit
設定節點3,加入到集群:
docker exec -it rabbitmq3 bash
root@rabbit_host3:/# rabbitmqctl reset
root@rabbit_host3:/# rabbitmqctl join_cluster
--ram rabbit@rabbit_host1
root@rabbit_host3:/# exit
主要引數:
--ram 表示設定為記憶體節點,忽略次引數預設為磁碟節點。該配置啟動了3個節點,1個磁碟節點和2個記憶體節點。
設定好之後,使用 http://ip:15672 進行訪問,預設賬號密碼:guest/guest
4、集群檢視
mac 使用docker 安裝 rabbitmq
專案要用到rabbitmq 官網說brew install 但是brew update就半天都不成功,突然想起了docker,以前用過一點點,就試著來了一下 docker search rabbitmq management docker pull rabbitmq management docke...
從0到1在Linux上搭建RabbitMq集群教程
搭建環境阿里雲centeros8.2,erlang23.x,rabbitmq3.8.x 1 準備三颱阿里雲伺服器,情況如下 2 鑑於後續埠通訊等操作需要,提前做好前置工作 1 阿里雲安全組內開通15672埠,便於遠端管理rabbitmq集群 2 配置三颱主機的hosts檔案,因為rabbitmq是通...
erlang jcl遠端除錯 rabbitmq
job control mode jcl in which jobs can be started,stopped,detached or connected.only the current job can communicate with the shell.通過jcl,我們可以遠端接入乙個er...