- LVS负载均衡器:(Centos7)
- VIP: 172.18.59.100
- DIP: 192.168.1.100
- RS:
- 192.168.1.15 Centos6
- 192.168.1.20 Centos7
首先,需要确定的一点是,LVS-NAT模型中,所有的网络流量都需要流经DS,即包括请求报文和回应报文。当Client端从浏览器或其他客户端请求http或其它网络服务时,先由我们的DS服务器公网网卡接收,然后通过LVS调度挑选一个RS服务器,并通过内部转发机制从其内网网口转发给选中的RS服务器,最后将RS返回的响应报文通过相同的路线反向转回Client端。
配置RS端(实际提供服务的主机)
- 安装httpd 并提供http服务。
为了更好的体现效果,此处我们在rs1和rs2主页文件写入不同内容,实际生产环境应是一样的内容
代码语言:javascript复制[root@rs1 ~]# yum -y install httpd #对RS2执行相同操作,下同
[root@rs1 ~]# systemctl enable httpd.service
[root@rs1 ~]# systemctl restart httpd
[root@rs1 ~]# echo "rs1" > /var/www/html/index.html
- 配置网络
这步非常重要,只有将DS的内网网口设为RS的默认网关,才能保证请求报文和响应报文都经由DS
代码语言:javascript复制[root@rs1 ~]# route add default gw 192.168.1.100
[root@rs1 ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.1.100 0.0.0.0 UG 0 0 0 ens33
192.168.1.0 0.0.0.0 255.255.255.0 U 100 0 0 ens33
配置DS端(调度器)
- 安装
ipvs
并配置调度规则
[root@dr ~]# yum -y install ipvsadm
[root@dr ~]# systemctl enable ipvsadm
[root@dr ~]# ipvsadm -A -t 172.18.59.100:80 -s rr #对访问VIP的请求使用rr轮询算法挑选RS
[root@dr ~]# ipvsadm -a -t 172.18.59.100:80 -r 192.168.1.20:80 -m #添加RS
[root@dr ~]# ipvsadm -a -t 172.18.59.100:80 -r 192.168.1.15:80 -m
- 开启核心转发
[root@dr ~]# echo 1 > /proc/sys/net/ipv4/ip_forward #开启核心转发 这样才能通过内部转发机制将公网和内网的流量打通和交换
[root@dr ~]# cat /proc/sys/net/ipv4/ip_forward
1
代码语言:javascript复制测试
[root@client ~]# curl 172.18.59.100
rs1
[root@client ~]# curl 172.18.59.100
rs2
[root@client ~]# curl 172.18.59.100
rs1
[root@client ~]# curl 172.18.59.100
rs2
[root@client ~]# curl 172.18.59.100
rs1
[root@client ~]# curl 172.18.59.100
rs2