配置文件说明
Haproxy配置中分为五部分,有些组建不是必选的,可以不需要。
global:参数是进程级的,通常和操作系统相关,只需要设置一次,如果配置没错,以后就不需要再配置了
defaults:配置默认参数,这些参数被用在frontend,backend,listen组件里
frontend:接收请求的前段虚拟节点,frontend可以根据规则直接指定具体使用后端的backend(可动态选择)
backend:后端服务器集群的配置,是真实的服务器
listen:frontend和backend的组合体
下面是一个具体的配置实例参考
Global
log 127.0.0.1 local0 info #[err warning info debug]
#配置日志
user root
group root
#用户和组
daemon
nbproc 1
#创建一个进程进入后台运行
pidfile /usr/local/haproxy/logs/haproxy.pid
#进程的pid,启用用户要对这个文件有写入的权限
Defaults
mode tcp
#下面所有的listen默认都是tcp模式
option redispatch
#当serverid对应的服务器宕机后,强制定向到其他健康的服务器上
retries 2
#连接2次失败就认为服务器宕机了
balance roundrobin
option dontlognull
maxconn 2000
#最大连接数
timeout connect 50000ms
#连接超时(contimeout)
timeout client 1800000ms
#客户端超时(clitimeout)
timeout server 1800000ms
#服务端超时(srvtimeout)
#统计页面配置
listen admin_stats
bind 0.0.0.0:1080
#监听端口
mode http
#http的7层模式
option httplog
log 127.0.0.1 local0 err
#日志设置
stats refresh 30s
#统计页面自动刷新时间
stats uri /admin?stats
#统计页面url
stats realm Haproxy\ Statistics
#统计页面密码框上提示文本
stats auth admin:admin
stats auth admin1:admin1
#统计页面用户密码设置
##安倍胜-8150 连接的监听配置
listen anbeisheng-8150
bind *:8150
mode tcp
option tcplog
log global
#后台服务器
server anbeisheng1 172.31.1.12:8150 weight 3 check inter 2000 rise 2 fall 3
server anbeisheng2 172.31.1.9:8150 weight 3 check inter 2000 rise 2 fall 3