为什么lvs dr配置对http有效,而对普通的tcp程序无效?

Steven_She
为什么lvs dr配置对http有效,而对普通的tcp程序无效?

我按照这篇文章
[url]http://zh.linuxvirtualserver.org/node/272[/url]
在vmware中配置了lvs dr
director,realserver和client都在同一个网段
配置完之后,如果realserver上启动的是web服务器的话,client能通过vip能浏览到页面
但如果realserver上启动的是普通的tcp服务器的话,client就不能通过vip连接到realserver上的服务端程序,错误是Connection Refused,
但是直接连接realserver就行

请问这种情况应该怎么处理?
是不是还要配置什么地方?

谢谢

ga0feng
你的tcp服务器的端口是什么?

完全照搬那个文档是不行的.比如说我有一个listen在7001的程序需要用lvs,那么我需要这样配置:
ipvsadm -A -t 192.168.0.200:7001 -s wlc
ipvsadm -a -t 192.168.0.200:7001 -r 192.168.0.160 -g
ipvsadm -a -t 192.168.0.200:7001 -r 192.168.0.170 -g

如果你已经是这个样子正确配置了你的服务器,那么你的所有的real server的那个service都可用吗?real server里面有一个不好用就可能碰到这种问题.
lvs只负责转发,不负责detect failure.

correct me if I am wrong...

[[i] 本帖最后由 ga0feng 于 2008-4-24 13:07 编辑 [/i]]