微调
这个提交包含在:
父节点
a906bfc6ed
当前提交
78df3da8a8
@ -1,6 +1,6 @@
|
|||||||
[TOC]
|
[TOC]
|
||||||
|
|
||||||
# 集群概述
|
## 集群概述
|
||||||
|
|
||||||
### 计划部署3节点的mq集群:
|
### 计划部署3节点的mq集群:
|
||||||
|
|
||||||
@ -10,13 +10,13 @@
|
|||||||
| mq2 | 8082 ---->15672 | 8072---->5672 |
|
| mq2 | 8082 ---->15672 | 8072---->5672 |
|
||||||
| mq3 | 8083 ---->15672 | 8073---->5672 |
|
| mq3 | 8083 ---->15672 | 8073---->5672 |
|
||||||
|
|
||||||
# 获取cookie
|
## 获取cookie
|
||||||
|
|
||||||
> RabbitMQ底层依赖于Erlang,而Erlang虚拟机就是一个面向分布式的语言,默认就支持集群模式。集群模式中的每个RabbitMQ 节点使用 cookie 来确定它们是否被允许相互通信。
|
> RabbitMQ底层依赖于Erlang,而Erlang虚拟机就是一个面向分布式的语言,默认就支持集群模式。集群模式中的每个RabbitMQ 节点使用 cookie 来确定它们是否被允许相互通信。
|
||||||
> 要使两个节点能够通信,它们必须具有相同的共享秘密,称为Erlang cookie。
|
> 要使两个节点能够通信,它们必须具有相同的共享秘密,称为Erlang cookie。
|
||||||
> 每个集群节点必须具有相同的 cookie。实例之间也需要它来相互通信。
|
> 每个集群节点必须具有相同的 cookie。实例之间也需要它来相互通信。
|
||||||
|
|
||||||
##### 先创建一个mq容器,然后获取这个mq容器的cookie,作为之后mq集群的cookie:
|
#### 先创建一个mq容器,然后获取这个mq容器的cookie,作为之后mq集群的cookie:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
docker run -d -e RABBITMQ_DEFAULT_USER=root -e RABBITMQ_DEFAULT_PASS=root --name mq --hostname mq -p 8074:5672 -p 8084:15672 rabbitmq
|
docker run -d -e RABBITMQ_DEFAULT_USER=root -e RABBITMQ_DEFAULT_PASS=root --name mq --hostname mq -p 8074:5672 -p 8084:15672 rabbitmq
|
||||||
@ -26,13 +26,13 @@ docker run -d -e RABBITMQ_DEFAULT_USER=root -e RABBITMQ_DEFAULT_PASS=root --name
|
|||||||
docker exec -it mq cat /var/lib/rabbitmq/.erlang.cookie
|
docker exec -it mq cat /var/lib/rabbitmq/.erlang.cookie
|
||||||
```
|
```
|
||||||
|
|
||||||
##### 得到cookie如下:
|
#### 得到cookie如下:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
DFPDFJPEQOYLQYMOSKNE
|
DFPDFJPEQOYLQYMOSKNE
|
||||||
```
|
```
|
||||||
|
|
||||||
##### 接下来,停止并删除当前的mq容器:
|
#### 接下来,停止并删除当前的mq容器:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
docker rm -f mq
|
docker rm -f mq
|
||||||
@ -40,7 +40,7 @@ docker rm -f mq
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
# 准备集群配置
|
## 准备集群配置
|
||||||
|
|
||||||
##### 在虚拟机中新建一个目录 `/rabbitmq` 来存放集群的配置文件:
|
##### 在虚拟机中新建一个目录 `/rabbitmq` 来存放集群的配置文件:
|
||||||
|
|
||||||
@ -79,7 +79,7 @@ chmod 600 .erlang.cookie
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
然后拷贝rabbitmq.conf、cookie文件到mq1、mq2、mq3:
|
##### 然后拷贝rabbitmq.conf、cookie文件到mq1、mq2、mq3:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# 进入/rabbitmq
|
# 进入/rabbitmq
|
||||||
@ -93,7 +93,7 @@ cp .erlang.cookie mq2
|
|||||||
cp .erlang.cookie mq3
|
cp .erlang.cookie mq3
|
||||||
```
|
```
|
||||||
|
|
||||||
# 启动集群
|
## 启动集群
|
||||||
|
|
||||||
##### 创建一个网络:
|
##### 创建一个网络:
|
||||||
|
|
||||||
@ -148,7 +148,7 @@ rabbitmq:3.13-rc-management
|
|||||||
docker ps
|
docker ps
|
||||||
```
|
```
|
||||||
|
|
||||||
# 测试
|
## 测试
|
||||||
|
|
||||||
##### 通过8081端口访问mq1,可以看到集群状态:
|
##### 通过8081端口访问mq1,可以看到集群状态:
|
||||||
|
|
||||||
@ -158,7 +158,7 @@ docker ps
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
# 镜像模式
|
## 镜像模式
|
||||||
|
|
||||||
##### 一旦创建队列的主机宕机,队列就会不可用。不具备高可用能力。
|
##### 一旦创建队列的主机宕机,队列就会不可用。不具备高可用能力。
|
||||||
|
|
||||||
|
|||||||
正在加载...
在新工单中引用
屏蔽一个用户