Chinaunix首页 | 论坛 | 博客
  • 博客访问: 320126
  • 博文数量: 50
  • 博客积分: 3052
  • 博客等级: 中校
  • 技术积分: 710
  • 用 户 组: 普通用户
  • 注册时间: 2007-12-03 12:13
文章分类
文章存档

2009年(10)

2008年(40)

我的朋友

分类: LINUX

2008-05-16 12:02:29

lvs+heartbeat实验完成也有几天的时间了,由于lvs是基于4层交换的,只能对于来源ip进行持续的投递,对于7层的ipvs就无能为力了,于是认真看了lvs官方网站,发现了ktcpvs(Kernel TCP Virtual Server)



可以在这里获得基于2.6内核的版本下载
下载后按照网站上的说明进行编译安装 cd ktcpvs && make install

这时还需要cd userspace/ && make install
这样退回到ktcpvs目录后执行./start就可以正常启动了

编辑config文件进行ktcpvs的配置,首先说下我的测试想法吧
3台电脑(安装redhat 4.5)
其中一个做ktcpvs
另外两台我用作了web

         ktcpvs
       (2.187)
         |   |
        |     |
       |       |
   (2.188) (2.189)
     web01    web02

我的目的,所以对于\.gif$的都投递到web01上,所有\.html$都投递到web02上
下面是我的config的配置文件内容
Virtual web1 {
    listen = 192.168.2.187:80
    scheduler = phttp
    startservers = 8
    maxclients = 256
    minspareservers = 6
    maxspareservers = 18
    #redirect = localhost:80
    server = 192.168.2.188:80 1
    server = 192.168.2.189:80 1
    rule = pattern "\.gif$" match 1 use server 192.168.2.188:80
    rule = pattern "\.html$" match 1 use server 192.168.2.189:80
}
然后在2.187上执行./start命令,如果没有报错就说明已经正常启动了,可以使用netstat -ln查看

Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN
tcp 0 0 192.168.2.187:80 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:625 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:631 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN
tcp 0 0 :::22 :::* LISTEN
udp 0 0 0.0.0.0:619 0.0.0.0:*
udp 0 0 0.0.0.0:622 0.0.0.0:*
udp 0 0 0.0.0.0:111 0.0.0.0:*
udp 0 0 0.0.0.0:631 0.0.0.0:*

然后分别两台webserver上启动lighttpd

经过测试已经实现,确实达到了html的投到2.189上,gif投递到2.188上

以上实验只是实现了ktcpvs简单的功能,等有时间再进行深入的研究
阅读(1929) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~