Chinaunix首页 | 论坛 | 博客
  • 博客访问: 212222
  • 博文数量: 38
  • 博客积分: 1032
  • 博客等级: 少尉
  • 技术积分: 260
  • 用 户 组: 普通用户
  • 注册时间: 2009-03-14 18:14
文章分类

全部博文(38)

文章存档

2017年(2)

2016年(1)

2015年(10)

2012年(3)

2011年(1)

2010年(7)

2009年(14)

分类: 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了^_^^_^^_^^_^^_^



阅读(5377) | 评论(23) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2009-11-07 18:33:09

http://www.damnsmalllinux.org/download.html

chinaunix网友2009-10-27 17:18:02

http://zh-kernel.org/pipermail/linux-kernel/2007-September/000799.html(内核)

chinaunix网友2009-10-25 09:14:57

难道没人试过将real server的IP 与VIP设于不同一个网段测试吗? 既然都是在同一IP段,不如用DNS搞定.. 我用不同网段没搞定...所以想看到一个能用不同网段搞定LVS的例子..

chinaunix网友2009-10-24 15:47:36

http://www.realtek.com.tw/downloads/downloadsview.aspx?langid=3&pnid=5&pfid=5&level=5&conn=4&downtypeid=3&getdown=false#2

chinaunix网友2009-10-24 15:38:39

http://forum.ubuntu.org.cn/viewtopic.php?f=116&t=119236&st=0&sk=t&sd=a