高效构建与配置高可用负载均衡集群:从理论到实践的全面实施

1. 主机配置

主机 IP VIP 角色
本机 客户端
OpenEuler-1 172.25.254.10 172.25.254.100 虚拟服务器 (VS)
OpenEuler-2 172.25.254.12 172.25.254.100 真实服务器 (RS1)
OpenEuler-3 172.25.254.13 172.25.254.100 真实服务器 (RS2)

2. 真实服务器 (RS) 配置与优化
bash 复制代码
# 安装与配置 Nginx
[root@OpenEuler-2-3 ~]# yum install nginx -y

[root@OpenEuler-2-3 ~]# echo "My ip is `hostname -I`" > /usr/share/nginx/html/index.html

# 启动
[root@OpenEuler-2-3 ~]# systemctl enable --now nginx

# 测试
[root@OpenEuler-2 ~]# curl `hostname -I`
My ip is 172.25.254.12/My ip is 172.25.254.13
2.1 设置虚拟 IP (VIP)
bash 复制代码
[root@OpenEuler-1-3 ~]# nmcli con add type dummy ifname dummy1 ipv4.method manual ipv4.addresses 172.25.254.100/32
2.2 关闭 ARP 响应
bash 复制代码
[root@OpenEuler-2-3 ~]# vim + /etc/sysctl.conf
# 添加以下内容
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2
net.ipv4.conf.dummy1.arp_ignore = 1
net.ipv4.conf.dummy1.arp_announce = 2

# 使其生效
sysctl -p

3. 虚拟服务器 (VS) 配置与负载均衡实现

3.1 安装 IPVS 管理工具
bash 复制代码
[root@OpenEuler-1 ~]# yum install ipvsadm -y
3.2 添加负载均衡规则
bash 复制代码
[root@OpenEuler-1 ~]# ipvsadm -At 172.25.254.100:80 -s rr
[root@OpenEuler-1 ~]# ipvsadm -at 172.25.254.100:80 -r 172.25.254.12:80 -g
[root@OpenEuler-1 ~]# ipvsadm -at 172.25.254.100:80 -r 172.25.254.13:80 -g

# 检查规则
[root@OpenEuler-1 ~]# ipvsadm -Ln
TCP  172.25.254.100:80 rr
  -> 172.25.254.12:80             Route   1      0          0
  -> 172.25.254.13:80             Route   1      0          0
  
# 客户端测试
[Moon] ⮞ for ((i=1;i<=6;i++)); do curl 172.25.254.100; done
My ip is 172.25.254.13
My ip is 172.25.254.12
My ip is 172.25.254.13
My ip is 172.25.254.12
My ip is 172.25.254.13
My ip is 172.25.254.12

4. 效果演示

通过上述配置,成功构建了一个高可用的负载均衡集群

客户端请求通过虚拟 IP (VIP) 均匀分发到两个真实服务器 (RS1 和 RS2),实现了负载均衡和高可用性

测试结果表明,请求按轮询策略均匀分配,系统响应稳定,性能优异

相关推荐
奔跑吧邓邓子34 分钟前
【Python爬虫(36)】深挖多进程爬虫性能优化:从通信到负载均衡
开发语言·爬虫·python·性能优化·负载均衡·多进程
努力的小T38 分钟前
使用 Docker 部署 Apache Spark 集群教程
linux·运维·服务器·docker·容器·spark·云计算
枫叶落雨2222 小时前
08-Elasticsearch
运维·jenkins
爆更小小刘3 小时前
Linux下基本指令(4)
linux·运维·服务器
我码玄黄3 小时前
解决本地模拟IP的DHCP冲突问题
linux·运维
若云止水3 小时前
Ubuntu 下 nginx-1.24.0 源码分析 - ngx_os_init 函数
运维·nginx
Self-Discipline4 小时前
Linux arm64 IOMMU总结
linux·运维·服务器
我言秋日胜春朝★4 小时前
【Linux】命名管道------Linux进程间通信的桥梁
linux·运维·服务器
Dontla4 小时前
华为昇腾服务器(固件版本查询、驱动版本查询、CANN版本查询)
运维·服务器·chrome
wenchun0014 小时前
【并发压测】高并发下Linux流量监控
linux·运维·服务器