haproxy 4层负载

配置文件重要参数: 
global         maxconn 65535 #最大链接数,HAProxy是数据转发,每条数据链路占用两个链接。         
uid 99   #运行身份         
gid 99   #运行身份         
#daemon   #daemon方式运行         
#debug   #调试方式运行         
#quiet   #静默方式运行         
defaults         timeout connect 86400s #链接超时,超过设置时间,HAProxy会主动断开双方链接。         
timeout server  86400s         
timeout client  86400s                 
listen  db_3601 0.0.0.0:13601 #设置转发实例         
mode tcp    #tcp模式,只转发,不分析         
option tcpka            
option srvtcpka         
option clitcpka         
balance roundrobin  #均衡算法         
server db_47_3601 192.168.120.47:3601 check inter 1000 rise 1 fall 2 #目标服务器定义         
server db_48_3601 192.168.120.48:3601 check inter 1000 rise 1 fall 2 #目标服务器定义 

命令行重要参数:         
-D goes daemon   #设置为daemon方式运行         
-p writes pids of all children to this file  #将pid写入到文件中         
-sf/-st [pid ]* finishes/terminates old pids. Must be last arguments. #替换原有进程         
-f <cfgfile> #指定配置文件         

如何在更新配置文件后,快速重启服务: 
经过-st指定原有进程的pid: haproxy -f /apps/haproxy/db.cfg -p /apps/haproxy/db.pid -D -st 26611 

简单数据转发示例: 
listen  db_3608 0.0.0.0:13608         
mode tcp         
option tcpka         
option srvtcpka         
option clitcpka         
balance roundrobin         
server db_47_3608 192.168.120.47:3608 

简单负载均衡示例: 
listen  http_8080 0.0.0.0:8080         
mode tcp         
option tcpka         
option srvtcpka         
option clitcpka         
balance roundrobin         
server http_69_80 192.168.120.69:80         
server http_67_80 192.168.120.67:80 

简单TCP健康检查示例:         
server http_67_80 192.168.120.67:80 check inter 1000 rise 1 fall 2 
其中: 
check为健康检查指令。 
inter 1000表示检察时间间隔为1000毫秒。 
rise 1表示检查成功一次即将其标识为可用。 
fall 2表示检查失败两次即将其标识为不可用。 

简单数据库健康检查实例:   
option mysql-check         
server http_67_80 192.168.120.67:80 check inter 1000 rise 1 fall 2 

简单主备模式数据转发: 
listen  http_8080 0.0.0.0:8080         
mode tcp         
option tcpka         
option srvtcpka         
option clitcpka         
balance roundrobin         
server http_69_80 192.168.120.69:80 check         
server http_67_80 192.168.120.67:80 backup check #待实践 

附:balance使用参考: 
简单数据转发: 
balance 8080 192.168.120.69:80 
简单负载均衡: 
balance 8080 192.168.120.69:80 192.168.120.67:80 
调试用途: 
balance 11211 192.168.120.69:80 -p -d -f 

编译好的64位Linux版本的HAProxy和Balance能够在下面的地址快速下载: mysql

http://bbs.xmgu2008.org/tools/balancehttp://bbs.xmgu2008.org/tools/haproxy算法