haproxy配置文件参数
Posted super-sos
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了haproxy配置文件参数相关的知识,希望对你有一定的参考价值。
vim haproxy.cfg
全局配置
global log 127.0.0.1 local3 info //日志服务器,可将IP改为远端 maxconn 100000 //单个进程最大并发连接数 daemon //守护进程方式后台运行 nbproc 4 //工作进程数量
ulimit-n 65535 //ulimit的数量限制 chroot /usr/local/haproxy #stats socket /var/lib/haproxy/haproxy.sock mode 600 level admin uid 99 gid 99 daemon cpu-map 1 0 cpu-map 2 1 cpu-map 3 2 cpu-map 4 3 pidfile /usr/local/haproxy/run/haproxy.pid
默认配置defaults
defaults
log global //记录日志,这里可以使用全局配置的日志配置 mode http //工作模式http layer7,{|http|health},tcp是4层,http是7层,health只会返回ok maxconn 100000 //最大连接数 option forwardfor //后端服务器得到的请求IP一般是haproxy的,为了得到客户端的IP,需要插入X-Forwardfor-For头处理,后端服务器则用X-Forwardfor-For方法来获得客户端IP contimeout 5000 //连接超时时间 clitimeout 50000 //客户端超时时间 srvtimeout 50000 //服务器超时时间
timeout check 2000 //心跳检测超时
option httplog //日志类别http日志格式
option httpclose //每次请求完毕后主动关闭http通道
option dontlognull //不记录健康检查的日志信息
option redispatch //serverId对应的服务器挂掉后,强制定向到其他健康的服务器
option abortonclose //当服务器负载很高的时候,自动结束掉当前队列处理比较久的连接
stats refresh 30 //统计页面刷新间隔
retries 3 //3次连接失败就认为服务不可用,也可以通过后面设置
balance roundrobin //默认的负载均衡的方式,轮询方式
#balance source //默认的负载均衡的方式,类似nginx的ip_hash
#balance leastconn //默认的负载均衡的方式,最小连接
配置监听
listen web 0.0.0.0:80 //表示监听所有的80请求 mode http //工作模式 balance roundrobin //负载均衡的方式 option httpclose //打开支持服务器端主动关闭连接的功能 option forwardfor //apache需要在httpd.conf配置文件里“<IfModule logio_module>”下面添加《LogFormat "%{X-Forwarded-For}i %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined》 //nginx需要在nginx.conf配置文件里“http”下面添加(需要安装--with-http_realip_module模块) set_real_ip_from 10.96.141.0/24; real_ip_header X-Forwarded-For; real_ip_recursive on; log_format main ‘$remote_addr - $remote_user [$time_local] "$request" ‘ ‘$status $body_bytes_sent "$http_referer" ‘ ‘"$http_user_agent" "$http_x_forwarded_for"‘; //IIS:需要安装高级日志(IIS7及以下),下载并加载F5XForwardedFor模块,定义IIS的日志格式,http://www.loadbalancer.org/blog/iis-and-x-forwarded-for-header 无需安装高级日志(IIS8.5及以上),双击日志——>点击W3C后面的选择字段——>点击添加字段——>字段名称(x-forwarded-for)、源类型(请求标头)、源(X-FORWARDED-FOR)——>确定、确定——>右上角的应用,重启IIS服务即可 option httpchk HEAD /index.html HTTP/1.0 //健康检查 cookie SERVERID insert indirect nocache //客户端的cookie信息 server server1 192.168.122.100:80 cookie 1 check inter 2000 rise 2 fall 5 server server2 192.168.122.200:80 cookie 2 check inter 2000 rise 2 fall 5 cookie 1 //标识serverid为1 check inter 2000 //检测心跳频率,单位毫秒 rise 2 //连续2次成功表示服务器可用 fall 5 //连续5次失败表示服务器不可用
以上是关于haproxy配置文件参数的主要内容,如果未能解决你的问题,请参考以下文章