1. 程式人生 > >haproxy配置文件詳解

haproxy配置文件詳解

check 負載均衡算法 ron path servers local 負載 http請求 bin

global
daemon
maxconn 30000 #ulimit -n至少為60018
user haproxy
pidfile /home/ha/haproxy/conf/haproxy.pid
log 127.0.0.1 local0 info
log 127.0.0.1 local1 warning

defaults
mode http
log global
option http-keep-alive #使用keepAlive連接
option forwardfor #記錄客戶端IP在X-Forwarded-For頭域中
option httplog #開啟httplog,HAProxy會記錄更豐富的請求信息
timeout connect 5000ms
timeout client 10000ms
timeout server 50000ms
timeout http-request 20000ms #從連接創建開始到從客戶端讀取完整HTTP請求的超時時間,用於避免類DoS攻擊
option httpchk GET /healthCheck.html #定義默認的健康檢查策略

frontend http-in
bind *:80
maxconn 30000 #定義此端口上的maxconn
# acl url_ms1 path_beg -i /ms1/ #定義ACL,當uri以/ms1/開頭時,ACL[url_ms1]為true
# acl url_ms2 path_beg -i /ms2/ #同上,url_ms2
# use_backend ms1 if url_ms1 #當[url_ms1]為true時,定向到後端服務群ms1中
# use_backend ms2 if url_ms2 #當[url_ms2]為true時,定向到後端服務群ms2中
default_backend default_servers #其他情況時,定向到後端服務群default_servers中

#backend ms1 #定義後端服務群ms1
# balance roundrobin #使用RR負載均衡算法
# cookie HA_STICKY_ms1 insert indirect nocache #會話保持策略,insert名為"HA_STICKY_ms1"的cookie
# #定義後端server[ms1.srv1],請求定向到該server時會在響應中寫入cookie值[ms1.srv1]
# #針對此server的maxconn設置為300
# #應用默認健康檢查策略,健康檢查間隔和超時時間為2000ms,兩次成功視為節點UP,三次失敗視為節點DOWN
# server ms1.srv1 192.168.8.111:8080 cookie ms1.srv1 maxconn 300 check inter 2000ms rise 2 fall 3
# #同上,inter 2000ms rise 2 fall 3是默認值,可以省略
# server ms1.srv2 192.168.8.112:8080 cookie ms1.srv2 maxconn 300 check
#
#backend ms2 #定義後端服務群ms2
# balance roundrobin
# cookie HA_STICKY_ms2 insert indirect nocache
# server ms2.srv1 192.168.8.111:8081 cookie ms2.srv1 maxconn 300 check
# server ms2.srv2 192.168.8.112:8081 cookie ms2.srv2 maxconn 300 check
#
backend default_servers #定義後端服務群default_servers
balance roundrobin
cookie HA_STICKY_def insert indirect nocache
server def.srv1 192.168.72.130:80 cookie def.srv1 maxconn 300 check
server def.srv2 192.168.72.131:80 cookie def.srv2 maxconn 300 check

listen stats #定義監控頁面
bind *:1080 #綁定端口1080
stats refresh 30s #每30秒更新監控數據
stats uri /stats #訪問監控頁面的uri
stats realm HAProxy\ Stats #監控頁面的認證提示
stats auth admin:admin #監控頁面的用戶名和密碼

詳見:http://www.ttlsa.com/linux/haproxy-study-tutorial/

haproxy配置文件詳解