LVS 负载均衡之 VS/NAT 模式
一、VS/NAT 模式简介
- VS/NAT(Virtual Server via Network Address Translation)模式,即网络地址转换技术实现虚拟服务器
-
接下来,借助于上图,分析报文的地址转换过程。
-
请求报文转换过程:请求到达后,调度器将报文转发到某一台真实服务器,进行具体的处理。(修改目标地址)
源地址 目标地址 描述 192.168.142.11 192.168.142.100 web请求,访问调度器上的虚拟IP 192.168.142.11 192.168.10.1 Director Server 从调度列表中选中具体的 Real Server -
响应报文转换过程:处理完毕后,响应报文经过调度器,将源地址由真实服务器地址替换为调度器的VIP。(修改源地址)
源地址 目标地址 描述 192.168.10.1 192.168.142.11 响应报文互换请求报文中的目标地址和源地址 192.168.142.100 192.168.142.11 Director Server 将源地址由真实服务器的IP改为其虚拟IP(VIP)
-
- 特点总结
- 真实服务器集群节点位于同一网络环境中
- 真实服务器必须将网关指向负载均很器
- RIP 通常是私有 IP,仅用于各个集群节点之间的通信
- 负载均衡器必须至少是双网卡,一个连接外网(VIP),一个连接内网(DIP)
- 负载均衡器必须位于 RS 与 DS 之间,充当网关
- 支持端口映射
- 负载均衡器必须是 Linux 操作系统,真实服务器随意
- 进出报文都会经过负载均衡器,压力较大
二、VS/NAT 搭建实验
说明: 实验环境用虚拟机模拟。其中一台做为调度器,另外准备三台组成真实服务器池。
准备工作:现在主流的 Linux 内核都集成了 LVS 软件 ipvs,但是还需要我们安装一个管理工具 ipvsadm。
安装命令:yum install ipvsadm -y
网络环境说明:
服务器类型 | IP | 说明 |
---|---|---|
lvs_vip | 192.168.142.100 | 使用 192.168.142 网段模拟公网 |
lvs_dip | 192.168.10.10 | 使用 192.168.10 网段模拟私网,与 rip 处于同一网段 |
real_service_1 | 192.168.10.1 | nginx 服务器 |
real_service_2 | 192.168.10.2 | nginx 服务器 |
real_service_2 | 192.168.10.3 | nginx 服务器 |
&:四台服务器均关闭防火墙和selinux
1、RS 服务器配置
-
1.1 将三台真实服务器的网关都指向负载均衡器 ( 重要 )
route add default gw 192.168.10.10
-
1.2 为了观察明显,三台真实服务器页面输出不同的内容
真实服务器 页面内容 real_service_1 This is Service 1 real_service_2 This is Service 2 real_service_3 This is Service 3
2、LVS 服务器配置
-
2.1 开启负载均衡器的路由转发
echo 1 > /proc/sys/net/ipv4/ip_forward
-
2.2 添加 ipvs 规则
ipvsadm -C // 清除 ipvs 规则 ipvsadm -A -t 192.168.142.100:80 -s rr // rr, 轮叫算法 ipvsadm -a -t 192.168.142.100:80 -r 192.168.10.1:80 -m // -m, nat 模式 ipvsadm -a -t 192.168.142.100:80 -r 192.168.10.2:80 -m // -m, nat 模式 ipvsadm -a -t 192.168.142.100:80 -r 192.168.10.3:80 -m // -m, nat 模式
3、结果测试
本作品采用《CC 协议》,转载必须注明作者和本文链接