之前把博客部署在K3S集群上边,由于使用的是小厂商的服务器,没有提供对应的Loadbalance,只是在DNS上配置了多条A记录来实现负载均衡。但是缺点也很明显,某台服务器故障的时候,如果DNS解析的也是对应节点的IP,网站就不可访问了,所以新增了一台节点作为整个集群的入口并在上边部署了HAProxy来进行请求的负载均衡。
CentOS8 安装 HAProxy
dnf install haproxy
修改 haproxy.cfg
vim /etc/haproxy/haproxy.cfg
,配置 Frontend 和 Backend,因为 HTTP 反向代理 使用的是 K3S Ingress 来处理的,所以这里模式使用的是TCP模式
frontend main_https
bind *:443
mode tcp
default_backend app_443
frontend main_http
bind *:80
mode tcp
default_backend app_80
backend app_443
balance roundrobin
mode tcp
server app1 123.123.123.123:443 check
server app2 111.111.111.111:443 check
backend app_80
balance roundrobin
mode tcp
server app1 123.123.123.123:80 check
server app2 111.111.111.111:80 check
启动HAProxy
systemctl enabble haproxy
systemctl start haproxy