美文网首页
【原】HAProxy 做rabbitmq的高可用

【原】HAProxy 做rabbitmq的高可用

作者: 曹赫洋 | 来源:发表于2017-08-04 16:17 被阅读0次

    1 haproxy 下载 从如下目录下载haproxy:http://www.haproxy.org/download/1.7/src/haproxy-1.7.1.tar.gz
    2 haproxy 安装
    解压haproxy: tar -xvf haproxy-1.7.1.tar.gz
    进入haproxy目录:cd haproxy-1.7.1/
    编译haproxy:sudo make TARGET=linux31 PREFIX=/usr/local/haproxy
    安装haproxy:sudo make install PREFIX=/usr/local/haproxy
    3 haproxy配置:
    进入haproxy目录:cd /usr/local/haproxy/
    创建haproxy配置文件:sudo vi haproxy-rabbitmq.cfg
    如下是用haproxy 为rabbimq做高可用集群的配置

    global
        log 127.0.0.1 local1
        log-tag haproxy
        maxconn 4096
        #user haproxy
        #group haproxy
        daemon
        stats socket /var/run/haproxy.sock mode 600 level admin
        stats timeout 2m
    defaults
        log global
        mode http
        timeout connect 5000ms
        timeout client 50000ms
        timeout server 50000ms
        option dontlognull
        option http-server-close
    listen admin
        bind 0.0.0.0:8008
        mode http
        stats uri /stats
    frontend rabbitmq
        mode tcp
        bind 0.0.0.0:5679
        #把client的超时时间设置的长一点很重要,HAProxy默认是50秒,这样如果50秒还没有消息到来,HAProxy就会断开客户端,这是不合适的
        timeout client 168h
        default_backend rabbitmq_nodes
        log global
        option tcplog
        option logasap
    backend rabbitmq_nodes
        mode tcp
        balance roundrobin
        timeout server 168h
        server  apple 0.0.0.0:5674 check inter 1000 fall 3 rise 3
        server  dell 0.0.0.0:5675 check inter 1000 fall 3 rise 3
        server  xiaomi 0.0.0.0:5673 check inter 1000 fall 3 rise 3
    #我把RabbitMQ的管理界面也放在HAProxy后面了
    listen rabbitmq_admin 
        bind  0.0.0.0:15679
        mode http
        timeout server 168h
        balance roundrobin
        server apple 127.0.0.1:15673 check inter 1000 fall 3 rise 3
        server dell 127.0.0.1:15674 check inter 1000 fall 3 rise 3
    
    

    说明:

       server apple 127.0.0.1:15673 check inter 1000 fall 3 rise 3
    

    如上代码:

    server<name> :后台服务器定义中的内部标识
    <IP>:<port> :连接到后台服务器的IP和端口号
    check inter <value> :定义了每个多少毫秒检查后台服务器是否可用
    rise <value>:表明了后台服务器在发生故障之后,需要完成多少次健康检测,才能再次被确认可用
    fall <value> :表明需要经历多少次的失败健康检测,HAProxy才会停止使用后台服务器
    

    启动方法 ./sbin/haproxy -f haproxy-rabbitmq.cfg

    相关文章

      网友评论

          本文标题:【原】HAProxy 做rabbitmq的高可用

          本文链接:https://www.haomeiwen.com/subject/mhxblxtx.html