环境介绍
- 一台windows名为W1,三台虚拟机分别为LVS-Server,Real-Web-Server1,Real-Web-Server2
- 模拟W1为外网客户端,访问LVS-Server服务器,LVS-Server请求响应分发给两台真实的WEB服务器Real-Web-Server1,Real-Web-Server2。
- LVS-Server为双网卡,eth0,eth1。LVS-Server、Real-Web-Server1、Real-Web-Server2的eth0网卡为均选择为同一网卡。
搭建步骤
-
IP设置
W1的虚拟网卡Vmware1IP设置为8.8.8.4,子网掩码255.255.255.0
LVS-Server的eth0IP设置为8.8.8.8,eth1的IP设置为192.168.10.1,子网掩码255.255.255.0
Real-Web-Server1的IP设置为192.168.10.2,子网掩码255.255.255.0,网关192.168.10.1
Real-Web-Server2的IP设置为192.168.10.3,子网掩码255.255.255.0,网关192.168.10.1
此时W1可ping通LVS-Server,LVS-Server、Real-Web-Server1、Real-Web-Server2三者之间可ping通。// 设置临时ip地址和子网掩码 # ifconfig eth0 192.168.10.2 netmask 255.255.255.0 // 设置网关 # route add -default gw 192.168.10.1 //查看路由信息 # route -n
也可以通过修改配置文件设置,这里就不一一介绍,可查看相关资料设置。
-
关闭虚拟机的防火墙,以防影响服务器的响应。
# service network status # service network stop
-
LVS-Server服务器脚本设置
开启路由功能:echo 1 >/proc/sys/net/ipv4/ip_forward
编写shell脚本 lvs.sh#!/bin/bash #lsv.sh #清除LVS-Server调度表中的所有记录 ipvsadm -C #增加一个带有调度算法的转换表,-rr 轮叫模式 ipvsadm -At 8.8.8.8:80 -s rr #增加轮叫的服务器 -m nat模式 ipvsadm -at 8.8.8.8:80 -r 192.168.10.2:80 -m ipvsadm -at 8.8.8.8:80 -r 192.168.10.3:80 -m
给shell脚本设置执行权限
#chmod a+x lvs.sh
-
设置Real-Web-Server1,Real-Web-Server2服务器
为方便测试,给Real-Web-Server1,Real-Web-Server2两台服务器的网站根目录编写不同的页面,我写的是各自服务器的ip。
Real-Web-Server1网站根目录编写页面index.html,内容为192.168.10.2
Real-Web-Server2网站根目录编写页面index.html,内容为192.168.10.3 -
运行LVS-Server上的lvs.sh脚本
# ./lvs.sh
启动LVS-Server、Real-Web-Server1、Real-Web-Server2服务器的web服务。
-
在W1的浏览器上访问8.8.8.8
每隔五秒左右刷新,页面呈现不同的IP,则设置成功。
如果没有出现理想效果,请检查 1.各服务器防火墙是否处于关闭状。2.web服务是否开启。3.W1能否ping通LVS-Server,LVS-Server,Real-Web-Server1,Real-Web-Server2三者之间能否ping通。
相关资料:
LVS负载均衡(LVS简介、三种工作模式、十种调度算法)
linux安装ipvsadm-1.24
LVS负载均衡-三种模式(Dr模式)
总结
如果您对这个文章有任何异议,那么请在文章评论处写上你的评论。
愿大家都能在编程这条路,越走越远。
喜欢一个人就勇敢表白,也许你还能知道自己是几号备胎。