因为疫情管控的问题,从去年下半年开始和客户的面对面交流就少了很多,做产品软件的,如果脱离了客户,那是要走弯路的。我们也是如此,原本D-SMART的产品定位是知识自动化,最初的设想是通过专家经验的梳理和数字化,变成可自动执行的工具,不过随着这些年AIOPS概念的兴起,好像不沾点AIOPS的边就不够高大上似的。
在我们的产品设计中,利用专家经验来解决80%甚至90%运维人员日常遇到的问题,如果发现新的未覆盖的知识,通过快速梳理,更新知识库,随着用户群体的扩大与用户使用的日益广泛,这个比例可以逐步提高。最近这几年里,知识库中已经积累了2000多个知识点和几百个故障模型,在目前的客户使用中,几乎覆盖了他们日常运维故障与诊断分析的所有场景。当然对于一个新用户覆盖率不可能那么高,有几次用户出现了专家未曾梳理到的问题的时候,智能诊断发挥了较好的作用,通过智能诊断很快确定了诊断方向,结合专家的经验,我们很快就帮助用户定位了问题。
有了几次成功的应用,我迷恋上了这些智能化诊断工具,也不断的在通过优化运维知识图谱来获得更为准确的诊断结果。甚至有一段时间我们甚至觉得以后不再需要花大力气去编制专家知识点工具了,只需要不断优化运维知识图谱,利用低代码的泛路由知识点就可以不断优化诊断工具。
最近的几次和高水平最终用户的交流一巴掌把我打醒了。前几天和一个客户交流D-SMART产品的时候,我演示了某一个系统告警通过智能诊断工具和专家诊断工具的诊断效果。
针对这个系统隐患的告警,有三个工具可用,一个是通用的数据库状态巡检工具“问题分析”,一个是智能化诊断工具“智能指标分析”,一个是专家知识点工具。我们先来看看智能指标分析工具的诊断结果:
智能指标分析发现系统存在的最主要的问题是高并发、应用存在TOP SQL、IO性能问题以及REDO/DB CACHE等的配置存在一些问题。大体的方向是准确的,不过还是有些笼统。对于我来说,这个分析结论十分有帮助,我可以根据这个去做下一步的判断了。
智能诊断工具推荐的下钻工具中,也有专家诊断路径提供的那个知识点工具。如果我们不使用智能诊断工具,直接使用专家知识点工具会怎么样呢?
专家知识点工具是由运维专家编制的,根据专家经验对数据进行分析得到的分析结论。在这个分析中,给出了远比智能分析工具更为明确的分析数据与诊断分析结论。提交过于频繁,REDO量过大,LOG BUFFER配置不合理等问题都被直接的指出了。同时在分析中还发现数据库IO存在性能问题,因此在最后给出了一个下钻诊断的工具链接,点击这个链接可以进行下钻分析。
数据库IO分析工具确认了IO存在问题的具体方面,同时给出了一个服务器IO分析的下钻建议。
OS IO诊断工具确定了后端存储的IO性能不足是引发数据库IO问题的主因。至此这个诊断分析工作完成,基本上发现了引发该问题的主要因素。智能诊断工具发现的问题更为全面,基本方向也基本准确。而专家工具发现问题更为精准,也更为直接,可以直接用于运维人员进行系统优化。客户最后告诉我,他们最需要的就是专家诊断工具给出的诊断结论。这些宝贵的专家经验可以直接帮助他们解决一线生产中的问题。
第二天我和另外一个客户交流,也演示了这个工具。那个客户的数学功底很深,因此对智能诊断很感兴趣,我们聊的也很不错。只不过最后我问他专家工具和智能工具哪个对他们更有用时,他说专家工具是他们所需要的。因为虽然智能工具能够给出很好的方向,但是他们的现场运维人员可能根本看不懂这些内容。虽然后面提供了那么多下钻分析工具,总不如专家工具那么直接有效。
回来以后我思考了很长时间,也发现了最近这半年多时间里我的思维误区。智能诊断工具对我来说是十分有效的,并不说明能够对一线运维有很大的帮助,因为大多数一线运维人员的能力无法很好的理解诊断结论。目前绝大多数的AIOPS也都是如此,大致定位可能很准确,可以比较准确的发现问题出现在哪一方面,但是无法十分精准的描述问题和根因溯源。
这就是AIOPS的最后一公里问题。前几天和客户交流运维工具的时候,有个上过AIOPS系统的用户说过一句话:“智能运维工具的结论是给专家看的,不是给一般运维人员看的“,当时我还没有把这句话太当一回事。这些天又想起这句话,觉得十分有道理。
AIOPS的最后一公里是专家工具,这是我这些天思考后得到的一个结论。光有AIOPS的分析结论,对于一线运维来说还是不够的,必须在AIOPS最终的分析中引入准确的专家知识点下钻或者确认的能力,才能比较准确的定位问题,为一线运维提供帮助。
而智能诊断工具可以在专家分析问题的时候让专家更专注于问题发现与总结分析,把大量的数据处理与计算的工作自动化了。
因此在知识发现与知识梳理上能发挥巨大的作用,作为一线运维工具来说,效果就不一定很好了。这也是很多用户在使用了AIOPS工具后的普遍感受。坚持知识自动化的方向应该是为一线运维提供有力武器的正确方向,用专家知识解决80%的问题,用智能化工具为剩下的20%问题指明方向,这种组合可能是未来一段时间D-SMART发展的重要思路。2000多个知识点还是不够的,我们需要更多更快的积累知识点工具,利用生态协作是个不错的方法。随着下个月社区版的发布,我们也会发布一个这方面的生态计划。