安装所以框架支持插件
yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel unixODBC unixODBC-devel httpd python-simplejson

这里下载最新安装包 可以自行选择
#wget http://erlang.org/download/otp_src_19.2.tar.gz
http://dl.bintray.com/rabbitmq/rpm/erlang/20/el/7/x86_64/erlang-20.3.8.14-1.el7.centos.x86_64.rpm
或者
http://y-tools.up366.cn/tools/rabbitmq/erlang-19.3.6.5-1.el6.x86_64.rpm

解压erlang安装包
#tar -xzvf otp_src_19.2.tar.gz
#
#进入erlang目录
#cd otp_src_19.2
#
##编译安装erlang语言环境 prefix=/usr/local/erlang 为安装目录
##./configure —prefix=/usr/local/erlang —enable-smp-support —enable-threads —enable-sctp —enable-kernel-poll —enable-hipe —with-ssl —without-javac
##
##erlang语言编译配置选项:
##–prefix 指定安装目录
##–enable-smp-support启用对称多处理支持(Symmetric Multi-Processing对称多处理结构的简称)
##–enable-threads启用异步线程支持
##–enable-sctp启用流控制协议支持(Stream Control Transmission Protocol,流控制传输协议)
##–enable-kernel-poll启用Linux内核poll
##–enable-hipe启用高性能Erlang –with-ssl 启用ssl包 –without-javac
##不用java编译
#
#开始安装编译:
#make && make install
#
#配置erlang环境变量
#vim /etc/profile
#export PATH=$PATH:/usr/local/erlang/bin
#source /etc/profil
#
##yum安装方式
yum install erlang

安装 rabbitmq server
有三台机器 分别是
mq1 192.168.15.131
mq2 192.168.15.132
mq3 192.168.15.133

分别修改这三台机器的hosts 和hostname
vim /etc/hostname
mq1.loaclhost

vim /etc/hosts
192.168.15.131 mq1
192.168.15.132 mq2
192.168.15.133 mq3

2.Install RabbitMQ Server
    # wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.2/rabbitmq-server-3.6.2-1.noarch.rpm

http://dl.bintray.com/rabbitmq/rpm/rabbitmq-server/v3.7.x/el/7/noarch/rabbitmq-server-3.7.9-1.el7.noarch.rpm
yum install rabbitmq-server-3.7.9-1.el7.noarch.rpm
3.启动
     /etc/init.d/rabbitmq-server start

4.开机启动
systemctl enable rabbitmq-server
systemctl start rabbitmq-server
    测试是否安装成功:
     rabbitmqctl status //查看rabbitmq的运行状态信息

5.启用插件rabbitmq management
     rabbitmq-plugins enable rabbitmq_management
     systemctl restart rabbitmq-server

    输入http://192.168.15.131:15672可以登录管理界面,默认账户guest/guest只能使用http://localhost:15672登录,要想远程登录,需要添加一个新的用户:
    rabbitmqctl add_user admin ectb2u23O8XL0jOB
    #用户设置为administrator才能远程访问
    $rabbitmqctl set_user_tags admin administrator

    $rabbitmqctl set_permissions -p / admin “.“ “.“ “.*” //该命令使用户admin具有‘/’这个virtual host中所有资源的配置、写、读权限以便管理其中的资源 
    查看所有用户#rabbitmqctl list_users

镜像集群搭建
cookie 配置需要统一
   192.168.15.132和192.168.15.133节点上分别执行命令,加入到集群
systemctl stop rabbitmq-server
systemctl start rabbitmq-server
    # rabbitmqctl stop_app
    # rabbitmqctl join_cluster —ram rabbit@mq1
    # rabbitmqctl start_app
    其中—ram代表是内存节点,如果希望是磁盘节点则不用加—ram,在rabbitmq集群中,至少需要一个磁盘节点

    查看集群的状态
    # rabbitmqctl cluster_status

  设置成镜像队列 ha开头是因为要用haproxy负载均衡来传递过来 所以才用ha开头
  # rabbitmqctl set_policy ha-all “^” ‘{“ha-mode”:”all”}’ //意思表示以ha.开头的queue都会复制到各个节点 [“^”匹配所有]

其中一个
rabbitmqctl stop_app
rabbitmqctl reset
rabbitmqctl start_app
rabbitmqctl join_cluster —ram rabbit@rabbitmq1