docker安装haproxy

haproxy.cfg:

global
	#工作目录
	chroot /usr/local/etc/haproxy
	#日志文件,使用rsyslog服务中local5日志设备(/var/log/local5),等级info
	log 127.0.0.1 local5 info
	#守护进程运行
	daemon
 
defaults
        log 127.0.0.1 local0 err #[err warning info debug]
        mode http                #默认的模式mode { tcp|http|health },tcp是4层,http是7层,health只会返回OK
        retries 2                #两次连接失败就认为是服务器不可用,也可以通过后面设置
        option redispatch        #当serverId对应的服务器挂掉后,强制定向到其他健康的服务器
        option abortonclose      #当服务器负载很高的时候,自动结束掉当前队列处理比较久的链接
        option dontlognull       #日志中不记录负载均衡的心跳检测记录
        maxconn 4096             #默认的最大连接数
        timeout connect 5000ms   #连接超时
        timeout client 30000ms   #客户端超时
        timeout server 30000ms   #服务器超时
        #timeout check 2000      #=心跳检测超时
 
######## 监控界面配置 #################	
listen  admin_stats
	#监控界面的访问的IP和端口
	bind  0.0.0.0:8888
	#访问协议
    mode        http
	#URI相对地址
    stats uri   /dbs
	#统计报告格式
    stats realm     Global\ statistics
	#登陆帐户信息
    stats auth  admin:admin

########frontend配置##############
#mycat负载均衡
listen  proxy-mycat
	#访问的IP和端口
	bind  0.0.0.0:9000  
        #网络协议
	mode  tcp
	#负载均衡算法(轮询算法)
	#轮询算法:roundrobin
	#权重算法:static-rr
	#最少连接算法:leastconn
	#请求源IP算法:source 
        balance  roundrobin
	# 这里是容器中的IP地址,由于配置的是轮询roundrobin,weight 权重其实没有生效
        server mycat_01 192.168.31.52:8066 check weight 1 maxconn 2000 
        server mycat_02 192.168.31.52:8067 check weight 1 maxconn 2000 
	# 使用keepalive检测死链
        option tcpka
docker run -d  -p 8888:8888 -p 9000:9000  --name haproxy -v /data/haproxy/haproxy.cfg:/usr/local/etc/haproxy/haproxy.cfg haproxy:1.7

数据库连接:9000

mycat监控:http://192.168.31.52:8888/dbs

猜你喜欢

转载自blog.csdn.net/u013008898/article/details/112522429
今日推荐