本文根据:http://www.360doc.com/content/15/0312/17/20874412_454622619.shtml整理而来

  RabbitMQ具有很好的消息传递性能,同时又是开源软件,使用范围较广。
  因为自己使用的是Windows系统,因此简而言之入手点自然就是RabbitMQ提供的bat文件了。RabbitMQ提供了5个bat文件,分别是:rabbitmq-service.bat,rabbitmq-server.bat,rabbitmq-plugins.bat,rabbitmq-echopid.bat以及rabbitmqctl.bat。我们先从rabbitmq-server.bat和rabbitmqctl.bat入手。
  我们准备搭建的是拥有两个Node节点的Cluster,这里分别取名Cluster-Node1和ClusterNode2。每个Node当然要有自己的bat文件啦,因此以上两个bat就变成了4个:
rabbitmq-server-cluster-1.bat,rabbitmq-server-cluster-2.bat,rabbitmqctl-cluster-1.bat和rabbitmqctl-cluster-2.bat。这里就说一下如何修改吧。

1.配合Hosts文件  

  需要修改Windows中的hosts文件。既然要在一台机器上模拟两个Node,那么自然要配置一下两个Node的ip了,在hosts文件中添加如下两段:
    127.0.0.1 Cluster-Node1
    127.0.0.1 Cluster-Node2
  保存。

2.修改rabbitmq-server.bat

  在rabbitmq-server*中添加
    set RABBITMQ_CONFIG_FILE="C:\Program Files\RabbitMQ Server\rabbitmq_server-3.6.2\etc\cluster-1"   //其中路径为当前节点的config文件所在路径
  该参数主要用于配置RabbitMQ的Config文件,默认情况下*-server.bat中不包含该路径,所以需要手工创建。在Config文件中可以配置RabbitMQ的各种参数,对以后的学习研究很有帮助。这里第二个参数便是设置了Config文件的路径。
  然后再添加(或者直接修改也是ok的)
    set RABBITMQ_NODENAME=rabbit1@Cluster-Node1

  在单机环境下配置RabbitMQ集群时候要保证每一个节点都具有唯一的节点名称和端口号。该语句就是设置RabbitMQ节点的节点名称。

  注意:在RabbitMQ中@符号将节点标识符(rabbit1@Cluster-Node1)分为两个部分。左边是ERlang的应用程序名称,右边是服务器主机名或者IP地址。
  然后修改节点端口号:

    set RABBITMQ_NODE_PORT=9991
  最后

    set RABBITMQ_DIST_PORT=15672
  这样rabbitmq-server的两个文件就修改完了,点击保存。

3.修改Rabbitmqctl.bat 

  在rabbitmqctl-cluster-*中修改.这两个文件就很简单了: 
    set RABBITMQ_NODENAME=rabbit1@Cluster-Node1 

4. 创建集群  

  首先,先运行rabbitmqctl-cluster-*文件,将两个server启动起来。之后运行rabbitmqctl-cluster-2 stop_app,将Node2先挂起来。再运行
    rabbitmqctl-cluster-2 join_cluster rabbit1@Cluster-Node1

  这样就将Node2加入了Node1的集群。

  注意:在加入新节点时,首先要停止Erlang节点上运行的RabbitMQ程序,并重设(清空)它们的元数据。这样它们才能被加入并获取集群的元数据。

5.激活节点    

  rabbitmqctl-cluster-2 start_app

6. 查看集群状态

  其中DISC节点代表磁盘节点,RAM代表内存节点。

在Windows中单机环境下创建RabbitMQ集群的更多相关文章

  1. windows单机环境下配置tomcat集群

    场景:我们在平常联系中,需要涉及到tomcat中,但是电脑不够怎么办,肯定是在自己的电脑上模拟集群,就是装多个tomcat,这时候需要稍微配置下.如果是多个服务器,那不用配置,直接怼!!! 这里介绍的 ...

  2. RabbitMQ:Docker环境下搭建rabbitmq集群

    RabbitMQ作为专业级消息队列:如何在微服务框架下搭建 使用组件 文档: https://github.com/bijukunjummen/docker-rabbitmq-cluster 下载镜像 ...

  3. docker环境下solrcloud+zookeeper集群部署教程

    前言:两个月前的16年11月份完成的配置,使用的solr6.1和zookeeper3.4,刚刚写成blog,目前版本可能有小版本的变化. 本例完成结果为:在docker环境下部署solrcloud集群 ...

  4. windows环境下搭建Redis集群

    转载请注明出处,原文章地址: https://www.cnblogs.com/tommy-huang/p/6240083.html Redis集群: 如果部署到多台电脑,就跟普通的集群一样:因为Red ...

  5. Windows环境下搭建Redis集群(Redis-x64-3.2.100)

    一 .前期准备Redis.Ruby语言运行环境.Redis的Ruby驱动redis-xxxx.gem.创建Redis集群的工具redis-trib.rb 二.安装配置redisredis下载地址 ht ...

  6. ubuntu环境下搭建Hadoop集群中必须需要注意的问题

    博主安装的hadoop是3.1.3这里是按照厦门大学那个博客安装的,在安装与启动过程中,费了不少事,特此记录一下问题. 安装的连接: 安装环境:http://dblab.xmu.edu.cn/blog ...

  7. 【Data Cluster】真机环境下MySQL数据库集群搭建

    真机环境下MySQL-Cluster搭建文档  摘要:本年伊始阶段,由于实验室对不同数据库性能测试需求,才出现MySQL集群搭建.购置主机,交换机,双绞线等一系列准备工作就绪,也就开始集群搭建.起初笔 ...

  8. 在CentOS7环境下部署weblogic集群

    一)环境准备 服务器操作版本系统 CentOS7 weblogic版本包 weblogic1036_generic.jar(weblogic11g) JDK jdk-8u191-linux-x64.t ...

  9. 生产环境一键创建kafka集群

    前段时间公司的一个kafka集群出现了故障,由于之前准备不足,当时处理的比较慌乱.如:由于kafka的集群里topic数量较多,并且每个topic的分区数量和副本数量都不是一样的,如果按部就班的一个一 ...

随机推荐

  1. 【C语言】两种方式实现冒泡排序算法

    题目要求 编写一个C语言程序,实现基本的冒泡排序算法. 算法 冒泡排序,用一句话来总结: 一组数中,相邻的两个数进行比较.交换,将最大(小)数交换至尾(首)部,即完成了一次冒泡排序 要想对N个数字进行 ...

  2. 用代码控制退出APP

    + (void)exitApplication { AppDelegate *app = [UIApplication sharedApplication].delegate; UIWindow *w ...

  3. cassandra高级操作之JMX操作

    需求场景 项目中有这么个需求:统计集群中各个节点的数据量存储大小,不是记录数. 一开始有点无头绪,后面查看cassandra官方文档看到Monitoring章节,里面说到:Cassandra中的指标使 ...

  4. 操作系统之cache、伙伴系统、内存碎片、段式页式存储管理

    存储管理是操作系统非常重要的功能之一,本文主要介绍操作系统存储管理的基础知识,包括缓存相关知识.连续内存分配.伙伴系统.非连续内存分配.内存碎片等,并结合linux系统对这些知识进行简单的验证.文章内 ...

  5. idea + mybatis generator + maven 插件使用

    idea + mybatis generator + maven 插件使用 采用的是 generator 的 maven 插件的方式 ~ 1 pom.xml mybatis其它配置一样,下面是配置my ...

  6. chrome浏览器tab页内存占用变大,网站变慢为哪般?

    问题概述: 公司做的是BS应用. 之前我们的后台服务器程序是带状态的,用ehcache存储登录状态:这两天被我改成了redis存储,应用本身不再存储登录状态. 然后自测,我在测试某个很耗时间的网页操作 ...

  7. python黑魔法之metaclass

    最近了解了一下python的metaclass,在学习的过程中,把自己对metaclass的理解写出来和大家分享. 首先, metaclass 中文叫元类,这个元类怎么来理解呢.我们知道,在Pytho ...

  8. struts2 之 struts2数据处理

    开门见山,struts2的数据处理总结: 1. 在servlet中,如果要获取页面提交的数据要使用requerst.getParameter方法来获取,并且每次需要进行相关的类型转换工作,数据的获取及 ...

  9. 2.Ubuntu16.04安装QT5.8.0

    VSCode编辑器开发CPP:http://www.cnblogs.com/dotnetcrazy/p/6661921.html 下载QT run文件(安装包),一般都是这两个下载的比较多,我这边使用 ...

  10. [原创] JavaScript实现简单的颜色类标签云

    效果预览: 源码分享: <!DOCTYPE html><html><head lang="en"> <meta charset=" ...