HAProxy配置文件
haproxy 的配置文件真是个老熟人了,尤其是在做负载均衡和反向代理的时候,挺顺手的。你要是习惯了手动配 nginx
,那上手 haproxy.cfg
也不难,语法清晰,逻辑还挺直观的。
默认用的frontend
和backend
分段方式,适合一目了然地管理多服务入口,像常见的mode http
、balance roundrobin
,基本写几次就熟了。
而且这个配置文件蛮适合那种需要在网关层做一层策略分发的场景,比如前端要根据路径把流量导到不同服务,或者根据求头做灰度分流。只要在acl
和use_backend
上配点小逻辑,效果就有了。
我推荐你看看这几个资源,挺实用的:
- 反向代理模式的负载均衡配置文件,适合入门阶段
- HAPROXY 负载均衡反向代理最佳实践,讲得挺细
- haproxy 负载均衡配置.docx,文档版也方便查
如果你在用nginx
做反代,也可以对比下nginx 的负载均衡配置,看看两者在规则灵活性和稳定性上的区别。
配置完后,记得检查端口和健康检查配置,不然一个服务挂了你还不知道,日志一堆 404,调起来也麻烦。顺手贴个小例子方便参考:
frontend http-in
bind *:80
acl is_static path_end .js .css .jpg
use_backend static-server if is_static
default_backend app-serverp>
<p>backend static-server
server static1 192.168.1.10:8080 checkp>
<p>backend app-server
server app1 192.168.1.11:8080 check
如果你是刚开始接触haproxy
,建议从反向代理写起,先通服务,再慢慢加复杂逻辑。
下载地址
用户评论