免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 8077 | 回复: 16
打印 上一主题 下一主题

lvs dr with squid问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-06-11 16:04 |只看该作者 |倒序浏览
大家好,我的系统是redhat as4 update 3 ,内核版本是2.6.9-34.EL,ipvsadm-1.24-6,piranha-0.8.2-1 ,整个lvs集群架构是
                           lvs director
                               |  
       squid01  server             squid02 server
                               |
                           realserver
我的目的是lvs负载均衡squid server,用direct route转发方式 ,用piranha配置后,lvs.cf如下:
  1. serial_no = 18
  2. primary = 192.168.22.111
  3. service = lvs
  4. backup = 0.0.0.0
  5. heartbeat = 1
  6. heartbeat_port = 539
  7. keepalive = 6
  8. deadtime = 18
  9. network = direct
  10. debug_level = NONE
  11. virtual lvs {
  12.      active = 1
  13.      address = 192.168.22.120 eth0:1
  14.      vip_nmask = 255.255.255.255
  15.      port = 80
  16.      send = "GET / HTTP/1.0rnrn"
  17.      expect = "HTTP"
  18.      use_regex = 0
  19.      load_monitor = none
  20.      scheduler = rr
  21.      protocol = tcp
  22.      timeout = 6
  23.      reentry = 15
  24.      quiesce_server = 0
  25.      server squid1 {
  26.          address = 192.168.22.199
  27.          active = 1
  28.          weight = 1
  29.      }
  30.      server squid2 {
  31.          address = 192.168.22.238
  32.          active = 1
  33.          weight = 1
  34.      }
  35. }
复制代码

注: 192.168.22.111是lvs的eth0地址,192.168.22.120是VIP,192.168.22.199和192.168.22.238是squid01和squid02
其中pulse后,/var/log/message中有很多如下信息:
Jun 11 15:39:03 lvs nanny[3834]: READ to 192.168.22.199:80 timed out
Jun 11 15:39:03 lvs nanny[3835]: READ to 192.168.22.238:80 timed out
Jun 11 15:39:15 lvs nanny[3834]: READ to 192.168.22.199:80 timed out
Jun 11 15:39:15 lvs nanny[3835]: READ to 192.168.22.238:80 timed out
Jun 11 15:39:27 lvs nanny[3835]: READ to 192.168.22.238:80 timed out
Jun 11 15:39:27 lvs nanny[3834]: READ to 192.168.22.199:80 timed out
Jun 11 15:39:39 lvs nanny[3835]: READ to 192.168.22.238:80 timed out
Jun 11 15:39:39 lvs nanny[3834]: READ to 192.168.22.199:80 timed out
Jun 11 15:39:51 lvs nanny[3835]: READ to 192.168.22.238:80 timed out
Jun 11 15:39:51 lvs nanny[3834]: READ to 192.168.22.199:80 timed out
用ipvsadm查看,没有显示realserver,如下:

  1. [root@lvs ha]# ipvsadm
  2. IP Virtual Server version 1.2.0 (size=4096)
  3. Prot LocalAddress:Port Scheduler Flags
  4.   -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
  5. TCP  192.168.22.120:http rr
复制代码

请问各位大虾,这到底是哪里的问题,帮帮小弟吧

论坛徽章:
0
2 [报告]
发表于 2007-06-11 16:21 |只看该作者
在real server上没有配置虚拟IP

论坛徽章:
0
3 [报告]
发表于 2007-06-11 16:56 |只看该作者
原帖由 wang3140 于 2007-6-11 16:21 发表于 2楼  
在real server上没有配置虚拟IP

realserver上已经配置了虚拟IP,由于我采用的是dr模式,所以2台squid都进行了如下设置:
1、关闭arp
net.ipv4.ip_forward = 1
net.ipv4.conf.lo.arp_ignore = 1
net.ipv4.conf.lo.arp_announce = 2
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2
执行sysctl -p

2、配置虚拟IP
置VIP的网卡为/etc/sysconfig/network-scripts/ifcfg-lo:0。


DEVICE=lo:0
IPADDR=192.168.22.120
NETMASK=255.255.255.255
ONBOOT=yes
这些设置我已经做了,可还是不行

论坛徽章:
0
4 [报告]
发表于 2007-06-11 18:08 |只看该作者
squid得网关指的是哪

论坛徽章:
0
5 [报告]
发表于 2007-06-12 16:15 |只看该作者
squid外网网卡的网关和lvs director的网卡的网关是一样么

论坛徽章:
0
6 [报告]
发表于 2007-07-03 17:44 |只看该作者
原帖由 suran007 于 2007-6-12 16:15 发表于 5楼  
squid外网网卡的网关和lvs director的网卡的网关是一样么

有答案没有了呀,我也是这个问题?

论坛徽章:
0
7 [报告]
发表于 2007-07-05 11:08 |只看该作者
还没有解决,selinux我已经关闭了,我把转发方式改为nat也不行,piranha换了其他的版本还是不行,谁能帮帮我

论坛徽章:
0
8 [报告]
发表于 2007-07-05 23:52 |只看该作者
你按以下步聚测试下就知道问题出在哪了?

1、你直接访问每台web的IP看看行不行

2、你再访问squid的IP行不行

3、再用VIP访问行不行


我记得用lvs+squid+apache时,需要在apache的listen xxxx:80上作些修改,不能是127.0.0.1。

具体要测试下,反正就那么几个IP试下就知道了。


如果你的squid+apache配置不当,监测无法到达真实的Web服务器是不行的。

论坛徽章:
0
9 [报告]
发表于 2007-07-05 23:53 |只看该作者
签名头像的MM哪的啊,毛漂亮的,偶稀饭

有空交流下squid+lvs的经验。最近有相关的项目上线,很久没搞过这个了

论坛徽章:
0
10 [报告]
发表于 2007-07-09 17:14 |只看该作者
原帖由 leaper 于 2007-7-5 23:52 发表于 8楼  
你按以下步聚测试下就知道问题出在哪了?

1、你直接访问每台web的IP看看行不行

2、你再访问squid的IP行不行

3、再用VIP访问行不行


我记得用lvs+squid+apache时,需要在apache的listen xxxx:80上 ...

我不用piranha的话,自己配置一个vip,然后写一个ipvs的脚本,内容如下:
  1. #!/bin/bash
  2. ipvsadm -C
  3. ipvsadm -A -t 192.168.22.120:80 -s rr
  4. ipvsadm -a -t 192.168.22.120:80 -r 192.168.22.199 -g
  5. ipvsadm -a -t 192.168.22.120:80 -r 192.168.22.238 -g
复制代码


192.168.22.199 192.168.22.238是我的2台squid IP,如果我这样执行脚本的话,访问就没有问题,访问vip也可以通过squid采到realserver上的信息,但是如果我用piranha的话,启动pulse后,ipvsadm -Ln不显示squid的ip,如果执行脚本的话就可以,现在是这样
  1. [root@lvs ~]# ipvsadm -Ln
  2. IP Virtual Server version 1.2.0 (size=4096)
  3. Prot LocalAddress:Port Scheduler Flags
  4.   -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
  5. TCP  192.168.22.120:80 rr
  6.   -> 192.168.22.238:80            Route   1      0          0         
  7.   -> 192.168.22.199:80            Route   1      0          0         
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP