LVS Linux虚拟服务器:
准备:连接三台虚拟终端,一台负载均衡器,两台负载服务器,客户端为本地浏览器。
第一步,配置负载均衡器
(1) 配ip(VIP):
每块网卡可以配置多个ip地址。
Ifconfig eth0:3 192.168.94.100 netmask 255.255.255.0
(2) 将负载均衡器设置为 :接收到和自己ip不对应的数据包就转发出去 (相当于路由器功能)
echo “1” > /proc/sys/net/ipv4/ip_forward
即时生效,如不设置的话,接收到和自己ip不对应的包就会丢弃。
第二步,配置负载服务器
(1) 修改RealServer的响应级别和通告级别。
echo 1 > /proc/sys/net/ipv4/conf/eth0/arp_ignore
echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
echo 2 > /proc/sys/net/ipv4/conf/eth0/arp_announce
echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
补:由于/proc目录是内核的映射,Kernel内核启动的时候会加载proc目录下文件。/proc目录下的文件均是内核中的变量等,linux均将其抽象成了文件,存放在/proc目录。系统运行过程中,不能用vi命令去修改这些变量,应用echo重定向。
(2) 配置隐藏VIP给环回 接口
Ifconfig lo:8 192.168.9.100 netmask 255.255.255.255 (子网掩码配全1,可以保证数据包发给自己)
(3) 启动httpd服务:
1)安装httpd:yum install httpd –y
2)编辑主页内容
cd /var/www/html
vi index.html
from 192.168.94.33 …….
wq
3)启动httpd服务:
service httpd start
测试httpd服务是否正常:浏览器中访问RIP。页面返回主页内容即配置成功。
注:此时负载均衡器还未配置ipvsadm(ipvs模块还未被激活)
此时在浏览器中访问192.168.94.100页面会返回错误,页面找不到。
第三步,激活负载均衡器的ipvs模块
(1) 安装ipvsadm管理程序:
yum install ipvsadm –y
这一步可能会安装失败,检查是否挂载光盘目录到/mnt目录下。
mount /dev/cdrom /mnt
(2) 配置入包监控:
Ipvsadm –A –t 192.168.94.100 :80 –s rr (-s 调度器 rr轮循)
(3) 配置出包负载到哪个负载服务器
Ipvsadm –a –t 192.168.94.100:80 –r 192.168.94.31 –g
(配置RIP 有几台负载服务器配几个)
使用 ipvsadm –ln可查看可用的负载服务器清单。
此时,我们就可以测试ipvsadm模块是否配置成功:
在本地浏览器访问VIP,查看返回网页是否是配置的多台负载服务器的返回主页。
使用ipvsadm –lnc 查看负载服务器如何处理的客户端VIP请求。
可能会出现的一些错误:
1)执行ipvsadm –lnc 命令,返回的结果是空的,说明客户端浏览器发送的数据包就没有到达负载均衡器。
2)访问VIP刷新时,页面无变化:可能是某台负载服务器的的httpd 服务没有启动,或者没有配隐藏VIP。