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

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),实现了负载均衡和高可用性

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

相关推荐
i建模1 天前
在 Rocky Linux 上安装轻量级的 XFCE 桌面
linux·运维·服务器
Data_Journal1 天前
Scrapy vs. Crawlee —— 哪个更好?!
运维·人工智能·爬虫·媒体·社媒营销
YMWM_1 天前
不同局域网下登录ubuntu主机
linux·运维·ubuntu
zmjjdank1ng1 天前
restart与reload的区别
linux·运维
Suchadar1 天前
Docker常用命令
运维·docker·容器
你才是臭弟弟1 天前
MinIo开发环境配置方案(Docker版本)
运维·docker·容器
Bruk.Liu1 天前
Gitea Actions 的概念及基础使用
运维·ci/cd·持续集成
yanlou2331 天前
[C++/Linux HTTP项目] HTTP服务器基于muduo高性能服务器搭载【深入详解】
运维·服务器·http·muduo库·http高性能服务器
杨江1 天前
frp macbook 的18789到 公网服务器上,访问报错:disconnected (1008): unauthorized:
运维
天空属于哈夫克31 天前
企微第三方 RPA API:非官方接口与官方接口的差异解析及选型建议
运维·服务器