Centos6.5 安装 RabbitMQ3.6.5


一、安装编译工具

yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel

二、安装Erlang

1 下载erlang

http://erlang.org/download/otp_src_19.0.tar.gz

2 解压

tar xvf otp_src_19.0.tar.gz

cd otp_src_19.0

3 配置 '--prefix'指定的安装目录

./configure --prefix=/usr/local/erlang --with-ssl -enable-threads -enable-smmp-support -enable-kernel-poll --enable-hipe --without-javac

4 安装

make && make install

5 配置erlang环境变量

vim /etc/profile

#在文件末尾添加下面代码 'ERLANG_HOME'等于上一步'--prefix'指定的目录

ERLANG_HOME=/usr/local/erlang

PATH=$ERLANG_HOME/bin:$PATH

export ERLANG_HOME

export PATH

6 使环境变量生效

source /etc/profile

7 输入命令检验是否安装成功

erl

#如下输出表示安装成功

8 构建起erlang的集群环境

由于做rabbitmq集群之前,必须要做erlang集群。因此在erlang部署完成后,可以立即配置erlang集群。配置erlang集群的办法是让需要构建集群的几台系统的.erlang.cookie内容一致。这个文件在$HOME/目录下,将其中一台节点上的.erlang.cookie值复制下来保存到其他节点上,或者使用scp的方法也可,但是要注意文件的权限和属主属组,文件的属性为只读。

三、安装RabbitMQ集群

1下载RabbitMQ

官方下载地址:http://www.rabbitmq.com/download.html

2、解压rabbitmq

官方给的包是xz压缩包,所以需要使用xz命令

xz -d rabbitmq-server-generic-unix-3.6.5.tar.xz

3、再用tar命令解压

tar -xvf rabbitmq-server-generic-unix-3.6.5.tar

4、开启管理页面插件

cd ./rabbitmq-3.6.5/sbin/

./rabbitmq-plugins enable rabbitmq_management

如果需要修改rabbitmq数据存储位置:

修改:rabbitmq-defaults文件的

MNESIA_BASE=${SYS_PREFIX}/var/lib/rabbitmq/mnesia

标红出修改为数据存储路径

5、服务的启动

启动

#启动命令,该命令ctrl+c后会关闭服务

./rabbitmq-server

#在后台启动Rabbit

./rabbitmq-server -detached

如果需要关闭服务:

方法一:./rabbitmqctl stop

方法二:关闭服务(kill) 找到rabbitmq服务的pid   [不推荐]

ps -ef|grep rabbitmq

kill -9 ****

6. 添加管理员账号

#进入RabbitMQ安装目录

cd /usr/local/rabbitmq-3.6.5/sbin

#添加用户

#rabbitmqctl add_user Username Password

./rabbitmqctl add_user rabbitadmin 123456

#分配用户标签

#rabbitmqctl set_user_tags User Tag

#[administrator]:管理员标签

./rabbitmqctl set_user_tags rabbitadmin administrator

7、配置防火墙策略

vim /etc/sysconfig/iptables

#RabbitMQ

-A INPUT -p tcp -m state --state NEW -m tcp --dport 15672 -j ACCEPT

-A INPUT -p tcp -m state --state NEW -m tcp --dport 25672 -j ACCEPT

-A INPUT -p tcp -m state --state NEW -m tcp --dport 5672 -j ACCEPT

-A INPUT -p tcp -m state --state NEW -m tcp --dport 4369 -j ACCEPT

-A INPUT -p tcp -m state --state NEW -m tcp --dport 5671 -j ACCEPT

#RabbitMQ

8、测试登录管理界面

浏览器输入地址:http://服务器IP地址:15672/ 
安装完成之后如果机器有iptables,需要开放端口

9、
确保节点之间主机名称可以相互解析。

10.29.1.177     SZ0PRDMON00AP0001

10.29.1.178     SZ0PRDMON00AP0002

10、建立集群

由于我们需要把177作为磁盘节点(disk),把178作为内存节点,而rabbitmq的默认模式为磁盘节点。

178上做如下操作:

./rabbitmqctl
stop_app
./rabbitmqctl reset
./rabbitmqctl join_cluster --ram rabbit@rabbitmq1
./rabbitmqctl start_app

查看节点状态:rabbitmqctl cluster_status

你会分别看到如下的内容

rabbitmq1查看的集群状态结果

[root@rabbitmq1
sbin]# ./rabbitmqctl cluster_status
Cluster status of node rabbit@rabbitmq1 ...
[{nodes,[{disc,[rabbit@rabbitmq1]},{ram,[rabbit@rabbitmq2]}]},
{running_nodes,[rabbit@rabbitmq2,rabbit@rabbitmq1]},
{partitions,[]}]
...done.

rabbitmq2查看的集群状态结果

[root@rabbitmq2
sbin]# ./rabbitmqctl cluster_status
Cluster status of node rabbit@rabbitmq2 ...
[{nodes,[{disc,[rabbit@rabbitmq1]},{ram,[rabbit@rabbitmq2]}]},
{running_nodes,[rabbit@rabbitmq1,rabbit@rabbitmq2]},
{partitions,[]}]
...done.

两台机器的内容几乎是一样的,这样的话你的集群就建立成功了.

普通的集群模式已经建立完成了

四、 HAPROXY 配置

HAProxy的安装使用非常简单,在Centos下直接yum install haproxy,然后更改/etc/haproxy/haproxy.cfg
文件即可

以下是haproxy-1.5.4版本的配置:

global

log        
127.0.0.1 local2

chroot     
/var/lib/haproxy

pidfile    
/var/run/haproxy.pid

maxconn    
4000

user       
haproxy

group      
haproxy

daemon

stats socket /var/lib/haproxy/stats

defaults

mode                    tcp

log                     global

option                  tcplog

option                  dontlognull

option                  redispatch

retries                 3

timeout queue           1m

timeout connect         10s

timeout client          1m

timeout server          1m

timeout check           10s

maxconn                 3000

listen stats

mode http

bind 0.0.0.0:1080

stats enable

stats hide-version

stats uri /haproxy

stats realm
Haproxy\ Statistics

stats auth
admin:admin

stats admin if TRUE

listen
rabbitmq_cluster

bind 0.0.0.0:5672

mode tcp

log global

balance roundrobin

server   主机名 IP:5672 check inter 2000 rise 2 fall 3。

完成之后启动:

haproxy 
-f  /etc/haproxy/haproxy.cfg

检测端口 1080和5672是否存在

访问 localhost:1080/haproxy  用户名/密码:admin/admin

类似如上的界面就表示配置成功。

在Monitor1和2服务器分别修改monitor-context.properties里面相应的地址需要修改成UAT zookeeper环境的。

修改Tomcat下面的server.xml的配置:

添加数据源:

添加文件的路径:

修改/home/software/tomcat7/conf/
catalina.properties

rabbit-mq cluster安装的更多相关文章

  1. rabbit mq的安装

    rabbit mq的安装分为window的安装和linux的安装. window的安装: 1,需要安装 安装Erlang  下载地址http://www.erlang.org/downloads 我选 ...

  2. celery+Rabbit MQ实战记录

    基于以前的一篇文章,celery+Rabbit MQ的安装和使用, 本文更加详细的介绍如何安装和使用celey, Rabbit MQ. 并记录在使用celery时遇到的一些问题. 1.安装 Rabbi ...

  3. 在 Windows 上安装Rabbit MQ 指南

    rabbitMQ是一个在AMQP协议标准基础上完整的,可服用的企业消息系统.他遵循Mozilla Public License开源协议.采用 Erlang 实现的工业级的消息队列(MQ)服务器. Ra ...

  4. windows下的php rabbit mq安装、配置

    http://www.cnblogs.com/shanyou/p/4067250.html 这篇博文写的rabbit mq和erlang的安装以及rabbitmq可视化插件的一些操作 接下去开始安装P ...

  5. (转)在 Windows 上安装Rabbit MQ 指南

    rabbitMQ是一个在AMQP协议标准基础上完整的,可服用的企业消息系统.他遵循Mozilla Public License开源协议.采用 Erlang 实现的工业级的消息队列(MQ)服务器. Ra ...

  6. Rabbit MQ 学习 (一)Window安装Erlang环境

    之前也没有用过Rabbit MQ ,最近正在学习中,记性不好,特意记一下. 百度一下 先得 安装 Erlang 并且 设置环境变量. 在Erlang 官网去下载,那个慢呀... 还好CSDN 里有人提 ...

  7. celery rabbit mq 详解

    Celery介绍和基本使用 Celery 是一个 基于python开发的分布式异步消息任务队列,通过它可以轻松的实现任务的异步处理, 如果你的业务场景中需要用到异步任务,就可以考虑使用celery, ...

  8. Rabbit MQ 入门指南

    rabbitMQ是一个在AMQP协议标准基础上完整的,可服用的企业消息系统.他遵循Mozilla Public License开源协议.采用 Erlang 实现的工业级的消息队列(MQ)服务器. Ra ...

  9. Rabbit MQ config文件解析

    Rabbit MQ config文件解析 tcp_listeners:用于监听AMQP连接的端口或主机名/对(不带TLS),默认端口:5672 2.numtcpacceptors :将接受TCP侦听器 ...

  10. 分布式消息中间件Rabbit Mq的了解与使用

    MQ(消息队列)作为现代比较流行的技术,在互联网应用平台中作为中间件,主要解决了应用解耦.异步通信.流量削锋.服务总线等问题,为实现高并发.高可用.高伸缩的企业应用提供了条件. 目前市面比较流行的消息 ...

随机推荐

  1. 51nod 1179:最大的最大公约数

    1179 最大的最大公约数 题目来源: SGU 基准时间限制:1 秒 空间限制:131072 KB 分值: 40 难度:4级算法题  收藏  关注 给出N个正整数,找出N个数两两之间最大公约数的最大值 ...

  2. 51nod 1065:最小正子段和

    1065 最小正子段和 基准时间限制:1 秒 空间限制:131072 KB 分值: 20 难度:3级算法题  收藏  取消关注 N个整数组成的序列a[1],a[2],a[3],-,a[n],从中选出一 ...

  3. Windows Server 2008 R2 ntoskrnl.exe 引起蓝屏故障,重新启动

    前不久在HP ProLiant DL360 G6的服务器上面安装了Windows Server 2008 R2,系统一到晚上凌晨就出现蓝屏.重启现象,并且在 C:\Windows\Minidump 目 ...

  4. 【STM32H7教程】第51章 STM32H7的LTDC应用之LCD汉字显示和2D图形显示

    完整教程下载地址:http://www.armbbs.cn/forum.php?mod=viewthread&tid=86980 第51章       STM32H7的LTDC应用之LCD汉字 ...

  5. Android Studio SharedPreferences

    Android 中最简单的数据存储方式 : SharedPreferences SharedPreferences 数据存储处理实际上时对一个个key——value 数据对的处理 使用SharedPr ...

  6. 18.swoole学习笔记--案例

    <?php //创建webSocket服务器 $ws=); //open $ws->on('open',function($ws,$request){ echo "新用户 $re ...

  7. CSU-ACM2020寒假集训比赛2

    A - Messenger Simulator CodeForces - 1288E 两种解法,我选择了第二种 mn很好求,联系过就是1,没联系过就是初始位置 第一种:统计同一个人两次联系之间的出现的 ...

  8. 记-OSPF学习

    LSA Type 1:Router LSA1.传播范围 :只能在本区域2.通告者 :每台路由器 (router-id作为标识)3.内容 :路由和拓扑信息show ip ospf database ro ...

  9. UVA - 1606 Amphiphilic Carbon Molecules(两亲性分子)(扫描法)

    题意:平面上有n(n <= 1000)个点,每个点为白点或者黑点.现在需放置一条隔板,使得隔板一侧的白点数加上另一侧的黑点数总数最大.隔板上的点可以看做是在任意一侧. 分析:枚举每个基准点i,将 ...

  10. c++ opencv 入门

    //类型定义 CvPoint point(2, 3); CvPoint2D32f point1(2, 3); CvPoint3D32f point2(2, 3); CvSize size(2, 3); ...