【转载】HAproxy 配置参数详解
发布日期:2021-05-09 04:22:52 浏览次数:19 分类:博客文章

本文共 3318 字,大约阅读时间需要 11 分钟。

【原文地址】

cat /etc/haproxy/haproxy.cfg

# 配置文件-------------------------------------------------------# 全局配置global    # 设置日志文件输出定向    log 127.0.0.1 local3 info    # 改变当前工作目录    chroot /usr/local/haproxy    # 用户与用户组    user haproxy    group haproxy    # 守护进程启动,运维方式为后台工作    daemon    # 最大连接数    maxconn 4000# 作用于其后紧跟的listen块,直至下一个defaults 块,下一个default 将替换上一个块作用于以后的listen defaults    # 启用每个实例日志记录事件和流量。    log global        # 默认的模式mode { tcp|http|health },tcp是4层,http是7层,health只会返回OK    mode http    # maxconn 65535         maxconn 每个进程可用的最大连接数    # retries 3         当对server的connection失败后,重试的次数      # option abortonclose     启用或禁用在队列中挂起的中止请求的早期丢弃     # option redispatch     启用或禁用在连接故障情况下的会话重新分配     # option dontlognull     启用和禁用 记录 空连接    # option httpclose         每次请求完毕后主动关闭http通道,HA-Proxy不支持keep-alive模式     # option forwardfor     获得客户端IP     # option httplog        记录HTTP 请求,session 状态和计时器     option httplog    option dontlognull    timeout connect 5000    timeout client 50000    timeout server 50000#前端配置,http_front名称可自定义frontend http_front        # bind *:443 ssl crt /etc/haproxy/cert.pem        启用ssl证书     # bind *:80                        发起http请求道80端口,会被转发到设置的ip及端口    bind *:80    #haproxy的状态管理页面,通过/haproxy?stats来访问    stats uri /haproxy?stats    default_backend http_back#后端配置,http_back名称可自定义backend http_back    # 负载均衡方式    # source 根据请求源IP    # static-rr 根据权重    # leastconn 最少连接者先处理    # uri 根据请求的uri    # url_param 根据请求的url参数    # rdp-cookie 据据cookie(name)来锁定并哈希每一次请求    # hdr(name) 根据HTTP请求头来锁定每一次HTTP请求    # roundrobin 轮询方式    balance roundrobin    #设置健康检查页面    option httpchk GET /index.html    #传递客户端真实IP    option forwardfor header X-Forwarded-For    # inter 2000 健康检查时间间隔2秒    # rise 3 检测多少次才认为是正常的    # fall 3 失败多少次才认为是不可用的    # weight 30 权重    # 需要转发的ip及端口    server node1 192.168.179.131:8081 check inter 2000 rise 3 fall 3 weight 30    server node2 192.168.179.131:8082 check inter 2000 rise 3 fall 3 weight 30-------------------------------------------------------# haproxy的acl规则-------------------------------------------------------frontend http_front    bind *:80    stats uri /haproxy?stats     #创建一个acl,is_http_back2是acl的名称,可自定义,用于判断主机名是否为www.back2.com    acl is_http_back2 hdr_end(host) www.back2.com    #通过正则判断主机名中是否为bbs.back.com或forum.back.com    acl is_host_bbs hdr_reg(host) -i ^(bbs.back.com|forum.back.com)    #判断ua是否为android    acl is_ua_android hdr_reg(User-Agent) -i android    #判断主机名开头是否为img.或css.或js.    acl is_host_static hdr_beg(host) -i img. css. js.    #判断url路径中是否有/bbs    acl is_path_bbs path_beg -i /bbs    #判断url文件结尾    acl is_php path_end -i .php    #通过正则判断url中结尾以    acl is_static_file url_reg -i /*.(css|jpg|png|jpeg|gif)$    #效果同上    acl is_static_file2 path_end -i .css .jpg .png .jpeg .gif    #如果主机名是www.back2.com那么就使用后端http_back2    use_backend http_back2ifis_http_back2    #默认使用的后端    default_backend http_backbackend http_back    balance roundrobin    option httpchk GET /index.html    option forwardfor header X-Forwarded-For    server node1 192.168.1.222:8080 check inter 2000 rise 3 fall 3 weight 30backend http_back2    balance roundrobin    option httpchk GET /index.html    option forwardfor header X-Forwarded-For    server node2 192.168.1.222:8082 check inter 2000 rise 3 fall 3 weight 30-------------------------------------------------------

 

上一篇:Kubernetes实战总结
下一篇:Kubernetes实战总结 - EFK部署(v7.6.0)

发表评论

最新留言

路过,博主的博客真漂亮。。
[***.116.15.85]2025年03月24日 17时41分49秒