erlang rabbitmq-server安装

erlang rabbitmq-server安装

yum -y install   xsltproc fop tk unixODBC unixODBC-devel make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel

yum –y install  erlang

yum –y  install rabbitmq-server

 


服务器集群信息,确保节点之间主机名可以相互解析。

172.16.230.166                 master

172.16.230.167                 slave1

172.16.230.168                 slave2

172.16.230.166、167、168 启动rabbitmq进程

/etc/init.d/rabbitmq-server start

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

[root@master ~]# cd /var/lib/rabbitmq/

[root@master ~]# tar  -zcvf  erlang.cookie.tar.gz   .erlang.cookie

[root@master ~]#scp erlang.cookie.tar.gz  172.16.230.167:/var/lib/rabbitmq/

[root@master ~]#scp erlang.cookie.tar.gz  172.16.230.168:/var/lib/rabbitmq/

[root@slave1 ~]# cd /var/lib/rabbitmq/; tar –zxvf erlang.cookie.tar.gz

[root@slave2 ~]# cd /var/lib/rabbitmq/; tar –zxvf erlang.cookie.tar.gz

前期准备工作已经完成,下面就来开始rabbitmq集群的配置,有了erliang的集群环境,rabbitmq集群环境构建起来很简单,只需要把其他节点添加到一台节点中即可,这里采用将slave1 添加到master中  ,slave2添加到slave1上的方法。

集群中有两种节点:
1 内存节点:只保存状态到内存(一个例外的情况是:持久的queue的持久内容将被保存到disk)
2 磁盘节点:保存状态到内存和磁盘。

  1. 首先要执行3台rabbitmq 相互隔离

[root@master ~]# rabbitmq-server  –detached 

[root@slave1 ~]# rabbitmq-server  –detached 

[root@slave2 ~]# rabbitmq-server  –detached 

  1. 查看rabbitmq集群状态

[root@master ~]# rabbitmqctl  cluster_status

[root@slave1 ~]# rabbitmqctl  cluster_status

[root@slave2 ~]# rabbitmqctl  cluster_status

  1. 创建集群,slave1 与 slave2 为内存节点

[root@slave1 ~]# rabbitmqctl stop_app    #关闭本机集群节点

[root@slave1 ~]# rabbitmqctl reset       #重新设置

[root@slave1 ~]# rabbitmqctl join_cluster –ram  rabbit@master

[root@slave1 ~]# rabbitmqctl stop_app

查看集群状态

[root@master ~]# rabbitmqctl  cluster_status

[root@slave1 ~]# rabbitmqctl  cluster_status

Slave2 加入到slave1

[root@slave2~]# rabbitmqctl stop_app    #关闭本机集群节点

[root@slave2 ~]# rabbitmqctl reset       #重新设置

[root@slave2 ~]# rabbitmqctl join_cluster –ram  rabbit@master

[root@slave2~]# rabbitmqctl stop_app

查看集群状态

[root@master ~]# rabbitmqctl  cluster_status

[root@slave1 ~]# rabbitmqctl  cluster_status

[root@slave2 ~]# rabbitmqctl  cluster_status

  1. 退出节点

[root@master~]# rabbitmqctl stop_app    #关闭本机集群节点

[root@ master ~]# rabbitmqctl reset       #重新设置

izhhhi[root@ master ~]# rabbitmqctl start_app

原文地址:https://www.cnblogs.com/fengjian2016/p/5647199.html