haproxy负载均衡配置详解(tcp例子)

global
        maxconn         20000		#最大连接数
	ulimit-n	40014           #设置每个进程的可用的最大文件描述符
        log             127.0.0.1 local0 info  #使用本地的日志设备为haproxylog的日志设置记录,在rsyslog中配
	pidfile		/var/run/haproxy.pid
        uid             200		#所属运行的用户uid
        gid             200		#所属运行的用户组
	nbproc		1		#启动ha-proxy实例数
        daemon				#以守护线程方式启动
defaults				#默认设置
	mode tcp			#所处理的类别,默认是http,但是本次是tcp转发
	retries 3			#3次连接失败就认为服务器不可用,主要通过后面的check检查
	option redispatch		#机器死掉后重定向到健康的机器
	option abortonclose		#当负载过高时,自动结束当前处理比较久的连接
	timeout connect 5000ms		#成功连接到一台服务器的最长等待时间
	timeout client 30000ms		#设置服务器回应客户端数据发送的最长等待时间
	log 127.0.0.1 local1 err 
listen admin_stats			#配置ha的自带admin监控界面
	bind 0.0.0.0:1080
	mode http
	log  global			#继承global中log定义
	maxconn 10
	stats refresh 30s		#设置统计页面刷新频率
	stats uri /stats		#配置admin界面请求的uri地址
	stats auth admin:admin		#配置admin登录账户和密码	
	stats realm  codis haproxy for private user ,enter username/password  #配置登录时提醒信息
	stats hide-version
frontend  codis-tcp-in			#指定前置处理器,处理用户请求,绑定端口
	bind		*:19000		#监听端口19000的请求
        mode            tcp		
        log             global
        option          tcplog
        option          dontlognull
        option          nolinger
        timeout client  30s
	default_backend codis-tcp-out  #指定后置处理器转发

backend codis-tcp-out
	mode            tcp
	timeout connect 5s
	timeout server  5s
	retries         3
	balance roundrobin				#负载均衡算法,轮询
        server s1 172.16.0.174:19000  check inter 2000 rise 3 fall 3   weight 1  
        server s2 172.16.0.173:19000  check inter 2000 rise 3 fall 3   weight 1
 注意:check 很重要,这个是端口的健康检查

猜你喜欢

转载自turbosky.iteye.com/blog/2312647