上次讲了Nginx的负载,这次接着说Haproxy的负载
先安装:
yum -y install haproxy
将默认的配置文件做一个备份:
mv /etc/haproxy/haproxy.cfg /etc/haproxy/haproxy.cfg.bak
新建一个配置文件:
nano /etc/haproxy/haproxy.cfg
写入下面的配置:
global
chroot /var/lib/haproxy
pidfile /var/run/haproxy.pid
user haproxy
group haproxy
defaults
mode tcp #服务器默认的工作模式
balance roundrobin #服务器默认使用的均衡模式
retries 3 #三次连接失败表示服务器不可用
maxconn 5000 #最大连接数
timeout connect 500ms #连接超时
timeout client 3s #客户端超时
timeout server 3s #服务器超时
listen WebPanel
mode http #这里使用HTTP模式
bind 0.0.0.0:50000 #WEB服务端口
stats refresh 5s #自动刷新时间
stats uri / #WEB管理地址
stats auth admin:admin #账号密码
stats hide-version #隐藏版本
stats admin if TRUE #验证通过则赋予管理权
listen USA
bind 0.0.0.0:50001 #服务端口
server usa1 1.2.3.4:55555 check inter 500 rise 2 fall 4 weight 100 #SS/SSR服务器地址与端口
server usa2 2.2.3.4:55555 check inter 500 rise 2 fall 4 weight 50 #SS/SSR服务器地址与端口
listen JP
bind 0.0.0.0:50002 #服务端口
server jp1 3.2.3.4:55555 check inter 500 rise 2 fall 4 weight 100 #SS/SSR服务器地址与端口
server jp2 4.2.3.4:55555 check inter 500 rise 2 fall 4 weight 50 #SS/SSR服务器地址与端口
配置完成之后,务必关闭SELinux,否则我们无法使用systemd去正常运行HAProxy(这是一个坑):
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
setenforce 0
启动HAProxy:
systemctl start haproxy
systemctl enable haproxy