RabbitMQ 官网 https://www.rabbitmq.com/

小编使用的系统环境是CentOS7.4

系统 IP hostname
CentOS7.4 1.1.1.1 hostname01
CentOS7.4 1.1.1.2 hostname02

一、下载

格外强调,注意RabbitMQ与erlang的版本是否匹配

查看匹配网址 https://www.rabbitmq.com/which-erlang.html

  • erlang22.3

  • rabbitmq3.8.3

二、安装

1,安装erlang

解压erlang

  1. tar -zxvf otp_src_22.3.tar.gz

准备erlang编译工具

  1. yum install make gcc gcc-c++ build-essential openssl openssl-devel unixODBC unixODBC-devel kernel-devel m4 ncurses-devel

创建文件夹

  1. mkdir -p /usr/local/erlang

编译

  1. cd otp_src_22.3
  2. ./configure --prefix=/usr/local/erlang --without-javac
  3. make && make install

环境变量配置

  1. vi /etc/profile

配置

  1. export ERLANG_HOME=/usr/local/erlang
  2. export PATH=${ERLANG_HOME}/bin:${PATH}

刷新配置

  1. source /etc/profile

创建软连

  1. ln -s /usr/local/erlang/bin/erl /usr/local/bin/erl

测试

  1. erl

2,安装 socat

  1. yum install -y socat

3,安装rabbitmq

  1. rpm -ivh --nodeps rabbitmq-server-3.8.3-1.el7.noarch.rpm

4,修改配置

  1. vi /usr/lib/rabbitmq/lib/rabbitmq_server-3.8.3/ebin/rabbit.app

修改 loopback_users 中的 [<<"guest">>], 只保留 []

heartbeat 为 5

启用web管理页面

  1. rabbitmq-plugins enable rabbitmq_management

5,启动rabbitmq

启动

  1. rabbitmq-server start &

启动内容检查

  1. rabbitmq-plugins list

三、开始集群

RabbitMQ事基于erlang的,所以部署RabbitMQ集群,首先要处理erlang的cookie。

配置从机的cookie

首先在主节点查询cookie,一般cookie会存在两个位置

第一个位置在

  1. ll -la /root

第二个位置在

  1. ll -la /var/lib/rabbitmq/

为了避免错误,将上面两个cookie分别复制到从机上的对应位置。

注意点:复制完成后,将文件权限改为400

  1. chmod 400 .erlang.cookie

配置hosts

分别在主机、从机上配置hosts

查询hostname

  1. cat /etc/hostname

配置hosts

  1. vi /etc/hosts

增加如下配置

  1. # 主ip + 主hostname
  2. 1.1.1.1 hostname01
  3. # 从ip + 从hostname
  4. 1.1.1.2 hostname02

配置集群

这一步仅仅是在从机上操作,主机启动RabbitMQ即可。

  1. # 后台启动从机
  2. ./rabbitmq-server -deched
  3. ./rabbitmqctl stop_app
  4. # 这里的hostname01是指主机的hostname
  5. ./rabbitmqctl join_cluster rabbit@hostname01
  6. ./rabbitmqctl start_app

至此,RabbitMQ集群配置已完成。

四、验证

在图形化界面即可看到集群结果

RabbitMQ镜像集群搭建的更多相关文章

  1. RabbitMQ之集群搭建

    1.RabbitMQ集群模式RabbitMQ集群中节点包括内存节点(RAM).磁盘节点(Disk,消息持久化),集群中至少有一个Disk节点. 2.普通模式(默认)        对于普通模式,集群中 ...

  2. RabbitMQ入门教程(十四):RabbitMQ单机集群搭建

    原文:RabbitMQ入门教程(十四):RabbitMQ单机集群搭建 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://b ...

  3. 部署rabbitMQ镜像集群实战测试

    部署rabbitMQ镜像集群 版本信息 rabbit MQ: 3.8.5 Erlang: 官方建议最低21.3 推荐22.x 这里用的是23 环境准备 主机规划 主机 节点 172.16.14.3 磁 ...

  4. rabbitmq3.6.5镜像集群搭建以及haproxy负载均衡

    一.集群架构 后端75.103.69分别是3台rabbitmq节点做镜像集群,前端103用haproxy作为负载均衡器 二.安装rabbitmq节点 参照 https://www.cnblogs.co ...

  5. Centos7的rabbitmq镜像集群

    1.下载RabbitMQ vim /etc/hosts10.10.21.197 rabbit110.10.21.198 rabbit2 #分别命名hostname rabbit1hostname ra ...

  6. RabbitMQ单机集群搭建出现Error: unable to perform an operation on node 'rabbit1@ClusterNode1'

    参考链接:https://www.cnblogs.com/daryl/archive/2017/10/13/7645749.html 全部步骤和参考链接相同. 前八部都正常,在第九步会报错Error: ...

  7. rabbitmq普通集群搭建详细步骤

    由于工作需求,需要安装rabbitmq,学习之余,记录一下安装过程 准备基础编译环境yum install gcc glibc-devel make ncurses-devel openssl-dev ...

  8. rabbitMq镜像集群

    rabbitMq延迟投递的方案 1 把消息记录到数据路,通过定时器进行刷新 2 TTL 加上死信队列 :通过路由把过期的消息同步到死信队列,通过死信队列的消费者进行消费 3

  9. rabbitmq+haproxy+keepalived实现高可用集群搭建

    项目需要搭建rabbitmq的高可用集群,最近在学习搭建过程,在这里记录下可以跟大家一起互相交流(这里只是记录了学习之后自己的搭建过程,许多原理的东西没有细说). 搭建环境 CentOS7 64位 R ...

随机推荐

  1. 5分钟入门pandas

    pandas是在数据处理.数据分析以及数据可视化上都有比较多的应用,这篇文章就来介绍一下pandas的入门.劳动节必须得劳动劳动 1. 基础用法 以下代码在jupyter中运行,Python 版本3. ...

  2. Taurus.MVC 2.3.2 :WebAPI 文档集成测试功能及附加<%# JS执行功能语法 %>

    前言: 前些天有网友提到了那个界面丑陋的SwaggerUI,让我想起了多年前实现的WebAPI文档未完成的功能点,于是,动手了,便有了本文的内容. 开源地址:https://github.com/cy ...

  3. spring 事务管理配置

    本篇文章只涉及spring事务的配置,不进行事务的介绍. spring通过PlatformTransactionManager接口作为事务管理器来进行事务的管理,它本身并不进行事务的创建以及相关操作, ...

  4. openshift 4.3 Istio的搭建(istio 系列一)

    openshift 4.3 Istio的搭建 本文档覆盖了官方文档的Setup的所有章节 目录 openshift 4.3 Istio的搭建 安装Istio openshift安装Istio 更新is ...

  5. [hdu3644 A Chocolate Manufacturer's Problem]模拟退火,简单多边形内最大圆

    题意:判断简单多边形内是否可以放一个半径为R的圆 思路:如果这个多边形是正多边形,令r(x,y)为圆心在(x,y)处多边形内最大圆的半径,不难发现,f(x,y)越靠近正多边形的中心,r越大,所以可以利 ...

  6. 超过百万的StackOverflow Flutter 问题-第二期

    老孟导读:一个月前分享的<超过百万的StackOverflow Flutter 问题-第一期>受到很多朋友的喜欢,非常感谢大家的支持,在文章末尾有第一期的链接,希望此文能对你有所帮助. N ...

  7. python --内建结构 汉诺塔结构

    规则: 1.每次移动一个盘子 2.任何时候大盘子在下面,小盘子在上面 方法: 1.n=1:直接将A上的盘子移动到c 上面,A->C 2.n=2: 1>A->B 2>A-> ...

  8. Navicat15 for Mysql激活教程

    1.下载Navicat Premium Navicat15链接:http://www.navicat.com.cn/download/navicat-premium,选择相应版本,这里选择window ...

  9. (Python基础教程之十二)Python读写CSV文件

    Python基础教程 在SublimeEditor中配置Python环境 Python代码中添加注释 Python中的变量的使用 Python中的数据类型 Python中的关键字 Python字符串操 ...

  10. Python中range, np.arange, np.linspace的区别

    目录 range np.arange np.linspace range 特点 range()是python内置函数,指定开始值,终值和步长生成等差数列的一维数组 不包含终值 步长只能是整数,生成整数 ...