科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道基础软件Alteon交换机负载均衡策略引发的会话失败问题

Alteon交换机负载均衡策略引发的会话失败问题

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

初步估计,Session failed的错误与交换机有关。

作者:麻书城 来源:CSDN 2008年1月8日

关键字: 会话失败 负载均衡 交换机 Alteon

  • 评论
  • 分享微博
  • 分享邮件
某项目中“Session failed”问题的分析解决
1、错误现象
用户运行Appeon Web应用时,在登录后的某个时刻,IE突然弹出一条错误信息:Your session failed. Please open the IE and run the application again.
Session是用户运行Appeon Web应用开始后,客户端与服务器端建立的一个会话连接。如果用户在一段时间内,没有做服务器相关的操作,AppeonServer会清除用户的session,用户需要重新打开IE运行Web应用。
在Appeon Enterprise Management控制台中可以设置“会话超时时间”。以秒为单位,默认为3600秒,即一个小时。设为0表示永远不超时。
根据客户项目的实际情况,用户希望在早上上班登录后,一直保持连接状态到下班时间。这就需要将“会话超时时间”设为8到10个小时。
但是,系统管理人员在将超时时间设置为8小时,或者更长的时间,并未达到预期的效果。Session常常在用户正在操作的时候,突然出现上述超时提示。而且没有什么规律,有时几分钟就出现,有时半天也没什么事。这种错误的出现给用户正常工作带来很多困扰。
2、错误定位
由于客户项目中的Web应用是采用了Alteon交换机负载均衡(Server Load Balancing,SLB)的技术。所有用户通过域名访问Web应用,IP地址被解析到交换机的对外的一个IP和端口。交换机根据某种策略将用户的Http请求分发给后台服务器(Real Server Group)中的一台。
考虑到单独访问一台Appeon Server的情况下,很少出现Appeon Session Failed的错误。初步估计,Session failed的错误与交换机有关。为了验证这个初步的想法,对项目中使用的交换机和服务器做了如下调整(见图1):
l    将Server3从Server group中分离出来,不接受交换机分发的用户请求。
l    部分用户和开发人员通过交换机提供的一个虚拟IP地址直接访问Server3。
图 1 将一台服务器从交换机分离出来单独访问
运行一天后,分析三台服务器上的Appeon Server日志信息。结果发现,通过L4交换机分发请求到64和65两台服务器时,必然会出现此session failed错误信息。而单独访问66机器的则没有此错误信息。
虽然仅仅测试了有限的一段时间,但是试验结果进一步证实了前面的想法,即session failed错误在很大程度上与交换机有关。或者说,L4交换机有关分发的某些设置或策略可能对Appeon Session产生了影响
3、问题分析
既然确定了与交换机的设置或分发策略有关,那么就需要根据交换机的型号查阅和研究相关的设置。通过与网络管理人员的交流,我们得知该项目中使用的交换机是Nortel公司生产的Alteon708交换机。
通过浏览Nortel公司网站,查阅和下载相关PPT资料和Alteon 708手册。
图 2 Alteon交换机负载均衡原则(Nortel)
从图2可以看出,服务器负载均衡原则通常有五种,这五种原则各有特点,分别适合于不同的场合和不同的应用。Minimum misses原则对于Server Load Balancing由于同时基于源IP和Real Server IP确定分发给哪个Real Server,对会话一致性的影响最小。
在与项目网管人员的进一步交流中得知,当前采用的是Hash原则。那会不会就是因为Hash原则设置,导致Appeon Session failed呢?
我们进一步下载和查看了Alteon交换机Web OS的相关文档——Web OS 7.2 Configure Guide on Alteon 708 (050156a.pdf, download from www.nortel.com)
图3和图4分别是Web OS配置文档中关于Minimum misses和hash原则的说明。
 
图 3 minmisses ---- Metrics for Real Server groups(Chapter 7)
图 4 Hash ---- Metrics for Real Server groups(Chapter 7)
4、问题解决
经过前面的分析和研究后,我们将Alteon交换机的“Server Load Balancing Metric”设置进行了调整,由原来的“Hash”调整为“Minmisses
2005年12月14日下午16:30分左右,我们调整Alteon交换机的设置。此后一直抓取和分析所有服务器的日志文件。尽管调整设置后,依然出现超时错误,但是从12月15日凌晨3点起,日志文件中“Session Failed的异常”全部消失。
时间段
Server1(64
Server2(65)
Server3(66)
12月14日
12:00:00~23:59:59
有超时错误
有超时错误
有超时错误
12月15日
00:00:00~23:59:59
02:55:45之前有错误,之后消失
12月16日
00:00:00~19:40:00
连续观察了将近48小时内所有服务器的日志,没有发现“session failed”异常。电话询问用户,反映说使用过程中再没有出现超时错误。我们可以认为,此问题已基本解决
 
查看本文来源
    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章