zoukankan      html  css  js  c++  java
  • 基于HA机制的MyCat架构——配置HAProxy

    HAProxy简介
    HAProxy提供高可用性、负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费、快速并且可靠的一种解决方案。

    HAProxy特别适用于那些负载特大的web站点,这些站点通常又需要会话保持或七层处理。

    HAProxy运行在当前的硬件上,完全可以支持数以万计的并发连接。并且它的运行模式使得它可以很简单安全的整合进您当前的架构中, 同时可以保护你的web服务器不被暴露到网络上。

    HAProxy实现了一种事件驱动, 单一进程模型,此模型支持非常大的并发连接数。多进程或多线程模型受内存限制 、系统调度器限制以及无处不在的锁限制,很少能处理数千并发连接。事件驱动模型因为在有更好的资源和时间管理的用户空间(User-Space) 实现所有这些任务,所以没有这些问题。此模型的弊端是,在多核系统上,这些程序通常扩展性较差。这就是为什么他们必须进行优化以 使每个CPU时间片(Cycle)做更多的工作。


    一、安装

    #gcc 安装
    yum install gcc-c++
    #下载
    wget http://fossies.org/linux/misc/haproxy-1.6.9.tar.gz
    
    #解压
    tar -zxvf haproxy-1.6.9.tar.gz
    cd haproxy-1.6.9
    
    #安装
    make TARGET=linux2628 ARCH=x86_64 PREFIX=/usr/local/haproxy
    make install PREFIX=/usr/local/haproxy

    #参数说明
    TARGET=linux26 #内核版本,使用uname -r查看内核,如:2.6.18-371.el5,此时该参数就为linux26;kernel大于2.6.28的用:TARGET=linux2628
    ARCH=x86_64 #系统位数
    PREFIX=/usr/local/haprpxy #/usr/local/haprpxy为haprpxy安装路径

    二、配置(自己创建)
    /usr/local/haproxy/haproxy.cfg

    global
            log 127.0.0.1   local0
            #log 127.0.0.1   local1 notice
            #log loghost    local0 info
            maxconn 4096
            chroot /usr/local/haproxy
            pidfile /usr/data/haproxy/haproxy.pid
            uid 99
            gid 99
            daemon
            #debug
            #quiet
    
    defaults
            log     global
            mode    tcp
            option  abortonclose
            option redispatch
            retries 3
            maxconn 2000
            timeout connect 5000
            timeout client  50000
            timeout server  50000
    
    
    listen proxy_status 
        bind :48066
            mode tcp
            balance roundrobin
            server mycat_1 192.168.1.105:8066 check inter 10s
            server mycat_2 192.168.1.60:8066 check inter 10s
    
    frontend admin_stats 
        bind :7777
            mode http
            stats enable
            option httplog
            maxconn 10
            stats refresh 30s
            stats uri /admin
            stats auth mldn:java
            stats hide-version
            stats admin if TRUE

    a、创建一个haproxy的数据保存路径:mkdir -p /usr/data/haproxy/
    b、找到listen proxy_status配置mycat信息

    三、启动

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

    四、查看状态

    ps -ef|grep haproxy
    
    http://192.168.1.105:7777/admin

    #说明:
    7777即haproxy配置文件中监听端口
    /admin 即haproxy的访问路径
    用户名/密码:mldn/java

    五、mycat记得启动

    六、通过haproxy进行登录

    在192.168.1.60(mysql master)上登录haproxy
    mysql -uroot -p123456 -h192.168.1.105 -P48066 -DTESTDB

    #参数说明
    -uroot:mycat用户名
    -p123456:mycat密码
    -h192.168.1.105:haproxy ip
    -P48066:haproxy端口
    -DTESTDB:mycat逻辑库

  • 相关阅读:
    Servlet获取URL地址
    js实现浏览器通知功能
    利用Hibernate监听器实现用户操作日志
    XMLHttpRequest上传文件实现进度条
    事务配置中的一些要点
    Spring事务配置的五种方式
    基于注解的Spring AOP的配置和使用
    @ResponseBody注解与JSON
    springMVC获取request和response
    Highcharts属性介绍
  • 原文地址:https://www.cnblogs.com/linjiqin/p/8059703.html
Copyright © 2011-2022 走看看