分类: LINUX
2009-10-20 18:08:46
lvs群集的组建(lvs-DR)
(RIP1是Realserver A, RIP2是Realserver B .这里Director只有一块网卡。Director 的虚拟IP是绑定在Director的真实网卡上的)
--------------------------------------------------------------------------------------------------------
一、Director 配置
1、下载ipvsadm管理程序
(对应自己的内核版本哦^_^)
ipvsadm-x-x.tar.gz
tar zxvf ipvsadm-x-x.tar.gz
cd ipvsadm-x-x
make && make install
(我的系统是centos5.3 默认系统安装好了ipvsadm)
2、配置Director 服务器的VIP脚本 lvs-dr
脚本如下:
--------------------------------------------------------------------------------------------------------
#!/bin/bash
VIP=10.1.1.221
RIP1=10.1.1.52
RIP2=10.1.1.53
GW=10.1.1.1
./etc/rc.d/init.d/functions
case "$1" in
start)
echo " start lvs of Directorserver"
/sbin/ifconfig eth0:0 $VIP broadcast $VIP netmask 255.255.255.255 up
/sbin/route add -host $VIP dev eth0:0
# clear ipvs table
/sbin/ipvsadm -C
#set lvs
/sbin/ipvsadm -A -t $VIP:80 -s rr
/sbin/ipvsadm -a -t $VIP:80 -r $RIP1:80 -g
/sbin/ipvsadm -a -t $VIP:80 -r $RIP2:80 -g
/sbin/ipvsadm
;;
stop)
echo "close lvs directorserver"
/sbin/ipvsadm -C
;;
*)
echo "usage: $0 {start|stop}"
exit 1
esac
--------------------------------------------------------------------------------------------------------
在终端下运行lvs-dr (要给lvs-dr执行权限哦^_^),这样Director服务器就配置完成了。
--------------------------------------------------------------------------------------------------------
二、Realserver配置
realserver 脚本配置( realserver脚本如下)
(realserver A 、 realserver B 二服务器都要运行这个脚本)
--------------------------------------------------------------------------------------------------------
#!/bin/bash
VIP=10.1.1.221
./etc/rc.d/init.d/functions
case "$1" in
start)
echo " start lvs of realserver "
/sbin/ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up
/sbin/route add -host $VIP dev lo:0
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 lvsdriectorserver"
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
--------------------------------------------------------------------------------------------------------
此脚本使realserver A 、B 不响应arp请求,将此脚本分别在realserver A 、B上执行就可以了
这个网络是提供WEB服务的,所以在RealserverA 、RealserverB上安装apache
可以安装httpd 软件包,也可安装源代码。在这个实验中我安装的是httpd 软件包。
安装httpd包后。在A 服务器中写入测试页
终端下:echo "Hello world ,This is Realserver A">/var/www/html/test.html
在B服务器中同样写入测试页
终端下:echo "Hello world ,This is Realserver B > /var/www/html/test.html
在A B 二台服务器上开启web服务 service httpd start,并在A、B上分别执行realserver脚本。
三、客户端测试
在客户端打开浏览器输入10.1.1.221/test.html。则可以看
分别看Hello world ,This is Realserver A和Hello world ,This is Realserver B
这样就OK了^_^^_^^_^^_^^_^
chinaunix网友2009-12-05 11:48:20
http://www.turbolinux.com.cn/turbo/wiki/doku.php?id=system:initrd%E5%92%8Cnash
chinaunix网友2009-12-03 10:40:27
http://www.xxlinux.com/linux/topic/cisco/2006-10-21/5246.html
chinaunix网友2009-12-02 19:01:04
http://tech.e800.com.cn/articles/2009/1023/1256261962109_1.html