设为首页 收藏本站
查看: 1278|回复: 0

[经验分享] Haproxy及相关配置案例

[复制链接]

尚未签到

发表于 2019-1-1 12:14:32 | 显示全部楼层 |阅读模式
  前言
      LB Cluster中可以分为四层调度和七层调度。前面学的LVS、nginx(stream模块)都属于四层调度,七层调度有nginx(http模块)等。HAProxy是一款应对客户端10000以上的同时连接的高性能的TCP和HTTP负载均衡器。就是说四层和七层都可以调度,这就是为什么HAProxy是一款专业的调度器。简单说它的功能是用来提供基于cookie的持久性,基于内容的交换,过载保护的高级流量管制,自动故障切换,以正则表达式为基础的控制运行时间,基于Web的报表,高级日志记录以帮助排除故障的应用或网络及其他功能。
  HAProxy功能
      1、支持TCP / HTTP反向代理服务器,尤其适合于高可用性环境
      2、支持http反向代理
      3、支持动态程序的反向代理
      4、支持基于数据库的反向代理
  HAProxy配置文件结构
     1、global:全局配置段
          进程及安全配置相关的参数
          性能调整相关参数
          Debug参数
      2、proxies:代理配置段
          defaults:为frontend, backend, listen提供默认配置
          frontend:前端,相当于nginx中的server {}
          backend:后端,相当于nginx中的upstream {}
          listen:同时拥有前端和后端,适用于一对一环
  简单的轮询调度
frontend http
        bind 172.18.32.118:80
        default_backend websrvs
backend websrvs
        balance roundrobin
        server srv1 192.168.32.9:80 check
        server srv2 192.168.32.10:80 check  或者一对一的写法也可以,灵活性不高
listen http
    bind :80,:8080
    balance roundrobin
    server srv1 192.168.32.9:80 check   
    server srv2 192.168.32.10:80 check  记录日志:默认配置文件中已经定义了日志记录,但是还需要去日志配置文件中打开通道,并配置。也可以记录在另外的日志服务器中。
]#cat /etc/haproxy/haproxy.cfg
log         127.0.0.1 local2
]#vim /etc/rsyslog.conf
$ModLoad imudp                这两行默认注销的,需打开
$UDPServerRun 514
local2.*                      /var/log/haproxy.log  基于uri的调度和hash环的一致性配置
backend websrvs
        balance uri
        hash-type consistent
        ...  因为HAProxy是应用层的调度,还可以根据http首部来进行调度
backend websrvs
        balance hdr(host)
        ...  定义sorry server,当后端服务器都宕机的情况下使用,注意端口不要冲突

backend websrvs
        server sorryserver 192.168.32.101:8080 backup
        ...  健康状态检查,检测的地址和提供服务的地址分开
  addr:检测时使用的IP地址
port :针对此端口进行检测
inter :检测之间的时间间隔,默认为2000ms
rise :连续多少次检测结果为“成功”才标记服务器为可用;默认为2
fall :连续多少次检测结果为“失败”才标记服务器为不可用;默认为3
backend websrvs
        balance roundrobin
        server srv1 192.168.32.9:80 check weight 1 addr 192.168.32.101 prot 80 inter 3000 rise 3 fall 3
        ...  如果有服务器需要维护,可以设置disabled,标记为不可用,就不会往这个服务器上调度了。
server srv1 192.168.32.9:80 disabled  重定向到另一个地址

server srv1 192.168.32.9:80 redir http://www.baidu.com  基于cookie的的session sticky的调度
backend websrvs
    cookie SRV insert nocache
    server srv1 192.168.32.9:80 weight 2 check cookie srv1
    server srv2 192.168.32.10:80         check cookie srv2
    ...  启用web管理界面
listen admin 192.168.32.101:8080           
        stats enable

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-658251-1-1.html 上篇帖子: HAproxy基础(2) 下篇帖子: HAProxy 之 日志记录管理
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表