RabbitMQ集群-镜像模式

1 部署说明

1.1 环境准备

IP地址 主机名 操作系统 用途 软件版本
192.168.15.12 mq01 Centos 7.8 磁盘节点 rabbitmq-server-3.8.3,erlang-22.3.4,socat-1.7.3.2
192.168.15.13 mq02 Centos 7.8 内存节点

1.2 配置主机和hosts文件

  1. 更改二台mq节点的主机名为mq01,mq02.

[root@mq01 ~]# vim /etc/hostname

mq01 //另一台改为mq02

  1. 然后修改hosts配置文件。

[root@mq01 ~]# vim /etc/hosts

192.168.15.12 mq01

192.168.15.13 mq02

127.0.0.1 mq01 //另一台为127.0.0.1 mq02

::1 mq01 //另一台为 ::1 mq02

1.3 安装基础组件

1.3.1 安装Rabbitmq-server和Erlang

  1. 下载软件包

packagecloud.io/rabbitmq/er…

github.com/rabbitmq/ra…

www.rabbitmq.com/rabbitmq-re…

www.dest-unreach.org/socat/downl…

下载好后上传到当前文件夹

  1. 安装Erlang

yum localinstall erlang-22.3.4-1.el7.x86_64.rpm

  1. 安装Socat依赖

tar zxvf socat-1.7.3.2.tar.gz

cd socat-1.7.3.2

./configure

make && make install

  1. 安装Rabbitmq-server

rpm –import rabbitmq-release-signing-key.asc

yum localinstall rabbitmq-server-3.8.3-1.el7.noarch.rpm

1.3.2 服务管理

  1. 启动服务

systemctl start rabbitmq-server

  1. 把mq01的erlang.cookie拷贝到其他主机

[root@mq01 ~]# scp /var/lib/rabbitmq/.erlang.cookie root@192.168.15.13:/var/lib/rabbitmq/.erlang.cookie

[root@mq01 ~]# scp /root/.erlang.cookie root@192.168.15.13:/root/.erlang.cookie

[root@mq02 ~]# systemctl restart rabbitmq-server

  1. 添加WEB管理服务

/usr/lib/rabbitmq/bin/rabbitmq-plugins enable rabbitmq_management

service rabbitmq-server start

1.4 加入集群

  1. mq02先暂停rabbitmq

​ [root@mq02 ~]# rabbitmqctl stop_app

  1. 将mq02加入集群

[root@mq02 ~]# rabbitmqctl reset

[root@mq02 ~]# rabbitmqctl join_cluster –ram rabbit@mq01

Clustering node rabbit@mq02 with rabbit@mq01

[root@mq02 ~]# rabbitmqctl start_app

  1. 查看集群状态

rabbitmqctl cluster_status

1.5 登录WEB控制台

1.5.1 修改登录配置文件

vim /usr/lib/rabbitmq/lib/rabbitmq_server-3.8.3/ebin/rabbit.app

​ 将rabbit.app中的{loopback_users, [<<”guest”>>]},改为{loopback_users, []}

systemctl restart rabbitmq-server

1.5.2 登录

打开浏览器输入http://nodeip:15672, 输入默认的Username:guest,输入默认的Password: guest 。

2 Rabbimq镜像集群部署说明

2.1 创建rabbitmq策略

在mq01节点的控制台上创建策略

(1)点击admin菜单–>右侧的Policies选项–>左侧最下下边的Add/update a policy。

(2)Definition设置ha-mode为all,将集群设置为镜像模式

(3)点击Add policy。

clip_image002.jpg
Name: policy的名称

Pattern: exchanges或queue名称的匹配模式(正则表达式)

Definition:镜像定义,包括三个部分ha-mode, ha-params, ha-sync-mode

ha-mode:指明镜像队列的模式,有效值为 all/exactly/nodes

​ all:表示在集群中所有的节点上进行镜像。

Priority:可选参数,policy的优先级

2.2 创建队列

在mq01节点的控制台上添加队列

(1) 点击Queues菜单–>左侧下边的Add a new queue。

(2) 输入参数,点击Add queue。

clip_image004.jpg

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享