Rabbitmq集群安装与配置

一、rabbitmq安装环境准备

1、安装环境准备

这里,我们以两个节点为例进行安装,一个节点为内存节点,另一个节点为硬盘节点,具体可根据自己需要分配节点。

安装系统

主机名称

IP地址

备注

Cnetos6.8

Server1

10.0.0.13

内存节点

Centos6.8

Server2

10.0.0.14

硬盘节点

2、修改两台节点主机hosts文件使之能互相解析

在两台主机的hosts文件中分别执行如下操作:

]#cat >> /etc/hosts <<EOF

> 10.0.0.13 server1

> 10.0.0.14 server2

> EOF

二、rabbitmq的安装(两台节点上需要安装同样的软件)

1、安装所需软件

(1)安装socat

]#wget http://dl.fedoraproject.org/pub/epel/6/x86_64//socat-1.7.2.3-1.el6.x86_64.rpm

]#yum localinstall -y socat-1.7.2.3-1.el6.x86_64.rpm

(2)安装erlang19.0.4

]#wget  http://www.rabbitmq.com/releases/erlang/erlang-19.0.4-1.el6.x86_64.rpm

]#yum localinstall -y erlang-19.0.4-1.el6.x86_64.rpm

(3)安装rabbitmq-server

]#wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.2/rabbitmq-server-3.6.2-1.noarch.rpm

]#yum localinstall -y erlang-19.0.4-1.el6.x86_64.rpm

2、配置启动rabbitmq

(1)启动rabbitmq

 ~]# service rabbitmq-server start    #启动rabbitmq

 ~]# service rabbitmq-server status   #查看rabbitmq的运行状态

(2)开启扩展管理,开启后可以通过网页登录管理rabbitmq,登录地址为服务器加端口号15672

~]# rabbitmq-plugins enable rabbitmq_management

~]# ss -tanl | grep 5672   #开启扩展管理后,才能看到端口号15672,有时看不到,需要重启rabbitmq

LISTEN     0      128                       :::5672                   ::*     

LISTEN     0      128                       *:25672                  *:*     

LISTEN     0      128                       *:15672                  *:*     

三、rabbitmq集群配置

1、在配置集群前需要同步elrang cookie

将一台节点的elrang cookie同步到其他机器节点(有些版本的elrang cookie存放位置为/var/lib/rabbitmq/..erlang.cookie,有些版本的erlang cookie存放位置为~/..erlang.cookie)。

以下操作均需要在需要同步的机器上操作,有多个节点时需要在其他节点上执行相同的操作,此处我们将10.0.0.13的elrang cookie同步到其他节点。

~]# rabbitmqctl stop   #在同步前停止rabbitmq

~]# scp root@10.0.0.13:/var/lib/rabbitmq/.erlang.cookie /var/lib/rabbitmq/.erlang.cookie

~]# rabbitmqctl start  #在同步后启动rabbitmq

2、创建rabbitmq集群

~]#rabbitmqctl stop_app

~]#rabbitmqctl reset

~]#rabbitmqctl join_cluster rabbit@n1  #默认创建的为磁盘节点,如果创建内存节点需要在此命令后面加--ram,rabbitmq中至少需要一个磁盘节点

~]#rabbitmqctl start_app

3、验证集群

Rabbitmq集群创建完成后可通过命令“ rabbitmqctl cluster_status”来验证集群,如出现如下信息则说明rabbitmq集群创建成功。

 ~]# rabbitmqctl cluster_status

 Cluster status of node rabbit@server1 ...

[{nodes,[{disc,[rabbit@server1,rabbit@server2]}]},

 {running_nodes,[rabbit@server2,rabbit@server1]},

 {cluster_name,<<"rabbit@server1">>},

 {partitions,[]},

 {alarms,[{rabbit@server2,[]},{rabbit@server1,[]}]}]

4、为Rabbitmq添加用户

由于为rabbitmq做了集群,所以在一台设备上的操作,会同步到其他节点,所以添加用户只需在一台节点上添加,会同步到其他节点。

 ~]# rabbitmqctl  add_user username password   #为rabbitmq添加用户并设置密码

 ~]# rabbitmqctl set_user_tags username administrator  #为创建的用户添加标签,即将用户加入到某个组中

Rabbitmq集群安装配置的更多相关文章

  1. RabbitMQ集群安装配置+HAproxy+Keepalived高可用

    RabbitMQ集群安装配置+HAproxy+Keepalived高可用 转自:https://www.linuxidc.com/Linux/2016-10/136492.htm rabbitmq 集 ...

  2. kubernetes rabbitmq 集群安装配置

    生成secret来保存relang-cookie: secret.yml文件: apiVersion: v1kind: Secretmetadata: name: rabbit-cookietype: ...

  3. 1.rabbitmq 集群安装及负载均衡设置

    标题 : 1.rabbitmq 集群安装及负载均衡设置 目录 : RabbitMQ 序号 : 1 vim /etc/pam.d/login #对于64位系统,在文件中添加如下行 session req ...

  4. CentOS下Hadoop-2.2.0集群安装配置

    对于一个刚开始学习Spark的人来说,当然首先需要把环境搭建好,再跑几个例子,目前比较流行的部署是Spark On Yarn,作为新手,我觉得有必要走一遍Hadoop的集群安装配置,而不仅仅停留在本地 ...

  5. hbase单机环境的搭建和完全分布式Hbase集群安装配置

    HBase 是一个开源的非关系(NoSQL)的可伸缩性分布式数据库.它是面向列的,并适合于存储超大型松散数据.HBase适合于实时,随机对Big数据进行读写操作的业务环境. @hbase单机环境的搭建 ...

  6. hive集群安装配置

    hive 是JAVA写的的一个数据仓库,依赖hadoop.没有安装hadoop的,请参考http://blog.csdn.net/lovemelovemycode/article/details/91 ...

  7. 集群安装配置Hadoop具体图解

    集群安装配置Hadoop 集群节点:node4.node5.node6.node7.node8. 详细架构: node4 Namenode,secondnamenode,jobtracker node ...

  8. spark集群安装配置

    spark集群安装配置 一. Spark简介 Spark是一个通用的并行计算框架,由UCBerkeley的AMP实验室开发.Spark基于map reduce 算法模式实现的分布式计算,拥有Hadoo ...

  9. 原创:centos7.1下 ZooKeeper 集群安装配置+Python实战范例

    centos7.1下 ZooKeeper 集群安装配置+Python实战范例 下载:http://apache.fayea.com/zookeeper/zookeeper-3.4.9/zookeepe ...

随机推荐

  1. 011.Adding Search to an ASP.NET Core MVC app --【给程序添加搜索功能】

    Adding Search to an ASP.NET Core MVC app 给程序添加搜索功能 2017-3-7 7 分钟阅读时长 作者 本文内容 1.Adding Search by genr ...

  2. angularjs select标签中参数的传递

    今天做的一个demo中需要一个下拉选择框,并根据所选择的内容向服务器发送请求. 首先百度了一下angularjs关于select的使用,一种采用ng-repeat的方式. <select ng- ...

  3. mysql @value := 用法

    背景 有这么一张表,记录名字和分数,现在需要按照成绩排名,存在并列名次的情况 解决方法 思路:按照score从大到小排序,第一行数据就是第一名,第二行就是第二名......需要判断当前行的score和 ...

  4. Android 开场动画

    呼,忙了两天了这个,找了各种资料,勉勉强强实现我的功能,这个还得改进一下,线程方面的知识没有学到多少,弄了线程画UI有着各种bug,无奈..就这样跳过先了,哪一天有时间在回来搞一下. 正文———— 要 ...

  5. 原型及原型链,以及prototype和__proto__属性(笔记便于以后复习)

    首先,js的数据结构有 原始类型(5种):Boolean.Number.String.Null.Underfined, 然后是引用类型:Array.Date.Error.RegExp.Function ...

  6. VS2015 'utf-8' codec can't decode byte

    近日装好Visual Studio 2015 和PTVS准备练习Python开发,遇到一个棘手的问题,编码错误,提示如下: SyntaxError: (unicode error) 'utf-8' c ...

  7. linux下权限问题思考

    今天遇到一些关于linux的权限问题,文件的所有者,文件的所属组等问题,文件对于所有者所属组是非常敏感的,同一个脚本所属者所属组不同,得到执行的结果也是差很多的.

  8. 写给后端的前端笔记:定位(position)

    写给后端的前端笔记:定位(position) 既然都写了一篇浮动布局,干脆把定位(position)也写了,这样后端基本上能学会css布局了. 类别 我们所说的定位position主要有三类:固定定位 ...

  9. Tomcat启动:Container StandardContext[] has not been started

    Container StandardContext[] has not been started\root.xml 初始化失败,检查数据源配置

  10. Express异步进化史

    1.导言 在 Javascript 的世界里,异步(由于JavaScript的单线程运行,所以JavaScript中的异步是可以阻塞的)无处不在. Express 是 node 环境中非常流行的Web ...