目录:
1. 拓扑图
LVS-DR模式采的IP地址全部为外网IP。
本例中IP的设置全部采用临时设置IP的方式,重启后会失效。
用户请求VIP,会由LVS服务器响应,分配至Real-Server服务器,真实服务器处理完后直接返回给用户,不再通过LVS服务器。
2. 搭建环境 (系统为 Centon 7 )
(1)、LVS-server IP:192.168.36.101
(2)、Real-Server1 IP: 192.168.36.102 安装web服务器 准备测试站点内容
(3)、Real-Server2 IP: 192.168.36.103 安装web服务器 准备测试站点内容
测试机:xp/window7/8都可以,只要能ping通 192.168.36.*
3. LVS服务器部署
(1)、LVS-server配置
a. VIP设置:
[
root@localhost ~]# ifconfig eth0:0 192.168.36.100 netmask 255.255.255.255
[ root@localhost ~]# route add -host 192.168.36.100 dev eth0:0
[ root@localhost ~]# route add -host 192.168.36.100 dev eth0:0
b.安装Ipvsadm
[
root@localhost ~]# yum -y install ipvsadm*
c.lvs配置:
[
root@localhost ~]# ipvsadm -C
[
root@localhost ~]# ipvsadm -At 192.168.36.100:80 -s rr
[
root@localhost ~]# ipvsadm -at 192.168.36.100:80 -r 192.168.36.102:80 -g
[
root@localhost ~]# ipvsadm -at 192.168.36.100:80 -r 192.168.36.103:80 -g
[
root@localhost ~]# ipvsadm -L -n
(2)、Real-Server1配置
[
root@localhost ~]# ifconfig lo:0 192.168.36.100 netmask 255.255.255.255
[
root@localhost ~]# route add -host 192.168.36.100 dev lo:0
[
root@localhost ~]# echo "1" > /proc/sys/net/ipv4/conf/lo/arp_ignore
[
root@localhost ~]# echo "2" > /proc/sys/net/ipv4/conf/lo/arp_announce
[
root@localhost ~]# echo "1" > /proc/sys/net/ipv4/conf/all/arp_ignore
[
root@localhost ~]# echo "2" > /proc/sys/net/ipv4/conf/all/arp_announce
(3)、Real-Server2配置
同Real-Server1相同。
4.测试
两个真实服务器上,安装httpd
yum install httpd
vim /var/www/html/index.html
"real server 1"
同理 另外一台 写 "real server 2"
现在通过测试机
"real server 1"
"real server 2"
附上脚本
LVS-server
#!/bin/sh
# description: Start LVS of Director server
VIP=192.168.36.100
RIP1=192.168.36.101
RIP2=192.168.60.102
./etc/rc.d/init.d/functions
case "$1" in
start)
echo " start LVS of Director Server"
# set the Virtual IP Address and sysctl parameter
/sbin/ifconfig eth0:0 $VIP broadcast $VIP netmask 255.255.255.255 up
echo "1" >/proc/sys/net/ipv4/ip_forward
#Clear IPVS table
/sbin/ipvsadm -C
#set LVS
/sbin/ipvsadm -A -t $VIP:80 -s rr -p 600
/sbin/ipvsadm -a -t $VIP:80 -r $RIP1:80 -g
/sbin/ipvsadm -a -t $VIP:80 -r $RIP2:80 -g
#Run LVS
/sbin/ipvsadm
;;
stop)
echo "close LVS Directorserver"
echo "0" >/proc/sys/net/ipv4/ip_forward
/sbin/ipvsadm -C
/sbin/ifconfig eth0:0 down
;;
*)
echo "Usage: $0 {start|stop}"
exit 1
esac
将此脚本命名为lvsDR文件,然后把文件放到/etc/init.d下,执行:
[root@localhost ~]#chomd 755 /etc/init.d/lvsDR
最后可以通过下面命令启动或停止LVS服务:
service lvsDR {start|stop}
真实服务器
[root@localhost ~]#more /etc/init.d/lvsrs
#!/bin/bash
#description : Start Real Server
VIP=192.168.36.100
./etc/rc.d/init.d/functions
case "$1" in
start)
echo " Start LVS of Real Server"
/sbin/ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up
echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce
echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce
;;
stop)
/sbin/ifconfig lo:0 down
echo "close LVS Director server"
echo "0" >/proc/sys/net/ipv4/conf/lo/arp_ignore
echo "0" >/proc/sys/net/ipv4/conf/lo/arp_announce
echo "0" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "0" >/proc/sys/net/ipv4/conf/all/arp_announce
;;
*)
echo "Usage: $0 {start|stop}"
exit 1
esac
然后,修改lvsrs有可执行权限:
[root@localhost ~]#chomd 755 /etc/init.d/lvsrs
最后,可以通过下面命令启动或关闭lvsrs
service lvsrs {start|stop}
原博文地址 http://www.cnblogs.com/xdpxyxy/p/4170101.html