#根据参数,shell自动生成haproxy配置
#为方便部署,特意做了个haproxy镜像
#Haproxy run as docker
#运行实例 run
#!/bin/bash #docker run Name=haproxy-test docker rm -f ${Name} docker run -dit --net=host \ --restart=always --name ${Name} -h ${Name} \ -e Stats_set="admin:admin 1081 /stats" \ -e Listen_1="k8s tcp 6445 6443" \ -e IPlist_1="172.16.11.141 172.16.11.142 172.16.11.143" \ alivv/haproxy
#查看 check
#docker check docker ps -l docker logs ${Name} #Check the config docker exec -it ${Name} cat /usr/local/etc/haproxy/haproxy.cfg #delete #docker rm -f ${Name}
#参数 var
#状态页设置 # 用户:密码 端口 url后缀 Stats_set="admin:admin1 1080 /stats" #代理设置 # Listen_1=代理名称、模式(tcp|http)、端口、被代理端口 # IPlist_1=被代理ip地址列表 Listen_1="k8s tcp 6445 6443" IPlist_1="172.16.11.141 172.16.11.142 172.16.11.143" 生成配置如下 ########## listen k8s bind :6445 mode tcp option tcplog server k8s-1 172.16.11.141:6443 check inter 3000 rise 2 fall 3 server k8s-2 172.16.11.142:6443 check inter 3000 rise 2 fall 3 server k8s-3 172.16.11.143:6443 check inter 3000 rise 2 fall 3 #可设置多个代理 Listen_1 、IPlist_1 Listen_2 、IPlist_2 ……