许多企事业单位的核心业务系统通常对稳定性、性能和扩展性有很高的要求。应用负载均衡设备通过对服务器建立有效的健康检查和负载均衡机制,提供一种高性价比、透明的容错方法扩容网络设备和服务器的带宽、吞吐量和数据处理能力,提高网络的灵活性和可用性。这些特性使得应用负载均衡备受青睐。但同时负载均衡出的问题也会经常让网管人员“头痛”。这里我们分享了一个典型的由于负载均衡设备造成的业务访问失败的案例。

与链路负载均衡设备一样,作为流量转发的一环,应用负载均衡设备也可能导致业务访问失败。

1.1   问题描述

1.1.1 故障环境

客户端通过10.189.96.171访问客服web,负载均衡设备-1的IP为10.189.96.169,负载均衡设备-2的IP为10.189.96.170,负载均衡设备-1和负载均衡设备-2通过自身的IP与客服web( 10.191.121.x)通讯,负载均衡设备转发客户端的请求,然后再将响应转发给客户端。

1.1.2 故障现象

客户端通过189.96.171访问Web服务器,会出现404 not found提示:

图 1‑2

客户端直接访问客服web的IP则不会出现问题,怀疑负载均衡设备转发存在问题,需要找到数据进行验证。

1.2   分析过程

1.2.1 分析思路

本故障中出404 NOT  FOUND错误的原因有两个:

一个客户发起的请求不存在,

二是负载均衡设备转发客户端的请求存在问题。

原因一的分析确认方法:

提取404 NOT FOUND会话中的客户端请求,直接访问可以确定客户的请求是否有效,经验证,出现404 NOT FOUND提示的请求直接可以访问,从而排除了第一个原因。

原因二的分析确认方法:

将客户端的请求与负载均衡设备转的请求进行对比分析,确定负载均衡设备的转化是否存在问题。这也是这次分析的重点。

1.2.2 前期分析准备

通过客户反馈,找出错误提示的会话,提取关键字:

图 1‑3

经过与用户确认,每个出错页面的content=“WebLogic Server”;

数据流信息包括客户端IP、sessionID等关键字;

提取正常访问数据,为对比分析做准备。

客户端与负载均衡设备正常的通讯数据:

图 1‑4

客户端的请求里包括详细的get请求,客户端IP、 sna_cookie和login_cookie信息。

负载均衡设备与服务器的正常通讯分析:

图 1‑5

负载均衡设备(10.189.96.70)发起请求,包含的信息与客户端发出的请求信息一致。

1.2.3 分析过程

由于需要完整抓取客户端到负载均衡设备和负载均衡设备到客服web的所有数据,而且该现像不定期出现,所以镜像负载均衡设备端口,并部署科来网络回溯分析系统进行数据采集,等问题重现后提取数据包分析。

图 1‑6

客户端与负载均衡设备的通讯数据分析:

客户端(10.191.138.210)发起GET请求,请求数据1.601KB,内容包括客户端IP、 sna_cookie和login_cookie等信息,服务器10.189.96.171响应404 NOT FOUND,客户端的端口为1359。

图 1‑7

再看客户端与负载均衡设备的数据流信息验证:

图 1‑8

客户端的请求里包括详细的get请求,客户端IP、 sna_cookie和login_cookie信息,且服务器的错误响应包含content=“WebLogic Server”。

负载均衡设备与服务器的通讯分析

提取负载均衡设备与服务器的通讯,设置高级过滤器:(请求里的cookie有客户端的IP信息,数据流包括WebLogic Server,还可以通过sessionID等)。

图 1‑9

负载均衡设备(10.189.96.70)发起请求,请求数据826B,小于客户端的请求数据(未见get请求),服务器10.191.121.32响应404 NOT FOUND,负载均衡设备的端口为1359,与客户端的端口一样。

与客户端的请求综合对比分析可知,负载均衡设备与服务器端通讯的请求不完整,未见sna_cookie信息,但通过login_cookie,客户端IP,sessionid等信息可以确定这是与客户端请求负载均衡设备的同一会话,且服务器的错误响应包含content=“WebLogic Server”。

图 1‑10

1.3   分析结论与建议

负载均衡设备转发的请求与客户端发出的请求不一致,导致客户端访问客服web出现4O4 NOT FOUND提示,该问题与客户端和服务器无关,应是负载均衡设备的转发存在BUG。

1.4  价值

当应用出现不能访问时,我们通常会怀疑是某个网络设备或端点设备的问题,比如本案例我们怀疑是应用负载均衡的问题,但如果缺乏有效的手段和工具,排查问题将会耗费大量的时间。

通过网络分析技术能够帮助用户进行数据包级的精细分析,可以看出数据包在传输中是否存在异常,迅速定位异常节点,从而进行快速排障。

服务器负载信息失败,网络故障分析案例:负载均衡系统造成网络业务访问失败...相关推荐

  1. php宕机怎么查找问题,网络故障分析案例-如何找出偶发性系统宕机的根源

    1.1   问题描述 随着某供电局业务拓展,信息水平不断提升,信息化应用越发突显其关键价值.尽管经过严格测试,各业务应用在上线后总是会遇到各种无法预测的问题:网络带宽.网元健康状况.网络策略.终端性能 ...

  2. ubuntu安装Linux网络配置,CentOS和Ubuntu系统简要网络配置及常用网络管理工具汇总...

    鉴于不同的用户群体.不同的业务在使用Linux系统时共同的首要问题是解决网络连接的问题,写下这篇博文. 本文主要总结CentOS和Ubuntu系统关于网卡的简要配置以及管理网卡时常用的三个工具的区别( ...

  3. win10怎么把网络里面计算机删除,win10系统删除网络共享中多余的计算机的修复技巧...

    有关win10系统删除网络共享中多余的计算机的操作方法想必大家有所耳闻.但是能够对win10系统删除网络共享中多余的计算机进行实际操作的人却不多.其实解决win10系统删除网络共享中多余的计算机的问题 ...

  4. xp电脑如何链接无线网络连接服务器,台式xp电脑wifi受限怎么解决 xp系统台式机网络提示连接受限的解决办法...

    1.查看无线网卡端配置是否与前端路由器配置一致(密码.加密方式),其操作步骤如下: (1)右击"网上邻居" 弹出菜单,选择"属性": (2)右击"无线 ...

  5. 通过 pxe(网络安装)完成centos 系统的网络安装

    首先交代环境.本地2台主机,一台windows主机,一台等待安装centos的主机.2台主机在同一个局域网.通过路由器自动获取ip上网. 网上大多数pxe安装方式都采用自己搭建dns服务器的方式来进行 ...

  6. linux有关网络服务的接口,linux系统有关网络服务接口定义是哪个?

    浮云间 (1)网络接口的命名 这里并不存在一定的命名规范,但网络接口名字的定义一般都是要有意义的.例如: eth0: ethernet的简写,一般用于以太网接口. wifi0:wifi是无线局域网,因 ...

  7. NTP校时系统(网络校时服务器)让交通系统更加智慧

    NTP校时系统(网络校时服务器)让交通系统更加智慧 NTP校时系统(网络校时服务器)让交通系统更加智慧 工业文明以来,城市逐渐从数字化城市走向信息化城市再到高度智慧化的新型智慧城市,我们即将进入智慧城 ...

  8. 笔记本win10更新无线服务器,win10系统笔记本无线网络找不到的解决方法

    很多小伙伴都遇到过win10系统笔记本无线网络找不到的困惑吧,一些朋友看过网上零散的win10系统笔记本无线网络找不到的处理方法,并没有完完全全明白win10系统笔记本无线网络找不到是如何解决的,今天 ...

  9. 网络数据抓取赋能商业分析与业务增长

    互联网上存在海量数据.如何将这些零散的数据抓取下来,存储在公司数据库中?如何从数据中挖掘价值,以洞察市场发展方向,助力业务不断增长? 本文将分享几种常见的网络数据抓取方法,并展示多个真实的数据应用实例 ...

最新文章

  1. 谈谈你对计算思维和python生态的理解_计算思维的的理解及重要性
  2. OVS DPDK--数据结构关系(七)
  3. 【转载】关于Java堆和栈的解释,收藏下来以后学习
  4. 如何实现微服务架构中的服务发现
  5. java时间错误_更改操作系统时间时睡眠()中的Java错误:任何解决方法?
  6. delay 芯片时序output_【第二章 STA概念 上】静态时序分析圣经翻译计划
  7. 培训学web前端前景如何?
  8. flink检查点简单理解
  9. 电力相关的中文期刊查找
  10. 漫画 | 揭密微信诞生记之民间传说
  11. 计算机c盘能格式化吗,C盘能格式化吗
  12. 玉伯:从前端到体验,如何把格局做大
  13. 裁员潮下的打工人,怎么把手里的饭碗端稳?
  14. 中学生学习心理01认知过程
  15. 使用qq邮箱进行服务器邮件代发
  16. Java读取UTF-8格式txt文件第一行出现乱码及解决;Java读带有BOM的UTF-8文件乱码原因及解决方法(转载)...
  17. ChatGPT百科全书(全网最全面)
  18. easyswoole连接mysql
  19. 整理全菜30篇学习vue和脚手架的笔记
  20. python日历模块_Python日历模块总结

热门文章

  1. 走近Java模块化系统OSGi
  2. 清华大学计算机图形学课程
  3. 计算机视觉Computer Vision网址导航
  4. 如何用Python实现八大排序算法
  5. centos 7配置firewall防火墙的地址伪装和端口转发实例
  6. (十六)spring cloud微服务分布式云架构-集成项目简介
  7. 【转】使用python3的typing模块提高代码健壮性
  8. mXSS攻击的成因及常见种类
  9. FileReader类型之文字读取
  10. python matplotlib模块——绘制三维图形、三维数据散点图