rabbitmq集群+haproxy 相关 安装与配置和注意事项

========================================================================================

    安装 erlang , rabbitmq, haproxy

========================================================================================
erlang 安装

wget http://www.rabbitmq.com/releases/erlang/erlang-17.4-1.el6.x86_64.rpm
yum install erlang-17.4-1.el6.x86_64.rpm

最后输入 erl ,进入erlang shell界面就表示安装成功:


rabbitmq 安装
配置rabbitmq 集群 版本必须一致
wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.5.4/rabbitmq-server-3.5.4-1.noarch.rpm
yum install rabbitmq-server-3.5.4-1.noarch.rpm
最后输入rabbitmqctl 查看是否安装成功


haproxy 安装
yum install haproxy

=======================================================================================

           配置

======================================================================================
haproxy 配置
编辑/etc/haproxy/haproxy.cfg

模板haproxy.cfg

global
log 127.0.0.1 local0
log 127.0.0.1 local1 notice
maxconn 409600  #并发数
user haproxy
group haproxy
daemon

defaults
log global
#使用tcp监听模式
mode tcp
option tcplog
option dontlognull
retries 3
option redispatch
maxconn 2000
timeout connect 10000
timeout client 50000
timeout server 50000

listen admin_stat
#haproxy的web管理端口 8888,自行设置
bind 0.0.0.0:8888
mode http
stats refresh 30s
#haproxy web管理url,自行设置
stats uri /haproxy_stats
stats realm Haproxy\ Statistics
#haproxy web管理用户名密码,自行设置
stats auth admin:admin
stats hide-version

listen rabbitmq
bind 0.0.0.0:5670
##listen rabbitmq 10.10.1.53:5670
#监听5670端口,并转发给两个个节点的5672端口,采用轮询策略
mode tcp
balance roundrobin
server rabbitmq-1 10.10.1.1:5672 check inter 2000 rise 2 fall 3
server rabbitmq-2 10.10.1.2:5672 check inter 2000 rise 2 fall 3

rabbitmq 配置

配置cookie, 每个节点的内容必须一致//#cookie 一致rabbitmq才能相连

vim /var/lib/rabbitmq/.erlang.cookie

Rabbitmq的配置文件有三个,位于/etc/rabbitmq/
[1]enabled_plugins:插件配置, 一般情况下可以用默认,不需要修改
[2]rabbitmq.conf: 设置运行参数,端口,
加入节点名
可通过rabbitmqctl cluster_status 查看节点名称
{cluster_nodes, {['rabbit@host1','rabbit@host2'], disc}}

[3]rabbitmq-env.conf:rabbitmq的环境参数配置,默认没有,可以自己创建, 一般情况下可以用默认,不需要修改

具体配置参看
http://www.rabbitmq.com/configure.html

=================================================================================================

启动

service rabbitmq-server start

添加rabbitmq管理页面

rabbitmq-plugins enable rabbitmq_management

添加的新用户,只有添加的用户才能远程访问管理页面

rabbitmqctl add_user name pwd //添加新用户
rabbitmqctl set_user_tags name administrator //设置权限
rabbitmqctl set_permissions -p / name "." "." ".*"

可通过rabbitmqctl cluster_status 查看节点相连情况


haproxy启动

/usr/sbin/haproxy -f /etc/haproxy/haproxy.cfg

端口设置
haproxy 的端口是对外的,要放开
4369 erlang端口,内网放开
rabbitmq 的端口 5672 (默认) 内网放开
rabbitmq 的管理员端口 15672 (默认) 管理员放开

注意事项,haproxy 有客户端超时设置,所以写 rabbit应用的时候必须有心跳包,不然肯定会断掉。
rabbitmq和erlang尽量安装rpm 不要自己编译安装。不然用户权限问题会把你搞死的。一定要用统一的版本

相关文章:http://www.tuicool.com/articles/bQ3iu2r

你可能感兴趣的:(erlang-rabbitmq)