猫小白

猫小白

之前把博客部署在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
HAProxyLoadbalance