作者:江苏银行信息科技部 张为民 王钢 王云峰
本文主要从数据获取、突变感知、场景输出等几方面介绍了江苏银行的网络运维转型实践经验。
当前的网络运维模式很难适应上述工作要求的变化:人工操作效率严重滞后,本质上也不适合处理海量数据;支撑运维的数据不完整而碎片化,决策主要基于人工经验。因此,网络运维转型势在必行。
数据获取
因此,有必要建立全新的运行数据采集机制,并实现多样化的数据来源。至少应满足以下要求:能够模拟网络工程师的人工检查操作;无论网络设备是否具备可编程接口,均能支持;至少能实现1分钟级别的取数频度;部分关键对象,粒度应能进一步缩小;实现对数据中心所有节点、链路的全覆盖。
基于当前的实践,在江苏银行数据中心一个中等规模网络功能区,24小时内采集的运行数据,可以达到约1000万条的规模,涉及交换机接口流量、丢包数增长、校验错误增长、时延、ARP表项,防火墙会话数,以及F5中各资源池吞吐量、连接数、CPU占用率等指标。后续版本中,我们将持续拓展取数渠道,包括F5的HSL高速日志协议吐数,以及华为CE系列交换机的TELEMETRY主动推数机制,运行数据样本集的质量将可以得到进一步提升。
突变感知
诸如此类事件,从突变产生,到损害爆发,常常留有足够长的时间可供实施预防性处置,关键是能否及时识别出突变。
尝试获得预测性维护能力时,往往会面临缺乏故障样本的麻烦:一年内数据中心网络可供评估的真实故障数量通常是个位数,而网络中可能会发生的故障场景却又难以穷举,很难让系统藉此建立起自动预测故障的能力。所幸我们至少可以积累海量的健康样本数据,一旦某些指标发生明显偏离,一定是哪里出现了问题。
很多运行指标突变,数值未必很高,既不是当日峰值,也未触发静态阈值告警,往往不易察觉。解决这个问题,需要引入新的机制替代僵硬的静态阈值:基于历史数据生成动态基线,用于实时数据同比突变识别;当前采集的实时数据,与上一轮数据,进行环比突变识别。
在目前已投产的版本中,我们提供了工作日与非工作日两组基线数据集,以更好地契合银行业的典型通信场景。而环比识别则有助于感知网络短促抖动。对于新应用上线带来的某类指标的持续突变,也能很好地予以识别。
场景输出
日常巡检用到的很多数据并不需要登录设备进行采集,在网管平台中采集相关峰值数据即可用于评估。也就是说,网管平台产生了数据,但不负责给结论。而网管平台的告警都是针对孤立的事件与故障,信息零散,缺乏基于网络整体视角的评估。
前面的内容也谈过,网管平台采集数据高度依赖网络设备的MIB库和SYSLOG,局限性很大,覆盖面上也存在缺陷,导致人工登录网络设备采集实时数据的操作不能完全避免。
但是,耗时耗力的人工巡检并不能解决所有问题。自动化巡检则可以帮助我们实现以下目标:相对于概略式的人工巡检,自动化巡检基于自动采集的海量数据,对整张网络进行更为完整的评估,依据突变级别与数量,自动生成24小时网络运行健康度报告;对于所检测到的突变,自动判断是否存在相关资源消耗的危险增长趋势,供网络团队判断是否需要提前采取预防性措施。
2.故障定位辅助。网络工程师不希望看到的场景之一:数据中心重要区域涌现来历不明的异常流量。此时,工程师可以做的事情通常有:使用NPM类工具对镜像报文进行分析溯源。这是一种比较有效的方法,但成本高昂,不易覆盖全网,如果流量没有波及被镜像接口,则无能为力;登录网络交换机,排查异常流量来源。这种方式依赖工程师的经验与心理素质,并且需要人工拼接获取到的各类零散的信息,网络路径复杂时,效率很低。
如果自动化运维体系已经拥有了丰富的运行样本数据和有效的突变检测手段,那么我们可以获得另一种低成本解决方案:基于全网视角获取高吞吐量链路清单,结合突变数据进行甄别,获取可疑接口相关联的MAC/ARP/IP/APP信息,提供自动化的快速定位辅助。
另一类故障场景:两个主机之间通信质量下降,其间可能有10跳路径或者更多。同样可以在自动化系统中模拟人工操作获取通信路径,标记其中发生了突变的环节,实现快速定位。
再比如,F5LTM的Self IP被非法占用。这类故障症状具备迷惑性,情急之下工程师会立即采取HA切换、重启等常规应急操作但无济于事。不过我们现在可以识别到关键ARP缓存的突变,只需要检索受影响区域内的突变记录,便足以提醒我们可能发生了什么事情,甚至可以通过自动化的MAC来源定位实施快速干预。
因此,从人工巡检等劳动密集型工作中得以解放的网络工程师,可以投入更多的精力去研发场景,这才是更有意义的事情。
3.回溯与预测。网络工程师经常会接到应用团队的求助:“帮我们看看10分钟前网络有没有抖动过?”很遗憾,如果没有被NPM覆盖,我们可能提供不了多少有价值的线索,以证实是否发生过通信质量问题。
但现在数据都是现成的。相对于回溯,预测可能更为重要,也更具难度。
其中,预测资源瓶颈具备重大意义,因而我们也将其纳入自动化巡检,成为其中的一个子场景。人工运维模式下的工程师,不可能在成千上万的性能曲线中注意某个并未成为峰值的指标突变,并结合同比数据,预测其增长到危险临界点的剩余时间。但是自动化系统天然地适合处理这样的任务,从而为带宽提速、设备更新争取到足够的处置时间。这也是我们“将工作提前做”的核心诉求之一。
而预测故障更具挑战性。前文提到过,由于缺乏足够多的真实网络故障样本,很难简单地让系统将某类运行指标的突变,直接与某种故障进行关联,需要模拟工程师的判断逻辑进行自动化评估。这方面还有许多工作需要开展。
江苏银行正在推进的网络运维转型,让工程师们获得全新的技术手段以改进运维质量。更重要的意义在于,今后可以围绕运维中不断涌现的挑战与收获,持续扩展运维体系的自动化与智能化特性,实现数据驱动的精细化运维新模式。
版权声明及安全提醒:本文转自网络平台金融电子化,文章仅代表作者观点,不代表「金融文库」立场。相关版权归原作者所有,「金融文库」仅提供免费交流与学习,相关内容与材料请勿用于商业。我们感谢每一位原创作者的辛苦付出与创作,如本转载内容涉及版权及侵权问题,请及时联系我们客服处理(微信号:JRwenku8),谢谢!