免费注册 查看新帖 |

Chinaunix

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

求教一个LVS的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-11-17 23:45 |只看该作者 |倒序浏览
主备两台LVS服务器,后边两台Real server。用的直接路由的模式

测试了一阵发现有时VIP会同时飘到两台机器上。造成应用服务器不能访问。但关掉一台lvs服务器或者另外一台服务器,vip和服务都能切到ACTIVE的一端,但过一段时间,发现两台LVS服务器又同时起了。停掉LVS2的服务以后,vip飘到LVS1上,应用才能访问。刚开始接触lvs,请教一下可能什么地方的问题?
LVS1


serial_no = 245
primary = 192.168.111.11
service = lvs
backup_active = 1
backup = 192.168.111.12
heartbeat = 1
heartbeat_port = 1050
keepalive = 10
deadtime = 18
network = direct
nat_nmask = 255.255.255.255
debug_level = NONE
monitor_links = 1
virtual stweb {
     active = 1
     address = 192.168.111.100 bond0:1
     vip_nmask = 255.255.255.0
     port = 80
     persistent = 5
     pmask = 255.255.255.255
     send = "GET / HTTP/1.1\r\n\r\n"
     expect = "HTTP"
     use_regex = 0
     load_monitor = rup
     scheduler = wlc
     protocol = tcp
     timeout = 20
     reentry = 15
     quiesce_server = 1
     server app1 {
         address = 192.168.111.21
         active = 1
         weight = 10
     }
     server app2 {
         address = 192.168.111.22
         active = 1
         weight = 10
     }
}
virtual stkiosk {
     active = 1
     address = 192.168.111.200 bond0:2
     vip_nmask = 255.255.255.0
     port = 88
     send = "GET /stsf/services/Version HTTP/1.1\r\nHost: 192.168.111.200:88\r\n\r\n"
     expect = "HTTP/1.1 200"
     use_regex = 0
     load_monitor = rup
     scheduler = wlc
     protocol = tcp
     timeout = 20
     reentry = 15
     quiesce_server = 1
     server app1 {
         address = 192.168.111.21
         active = 1
         weight = 5
     }
     server app2 {
         address = 192.168.111.22
         active = 1
         weight = 5
     }
}



/var/log/message:

Nov 17 21:24:05 lvs1 pulse[3772]: partner active: resending arps
Nov 17 21:24:10 lvs1 pulse[29232]: gratuitous lvs arps finished
Nov 17 21:24:15 lvs1 pulse[3772]: partner active: resending arps
Nov 17 21:24:20 lvs1 pulse[29257]: gratuitous lvs arps finished
Nov 17 21:24:25 lvs1 pulse[3772]: partner active: resending arps
Nov 17 21:24:30 lvs1 pulse[29274]: gratuitous lvs arps finished
Nov 17 21:24:35 lvs1 pulse[3772]: partner active: resending arps
Nov 17 21:24:40 lvs1 pulse[29299]: gratuitous lvs arps finished
Nov 17 21:24:45 lvs1 pulse[3772]: partner active: resending arps
Nov 17 21:24:50 lvs1 pulse[29316]: gratuitous lvs arps finished
Nov 17 21:24:55 lvs1 pulse[3772]: partner active: resending arps
Nov 17 21:25:00 lvs1 pulse[29343]: gratuitous lvs arps finished
Nov 17 21:25:05 lvs1 pulse[3772]: partner active: resending arps
Nov 17 21:25:10 lvs1 pulse[29360]: gratuitous lvs arps finished
Nov 17 21:25:15 lvs1 pulse[3772]: partner active: resending arps
Nov 17 21:25:20 lvs1 pulse[29385]: gratuitous lvs arps finished
Nov 17 21:25:25 lvs1 pulse[3772]: partner active: resending arps
Nov 17 21:25:30 lvs1 pulse[29402]: gratuitous lvs arps finished
Nov 17 21:25:35 lvs1 pulse[3772]: partner active: resending arps
Nov 17 21:25:40 lvs1 pulse[29427]: gratuitous lvs arps finished
Nov 17 21:25:45 lvs1 pulse[3772]: partner active: resending arps
Nov 17 21:25:50 lvs1 pulse[29444]: gratuitous lvs arps finished
Nov 17 21:25:55 lvs1 pulse[3772]: partner active: resending arps
Nov 17 21:26:00 lvs1 pulse[29469]: gratuitous lvs arps finished
Nov 17 21:26:05 lvs1 pulse[3772]: partner active: resending arps
Nov 17 21:26:10 lvs1 pulse[29487]: gratuitous lvs arps finished




lvs2

serial_no = 247
primary = 192.168.111.12
service = lvs
backup_active = 1
backup = 192.168.111.11
heartbeat = 1
heartbeat_port = 1050
keepalive = 10
deadtime = 18
network = direct
nat_nmask = 255.255.255.255
debug_level = NONE
monitor_links = 1
virtual stweb {
     active = 1
     address = 192.168.111.100 bond0:1
     vip_nmask = 255.255.255.0
     port = 80
     persistent = 5
     pmask = 255.255.255.255
     send = "GET / HTTP/1.1\r\n\r\n"
     expect = "HTTP"
     use_regex = 0
     load_monitor = rup
     scheduler = wlc
     protocol = tcp
     timeout = 20
     reentry = 15
     quiesce_server = 1
     server app1 {
         address = 192.168.111.21
         active = 1
         weight = 10
     }
     server app2 {
         address = 192.168.111.22
         active = 1
         weight = 10
     }
}
virtual stkiosk {
     active = 1
     address = 192.168.111.200 bond0:2
     vip_nmask = 255.255.255.0
     port = 88
     send = "GET /stsf/services/Version HTTP/1.1\r\nHost: 192.168.111.200:88\r\n\r\n"
     expect = "HTTP/1.1 200"
     use_regex = 0
     load_monitor = rup
     scheduler = wlc
     protocol = tcp
     timeout = 20
     reentry = 15
     quiesce_server = 1
     server app1 {
         address = 192.168.111.21
         active = 1
         weight = 5
     }
     server app2 {
         address = 192.168.111.22
         active = 1
         weight = 5
     }
}





/var/log/message:

Nov 17 21:24:49 lvs2 nanny[3447]: The following exited abnormally:
Nov 17 21:24:49 lvs2 nanny[3447]: failed to read remote load
Nov 17 21:24:50 lvs2 nanny[3446]: The following exited abnormally:
Nov 17 21:24:50 lvs2 nanny[3446]: failed to read remote load
Nov 17 21:24:50 lvs2 pulse[2883]: partner active: resending arps
Nov 17 21:24:52 lvs2 nanny[3449]: The following exited abnormally:
Nov 17 21:24:52 lvs2 nanny[3449]: failed to read remote load
Nov 17 21:24:55 lvs2 pulse[28569]: gratuitous lvs arps finished
Nov 17 21:25:00 lvs2 pulse[2883]: partner active: resending arps
Nov 17 21:25:05 lvs2 nanny[3450]: The following exited abnormally:
Nov 17 21:25:05 lvs2 nanny[3450]: failed to read remote load
Nov 17 21:25:05 lvs2 pulse[28587]: gratuitous lvs arps finished
Nov 17 21:25:09 lvs2 nanny[3447]: The following exited abnormally:
Nov 17 21:25:09 lvs2 nanny[3447]: failed to read remote load
Nov 17 21:25:10 lvs2 nanny[3446]: The following exited abnormally:
Nov 17 21:25:10 lvs2 nanny[3446]: failed to read remote load
Nov 17 21:25:10 lvs2 pulse[2883]: partner active: resending arps
Nov 17 21:25:12 lvs2 nanny[3449]: The following exited abnormally:
Nov 17 21:25:12 lvs2 nanny[3449]: failed to read remote load
Nov 17 21:25:15 lvs2 pulse[28607]: gratuitous lvs arps finished
Nov 17 21:25:20 lvs2 pulse[2883]: partner active: resending arps
Nov 17 21:25:25 lvs2 nanny[3450]: The following exited abnormally:
Nov 17 21:25:25 lvs2 nanny[3450]: failed to read remote load
Nov 17 21:25:25 lvs2 pulse[28626]: gratuitous lvs arps finished
Nov 17 21:25:26 lvs2 pulse[2883]: Terminating due to signal 15
Nov 17 21:25:26 lvs2 lvs[3434]: shutting down due to signal 15
Nov 17 21:25:26 lvs2 lvs[3434]: shutting down virtual service stweb
Nov 17 21:25:26 lvs2 nanny[3446]: Terminating due to signal 15
Nov 17 21:25:26 lvs2 nanny[3447]: Terminating due to signal 15
Nov 17 21:25:26 lvs2 lvs[3434]: shutting down virtual service stkiosk
Nov 17 21:25:26 lvs2 nanny[3449]: Terminating due to signal 15
Nov 17 21:25:26 lvs2 nanny[3450]: Terminating due to signal 15

论坛徽章:
0
2 [报告]
发表于 2008-11-18 22:14 |只看该作者
测试了一阵发现有时VIP会同时飘到两台机器上。造成应用服务器不能访问。但关掉一台lvs服务器或者另外一台服务器,vip和服务都能切到ACTIVE的一端,但过一段时间,发现两台LVS服务器又同时起了。停掉LVS2的服务以后,vip飘到LVS1上,应用才能访问

这种现象说明,你使用的lvs支持高可用性的组件的心跳信息是检测失败的;LVS本身作为一个节点使用的时候会有单点故障,所以就需要正好Heartbeat,Heartbeat保证lvs调度节点的高可用,同事还要结合第三方组件对realserver的状态进行监控,将失效的节点从lvs路由调度信息中移除

论坛徽章:
0
3 [报告]
发表于 2008-11-19 11:38 |只看该作者
心跳断了,检查2个机器之间的网络心跳通讯
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP