docker主機 ip位址
172.19.184.202 rabbit1 rabbit1
172.19.184.201 rabbit2 rabbit2
第一步:獲取rabbitmq映象
docker pull rabbitmq:management
第二步:啟動mq
rabbit1:
172.19.184.202
rabbitmq集群建立需要解析主機名,因此需要一台內網dns,存在以下記錄(或者修改容器的hosts檔案),我這裡才用的是host方式
docker run -d --hostname rabbit1 --add-host=rabbit1:172.19.184.202 --add-host=rabbit2:172.19.184.201 --name rabbit1 -p 15672:15672 -p 5672:5672 -p 4369:4369 -p 5671:5671 -p 15671:15671 -p 25672:25672 -e rabbitmq_default_user=admin -e rabbitmq_default_pass=password -e rabbitmq_erlang_cookie='rabbitcookie' docker.io/rabbitmq:management
引數說明:
-d
容器後台執行
--hostname rabbit1
容器的主機名為 rabbit1,容器內部的hostname
--add-host=rabbit1:172.19.184.202
--add-host=rabbit2:172.19.184.201
修改容器內部的hosts,沒有dns伺服器的話就這麼改
--name rabbit1
容器名為rabbit1,在宿主機上執行「docker ps」命令時顯示的名稱
--log-opt max-size=10m
日誌檔案單個最大10m
--log-opt max-file=3
日誌檔案最多保留3個
-p "4369:4369"
對映宿主機埠4369到容器埠4369,主機埠在前
-p "5671:5671"
略-p "5672:5672"
略-p "15671:15671"
略-p "15672:15672"
略-p "25672:25672"
略-v /data/rabbitmq:/var/lib/rabbitmq:z
將宿主機目錄/data/rabbitmq掛載到容器的/var/lib/rabbitmq目錄。z是乙個標記,在selinux環境下使用。
-e rabbitmq_default_user=user01
設定rabbitmq預設使用者為user01
-e rabbitmq_default_pass=password01
設定rabbitmq預設密碼為password01
-e rabbitmq_erlang_cookie='rabbitcookie'
設定rabbitmq的cookie為「rabbitcookie」,可以自定義為其他文字,三個容器保持一致即可。
docker.io/rabbitmq:management
使用docker.io/rabbitmq:management這個映象
進入到容器內部:
docker exec -it rabbit1 /bin/bash
rabbitmqctl change_password admin password123
rabbitmqctl set_user_tags admin administrator
rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"
rabbitmqctl list_users
rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"
rabbitmqctl reset
chmod 600 /var/lib/rabbitmq/.erlang.cookie
在第二台伺服器上安裝mq
rabbit2:172.19.184.201
docker run -d --hostname rabbit2 --add-host=rabbit1:172.19.184.202 --add-host=rabbit2:172.19.184.201 --name rabbit2 -p 15672:15672 -p 5672:5672 -p 4369:4369 -p 5671:5671 -p 15671:15671 -p 25672:25672 -e rabbitmq_default_user=admin -e rabbitmq_default_pass=password -e rabbitmq_erlang_cookie='rabbitcookie' docker.io/rabbitmq:management
把rabbit2新增到集群(以記憶體節點方式加入)
docker exec -it rabbit2 /bin/bash把rabbit2新增到集群(以磁碟方式加入)rabbitmqctl reset
rabbitmqctl join_cluster --ram rabbit@rabbit1
rabbitmqctl reset
rabbitmqctl join_cluster rabbit@rabbit1
RabbitMQ集群部署
第一步 獲取rabbitmq映象 docker pull rabbitmq management第二步 啟動mq docker run d hostname rabbit1 name myrabbit1 p 15672 15672 p 5672 5672 e rabbitmq erlang cook...
RabbitMQ集群部署
環境 ip主機名 作業系統 10.0.0.1 test1 centos7.2 10.0.0.2 test2 centos7.2 10.0.0.3 test3 centos7.2 一 安裝依賴環境。yum y install gcc glibc devel make ncurses devel ope...
Rabbitmq映象集群部署
位址 環境 兩台伺服器作為兩個節點,把node 003加入node 002 192.168.95.129 node 002 192.168.95.130 node 003 1.配置環境host,兩個節點的host都需要包含每個節點的資訊,資訊要一致。下面是在node 002中的操作。node 003...