在Debian环境中,可通过以下方式实现负载均衡与高可用性,具体工具及配置如下:
sudo apt update && sudo apt install nginx/etc/nginx/nginx.conf或/etc/nginx/conf.d/loadbalancer.conf,使用upstream模块定义后端服务器组,支持轮询(默认)、加权轮询、IP哈希等算法。upstream backend {
server 192.168.1.101:80 weight=3; # 加权轮询
server 192.168.1.102:80;
ip_hash; # 会话保持
}
server {
listen 80;
location / {
proxy_pass http://backend;
}
}
sudo systemctl restart nginxsudo apt update && sudo apt install haproxy/etc/haproxy/haproxy.cfg,通过frontend和backend定义负载均衡规则,支持TCP/HTTP协议。frontend http_front
bind *:80
default_backend http_back
backend http_back
balance roundrobin
server server1 192.168.1.101:80 check
server server2 192.168.1.102:80 check
sudo systemctl restart haproxysudo apt install ipvsadmipvsadm命令添加虚拟服务(VIP)和后端服务器,支持NAT/DR/TUN模式。echo 1 > /proc/sys/net/ipv4/ip_forward # 启用IP转发
ipvsadm -A -t 192.168.1.100:80 -s rr # 轮询模式
ipvsadm -a -t 192.168.1.100:80 -r 192.168.1.101:80 -m # NAT模式
sudo apt update && sudo apt install keepalived/etc/keepalived/keepalived.conf,定义虚拟IP(VIP)和主备节点优先级,通过VRRP协议实现故障切换。vrrp_instance VI_1 {
state MASTER # 主节点为MASTER,备节点为BACKUP
interface eth0
virtual_router_id 51
priority 100 # 主节点优先级高于备节点
advert_int 1
authentication {
auth_type PASS
auth_pass 1234
}
virtual_ipaddress {
192.168.1.100 # 虚拟IP
}
}
sudo systemctl restart keepalivedsudo apt install pacemaker corosync pcspcs命令创建集群、设置资源(如VIP、服务)和约束条件,支持自动故障转移。ngx_http_upstream_module)或应用层监控后端状态;HAProxy内置TCP_CHECK等健康检查机制。ufw)限制访问,使用SSL加密通信(如Nginx配置ssl_certificate)。least_conn),调整内核参数(如net.ipv4.ip_forward)。参考来源: