========================================================================================
安装 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://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。