本文将介绍四台机器搭建rabbitmq集群:

rabbitmq

IP和主机名(每台机器已安装RabbitMQ 3.5.6, Erlang 18.1)

  1. 192.168.87.73 localhost73

  2. 192.168.87.74 localhost74

  3. 192.168.87.75 localhost75

  4. 192.168.87.76 localhost76

将上述IP和主机名添加到hosts文件( vim /etc/hosts)

Rabbitmq的集群是依赖于erlang的集群来工作的,所以必须先构建起erlang的集群环境。Erlang的集群中各节点是通过一个magic cookie来实现的,这个cookie存放在 /var/lib/rabbitmq/.erlang.cookie 中,文件是400的权限。所以必须保证各节点cookie保持一致,否则节点之间就无法通信。

设置cookie:vi /var/lib/rabbitmq/.erlang.cookie

本例子中假设第一个节点cookie为:ZTNMCISEYCEMUZMMHFAHABC ,那么在每个节点执行以下命令:

# chmod 700 /var/lib/rabbitmq/.erlang.cookie

# echo -n "ZTNMCISEYCEMUZMMHFAHABC" > /var/lib/rabbitmq/.erlang.cookie

# chmod 400 /var/lib/rabbitmq/.erlang.cookie

开通防火墙上集群通信端口

启动防火墙:systemctl start firewalld.service

# firewall-cmd --permanent --add-port={4369/tcp,25672/tcp,5672/tcp}

# firewall-cmd --reload

组件集群

我们以localhost73为主节点,在localhost74上执行以下命令:

localhost74 # rabbitmqctl stop_app

localhost74 # rabbitmqctl join_cluster rabbit@localhost73

localhost74 # rabbitmqctl start_app

然后分别依次在localhost75、localhost76上执行即可。

更改节点属性

#rabbitmqctl stop_app –停止rabbitmq服务

#rabbitmqctl change_cluster_node_type disc –更改节点为磁盘节点

rabbitmqctl change_cluster_node_type ram –更改节点为内存节点

#rabbitmqctl start_app –开启rabbitmq服务

本例子中我们将主节点localhost73改为磁盘节点,至此我们集群搭建完毕,如下图:

查看集群状态

Rabbitmq的web管理插件启动

rabbitmq-plugins enable rabbitmq_management 启动

rabbitmq-plugins disable rabbitmq_management 关闭

开启后我们就可以访问rabbitmq自带的web管理了,访问地址:http://192.168.87.73:15672,用户名密码:guest,guest

如果不是本机访问那么需要新添加用户,因为guest这个用户只能在本机访问,所以我们要新增一个用户并赋予权限。

新增web管理用户

添加用户:rabbitmqctl add_user admin 123456

添加权限:rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*"

修改用户角色rabbitmqctl set_user_tags admin administrator

添加完用户通过地址http://192.168.87.73:15672和刚才创建的用户名和密码登录可以查看我们配置的集群:

web管理查看集群

转自

http://www.toutiao.com/i6461441222467650061/

RabbitMQ的安装及集群搭建方法 - 朱小厮的博客 - CSDN博客
http://blog.csdn.net/u013256816/article/details/53524766

RabbitMQ 高可用集群搭建及电商平台使用经验总结 - 王清培 - 博客园
http://www.cnblogs.com/wangiqngpei557/p/6158094.html

RabbitMQ常用命令 - 朱小厮的博客 - CSDN博客
http://blog.csdn.net/u013256816/article/details/53524814

RabbitMQ集群、镜像部署配置 - 爱你爱自己 - 博客园
http://www.cnblogs.com/grimm/p/5771038.html

rabbitmq集群搭建方法简介(测试机linux centos)【转】的更多相关文章

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

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

  2. RabbitMQ集群搭建和使用

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

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

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

  4. Hadoop 3.0完全分布式集群搭建方法(CentOS 7+Hadoop 3.2.0)

    本文详细介绍搭建4个节点的完全分布式Hadoop集群的方法,Linux系统版本是CentOS 7,Hadoop版本是3.2.0,JDK版本是1.8. 一.准备环境 1. 在VMware worksta ...

  5. Hadoop 2.0完全分布式集群搭建方法(CentOS7+Hadoop 2.7.7)

    本文详细介绍搭建4个节点的完全分布式Hadoop集群的方法,Linux系统版本是CentOS 7,Hadoop版本是2.7.7,JDK版本是1.8. 一.准备环境 1. 在VMware worksta ...

  6. RabbitMq 集群搭建

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

  7. CentOS 7 下 RabbitMQ 集群搭建

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

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

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

  9. RabbitMQ集群搭建

    准备三个节点,系统为CentOS7 Node IP rabbitmq01 172.50.0.64 rabbitmq02 172.50.0.65 rabbitmq03 172.50.0.66 这里把no ...

随机推荐

  1. 【Python】Python 猜年龄的游戏

    游戏规则: 允许用户最多尝试3次 每尝试3次后,如果还没猜对,就问用户是否还想继续玩,如果回答Y或y, 就继续让其猜3次,以此往复,如果回答N或n,就退出程序 如何猜对了,就直接退出 age= cou ...

  2. MySQL配置文件简单解析

    [mysqld] basedir = /data/mysql datadir = /data/mysqldata tmpdir = /data/mysqltmpdata //mysql的查询临时目录, ...

  3. C++解析(22):父子间的冲突

    0.目录 1.同名覆盖 2.赋值兼容 3.函数重写遇上赋值兼容 4.小结 1.同名覆盖 子类中是否可以定义父类中的同名成员?如果可以,如何区分?如果不可以,为什么? 父子间的冲突: 子类可以定义父类中 ...

  4. 【转】NHibernate 各种数据库配置

    转载自:http://terrylee.cnblogs.com/archive/2006/04/05/367381.html 自己只用了Oracle 可用! 三.常见的配置示例 Castle网站为我们 ...

  5. Java发送http get/post请求,调用接口/方法

    由于项目中要用,所以找了一些资料,整理下来. GitHub地址: https://github.com/iamyong    转自:http://blog.csdn.net/capmiachael/a ...

  6. Java操作excel(POI)

    由于在项目中使用了将excel数据导入到数据库.在这里分享一下. 这里使用的POI方式,支持两种格式(xls,xlsx) package com.entity; import java.io.File ...

  7. 安装cacti监控系统

    1 安装snmp [root@xxxx ~]# yum -y install net-snmp* 2 安装rddtool 3 创建数据库 cacti, 导入 cd xx/cacti/cacti.sql ...

  8. js通过生成临时表单再删除的方式向后台提交数据(模拟ajax的post提交但还要跳转页面不返回数据)以及 struts向前台返回文件下载及防止中文乱码处理

    为了避免发送数据中有特殊字符,发送时用 encodeURIComponent 编码 (其实这个 if中是直接通过浏览器下载文件的方法,else是向后台传数据的方法) struts后台Action处理接 ...

  9. 学习 opencv---(13)opencv霍夫变换:霍夫线变换,霍夫圆变换

    在本篇文章中,我们将一起学习opencv中霍夫变换相关的知识点,以及了解opencv中实现霍夫变换的HoughLines,HoughLinesP函数的使用方法,实现霍夫圆变换的HoughCircles ...

  10. 使用jconsole工具来监控java运行情况

    参考:http://blog.163.com/lucas_nina/blog/static/185960149201493034258448/   经验证OK   jconsole是jdk自带的工具. ...