浅析RabbitMQ 集群

浅析RabbitMQ 集群

1.1  基础安装

角色

IP地址

主机名

MQ版本

Master

192.168.103.83

rabbit-jxs-10383

3.5.2-1

slave

192.168.103.84

rabbit-jxs-10384

3.5.2-1

1)  配置yum 源 (Master/slave 同时配置)

yum -y install epel-release

1)    安装erlang (Master/slave 同时配置)

Yum –y install erlang

http://www.rabbitmq.com/releases/rabbitmq-server/v3.5.2/rabbitmq-server-3.5.2-1.noarch.rpm

2)    安装RabbitMQ (Master/slave 同时配置)

rpm –vih rababitmq-server-3.5.2-1.noarch.rpm

3)    修改主机名

a)      Hostname rabbit-jxs-10383 #slave

b)    Vim /etc/sysconfig/network

• Hostname= rabbit-jxs-10383

c)      Vim /etc/hosts (Master/slave 同时配置)

• 192.168.103.83 rabbit-jxs-10383

• 192.168.103.84 rabbit-jxs-10384

1.2 MQ Master配置

d)    MQ WEB 配置

• [rabbitmq_management,rabbitmq_management_agent].

e)    MQ 服务配置

[root@rabbit-jxs-10383 rabbitmq]# cat rabbitmq.conf

% This file managed by Puppet

% Template Path: rabbitmq/templates/rabbitmq.config

[

{rabbit, [

{default_user, <<"autohome">>},

{default_pass, <<"S7!CUy3lZ5;_[K">>},

{tcp_listeners,[5672]},

{cluster_partition_handling, ignore}

]},

{kernel, [

]}

].

% EOF

f)      MQ 环境变量配置

[root@rabbit-jxs-10383 rabbitmq]# cat rabbitmq-env.conf

RABBITMQ_NODE_PORT=5672

MNESIA_BASE=/data/rabbitmq/data

LOG_BASE=/data/rabbitmq/log

g)    MQ 创建目录

•  Mkdir /data/rabitmq/data –p

•  Mkdir /data/rabbitmq/log –p

•  Chown rabbitmq:rabbitmq /data/rabbitmq –R

h)    MQ启动服务

•  Service rabbitmq-serve restart

•  Chkconfig rabbitmq-server on

i)      MQ 端口监听

[root@rabbit-jxs-10383 rabbitmq]# netstat -tnpl |grep 567

tcp        0      0 0.0.0.0:5672                0.0.0.0:*                  LISTEN      10020/beam.smp

tcp        0      0 0.0.0.0:25672              0.0.0.0:*                  LISTEN      10020/beam.smp

tcp        0      0 0.0.0.0:15672              0.0.0.0:*                  LISTEN      10020/beam.smp

[root@rabbit-jxs-10383 rabbitmq]#

4)    MQ slave 服务配置

a)      同步Master RabbitMQ 文件配置

•  Scp –p 30000 192.168.103.83:/etc/rabbitmq/* /etc/rabbitmq/

•  Chown rabbitmq:rabbitmq –R /etc/rabbitmq/

b)    MQ 创建工作目录

•  Mkdir /data/rabbitmq/data –p

•  Mkdir /data/rabbitmq/log –p

•  Chown rabbitmq:rabbitmq –R /data/rabbitmq

c)      同步Master Rabbitmq .erlang.cookie

•  Scp –p 30000 192.168.103.83:/var/lib/rabbitmq/.erlang.cookie ./var/lib/rabbitmq/

• Chown rabbitmq:rabbitmq /var/lib/rabbitmq

d)    启动MQ slave  服务

1.Service rabbitmq-server restart

2.chkconfig rabbitmq on

1.3 MQ 群集配置 (Mater 操作)

e)    停止Master MQ

•rabbitmqctl stop_app

f)      清空Master MQ信息

• rabbitmqctl reset

g)    加入10384 到MQ集群中

• rabbitmqctl  join_cluster rabbit@rabbit-jxs-10384

h)    启动MQmaster 服务

•rabbitmqctl start_app

i)      查看状态

[root@rabbit-jxs-10383 ~]# rabbitmqctl cluster_status

Cluster status of node 'rabbit@rabbit-jxs-10383' ...

[{nodes,[{disc,['rabbit@rabbit-jxs-10383','rabbit@rabbit-jxs-10384']}]},

{running_nodes,['rabbit@rabbit-jxs-10384','rabbit@rabbit-jxs-10383']},

{cluster_name,<<"rabbit@rabbit-jxs-10383">>},

{partitions,[]}]

1.4 MQ 后续工作

1) 创建Rabbit 管理用户

a)      rabbitmqctl add_user admin admin

2) 赋予用户权限

a)      rabbitmqctl set_user_tags admin administrator

3) MQ 镜像实现

a)      rabbitmqctl set_policy ha-all "^" '{"ha-mode":"all"}'

4) 完成MQ配置

a)      http://192.168.103.84:15672

RabbitMQ 的详细介绍:请点这里
RabbitMQ 的下载地址:请点这里

相关推荐