免费注册 查看新帖 |

Chinaunix

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

求助,VMware构建LVS时出现的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-09-21 23:26 |只看该作者 |倒序浏览
我现在需要配置DR/RS模式的LVS系统,使用内核为2.6.16的SUSE10.1。
按照网上找到的资料,如果配置DR节点的虚拟IP为192.168.126.100,DR自己的IP为192.168.126.101,两台RS的IP分别为192.168.126.127和128,那么

配置DR的脚本为如下内容:

  1. #!/bin/sh
  2. #create in 20060812 by ghb
  3. # description: start LVS   of  Directorserver
  4. VIP=192.168.126.100
  5. RIP1=192.168.126.127
  6. RIP2=192.168.126.128
  7. #RIPn=192.168.126.128~254
  8. GW=192.168.126.1

  9. . /etc/rc.d/init.d/functions

  10. case "$1" in
  11.     start)
  12.         echo " start LVS  of DirectorServer"
  13.        # set the Virtual  IP Address
  14.        /sbin/ifconfig eth0:0 $VIP broadcast $VIP netmask 255.255.255.255 up
  15.        /sbin/route add -host $VIP dev eth0:0
  16.        #Clear IPVS table
  17.        /sbin/ipvsadm -C
  18.       #set LVS
  19.       /sbin/ipvsadm -A -t $VIP:80 -s rr  (如果需要session保持添加-p 默认保持300秒)
  20.       /sbin/ipvsadm -a -t $VIP:80 -r $RIP1:80 -g
  21.       /sbin/ipvsadm -a -t $VIP:80 -r $RIP2:80 -g
  22.       #/sbin/ipvsadm -a -t $VIP:80 -r $RIP3:80 -g
  23.       #Run LVS
  24.       /sbin/ipvsadm
  25.       #end

  26.         ;;
  27.     stop)
  28.         echo "close LVS Directorserver"
  29.         /sbin/ipvsadm -C
  30.         ;;
  31.     *)
  32.         echo "Usage: $0 {start|stop}"
  33.         exit 1
  34. esac
复制代码


配置某一台的RS的脚本内容为:



  1. #!/bin/bash
  2. #description : start realserver  
  3. #create in 20060812 by ghb
  4. VIP=192.168.126.100
  5. /sbin/ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up
  6. /sbin/route add -host $VIP dev lo:0
  7. echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore
  8. echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce
  9. echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore
  10. echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce  
  11. sysctl -p
  12. #end

复制代码


但构建出来的系统通过127和128的IP直接访问RS正常,但访问100的节点根本找不到,请大虾指点。


此外还有两个疑问
其一:是否2.6的内核只要设置了arp_ignore和arp_announce就不需要对内核打no-arp补丁后重新编译?
其二:为何将RS的虚拟ip 192.168.126.100绑定在lo上?这样就能使往interface外部发送的数据包的ip都显示为192.168.126.100的虚拟IP?

[ 本帖最后由 foodoo2_1 于 2006-9-21 23:27 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2006-09-22 15:00 |只看该作者
我怀疑你RS 没配置到客户机的网关。另外RS 的打开ip_forward=1
可以参考我这篇文章:
http://zh.linuxvirtualserver.org/node/272

这是基于Fedora Core5 的kernel 版本2.6.9 ,和Suse 差别应该不大吧。

论坛徽章:
0
3 [报告]
发表于 2006-09-22 17:36 |只看该作者
谢谢指点,我这就去看看

论坛徽章:
0
4 [报告]
发表于 2006-09-25 10:26 |只看该作者
VM里三台机器都是bridge方式连接的,和主机都在192.168.1.0网段
我按照你的方法设置完毕了,可是主机里怎么都ping不到Virtual IP,只能ping到RS的IP。问题可能出在哪里?

论坛徽章:
0
5 [报告]
发表于 2006-09-26 14:29 |只看该作者
访问的问题已经解决了,但现在感觉LVS运行时,总是只访问一台机器
详情见:
http://zh.linuxvirtualserver.org/node/348

论坛徽章:
0
6 [报告]
发表于 2006-09-26 22:39 |只看该作者
你应该把拓普图和ipvsadm -Ln 命令的结果贴上来。

另外在测试阶段,应该让A和B网页的内容不同,以便分辨,最好用lynx,links,elinks 之类的工具访问,防止客户端cache 的问题。

论坛徽章:
0
7 [报告]
发表于 2006-09-28 10:39 |只看该作者
我想可能是持续连接的问题,如果再客户机和集群建立任何连接之前,瞬间发送请求,这些连接就能够被分发到不同的RS上了

论坛徽章:
0
8 [报告]
发表于 2006-09-28 11:37 |只看该作者
我做的XEN里的,IPVS中及XEN_RS都正常,就是Client无法得到RS的HTTP回应。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP