准备三个节点,系统为CentOS7

Node IP
rabbitmq01 172.50.0.64
rabbitmq02 172.50.0.65
rabbitmq03 172.50.0.66

这里把node1作为master节点。

1、修改各节点hosts

  1. # vim /etc/hosts
  2. 172.50.0.64 rabbitmq01
  3. 172.50.0.65 rabbitmq02
  4. 172.50.0.66 rabbitmq03

2、在各节点安装rabbitmq-server,并启动服务

  1. # yum install -y rabbitmq-server
  2. # systemctl start rabbitmq-server
  3. # systemctl enable rabbitmq-server

3、启用各节点RabbitMQ Web管理插件,监听15672端口

  1. # rabbitmq-plugins list
  2. # rabbitmq-plugins enable rabbitmq_management
  3. The following plugins have been enabled:
  4. mochiweb
  5. webmachine
  6. rabbitmq_web_dispatch
  7. amqp_client
  8. rabbitmq_management_agent
  9. rabbitmq_management
  10. Plugin configuration has changed. Restart RabbitMQ for changes to take effect.
  11. # systemctl start rabbitmq-server
  12. # netstat -tnlp

4、用浏览器访问

  1. http://172.16.100.186:15672/
  2. 默认账号和密码都是guest

5、将master节点的cookie文件复制到各slave节点

  1. # scp /var/lib/rabbitmq/.erlang.cookie node2:/var/lib/rabbitmq/
  2. # scp /var/lib/rabbitmq/.erlang.cookie node3:/var/lib/rabbitmq/

6、停止slave上的app,并将slave节点加入到集群

  1. # rabbitmqctl stop_app
  2. # rabbitmqctl join_cluster rabbit@node1
  3. # rabbitmqctl start_app

7、将各slave加入集群后,查看集群状态

  1. # rabbitmqctl cluster_status
  2. Cluster status of node 'rabbit@rabbitmq01' ...
  3. [{nodes,[{disc,['rabbit@rabbitmq01','rabbit@rabbitmq02',
  4. 'rabbit@rabbitmq03']}]},
  5. {running_nodes,['rabbit@rabbitmq02','rabbit@rabbitmq03',
  6. 'rabbit@rabbitmq01']},
  7. {cluster_name,<<"rabbit@rabbitmq01">>},
  8. {partitions,[]}]
  9. ...done.

8、使用haproxy创建LB集群,在haproxy server上单独创建一个配置文件

  1. # vim /etc/rabbitmq.cfg
  2. listen rabbitmq :5672
  3. mode tcp
  4. balance roundrobin
  5. server rabbit01 172.50.0.64:5672 check inter 5000
  6. server rabbit02 172.50.0.65:5672 check inter 5000
  7. server rabbit03 172.50.0.66:5672 check inter 5000
  8. listen rabbitmqui :15672
  9. mode http
  10. balance roundrobin
  11. server rabbit01 172.50.0.64:15672 check inter 5000
  12. server rabbit02 172.50.0.65:15672 check inter 5000
  13. server rabbit03 172.50.0.66:15672 check inter 5000
  14. # haproxy -f /etc/rabbitmq.cfg

9、用浏览器访问haproxy server的地址和端口

http://172.16.100.186:15672/

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

  1. RabbitMQ集群搭建和使用

    一.环境准备 1.选择RabbitMQ的版本 http://www.rabbitmq.com/changelog.html 注: 不同版本的Linux选择的RabbitMQ版本也不同,参照 http: ...

  2. RabbitMq 集群搭建

        实验环境: 操作系统为 Centos 7.2 IP hostName 192.168.190.132 node132 192.168.190.139 node139 192.168.190.1 ...

  3. centos7 rabbitmq集群搭建+高可用

    环境 [root@node1 ~]# cat /etc/redhat-release CentOS Linux release (Core) [root@node1 ~]# uname -r -.el ...

  4. CentOS 7 下 RabbitMQ 集群搭建

    环境 10.0.0.20 node1 10.0.0.21 node2 10.0.0.22 node3 搭建(在所有节点执行) 添加EPEL源 [root@node1 ~]# rpm -Uvh http ...

  5. rabbitmq集群搭建方法简介(测试机linux centos)【转】

    本文将介绍四台机器搭建rabbitmq集群: rabbitmq IP和主机名(每台机器已安装RabbitMQ 3.5.6, Erlang 18.1) 192.168.87.73 localhost73 ...

  6. rabbitmq集群搭建,镜像队列搭建

    原文地址:https://www.jianshu.com/p/11963564dd3d 教你如何从0开始搭建rabbitmq集群 一.准备工作 1.三台centos虚拟机 2.三台虚拟机都安装了doc ...

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

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

  8. RabbitMQ的安装及集群搭建方法

    RabbitMQ安装 1 安装erlang 下载地址:http://www.erlang.org/downloads 博主这里采用的是otp_src_19.1.tar.gz (200MB+) [roo ...

  9. 搭建rabbitmq集群

    查看rabbitmq日志文件 开启web管理工具 [root@controller rabbitmq]# rabbitmq-plugins list [root@controller rabbitmq ...

随机推荐

  1. 关于下载SAE日志签名认证的方法——PHP版

    之前需要下载SAE上的日志存入数据库,因此研究了下SAE的签名认证和日志下载.这个链接是SAE官方给出的API文档.https://www.sinacloud.com/doc/api.html#qia ...

  2. oozie配置安装与原理

     概述 当前开源的hadoop任务工作流管理主要有oozie和Azkaban,本文先介绍oozie的配置安装与基本运行原理. 配置安装 (参考https://segmentfault.com/a/11 ...

  3. 通过oledb驱动读取excel、csv数据丢失解决方案

    1.问题出现 在开发应用程序的过程中,比较常用一功能就是通过oledb驱动读取excel.csv.text等文件:而最近有客户反映,在使用短信平台(下载地址:http://www.sms1086.co ...

  4. 响应式布局中的CSS相对量

    一个响应式布局,要能够根据设备屏幕尺寸的改变,动态的调整页面内容,展现不同的设计风格. 在进行响应式的 CSS 代码编写过程中,经常会用到一些相对尺寸,以达到相对定位的目的.例如,常见的响应式布局中需 ...

  5. BZOJ 1606: [Usaco2008 Dec]Hay For Sale 购买干草(动态规划)

    裸的背包= =,没什么好说的= = CODE: #include<cstdio>#include<iostream>#include<algorithm>#incl ...

  6. android学习5——画图问题

    重写View中的onDraw函数可以实现画图.代码如下: @Override public void onDraw(Canvas canvas) { Paint paint = new Paint() ...

  7. 做一款直播类app

    ijkplayer 是一款做视频直播的框架, 基于ffmpeg, 支持 Android 和 iOS, 网上也有很多集成说明, 但是个人觉得还是不够详细, 在这里详细的讲一下在 iOS 中如何集成ijk ...

  8. php投票练习

    一.题目要求:建立如下两个数据库,实现投票和%的统计结果: 二.具体编写方法: (1).建立数据库: 里面的蓝色背景的表格名称就是我们所需的表格! 表格内容如下: 表名:diaoyantimu 表名: ...

  9. Log日志规范

    Overview 一个在生产环境里运行的程序如果没有日志是很让维护者提心吊胆的,有太多杂乱又无意义的日志也是令人伤神.程序出现问题时候,从日志里如果发现不了问题可能的原因是很令人受挫的.本文想讨论的是 ...

  10. 使用jquery的load方法设计动态加载,并解决被加载页面JavaScript失效问题

    一.问题分析 对于后台系统,相比大家都有所印象,知道其中的布局结构,如图: 在这种布局中我们需要将header,sidebar,footer分开,而且对于中间部分的content内容需要动态变化,即根 ...