首页 电脑教程 电脑知识 龙蜥系统运维联盟:Kindling-OriginX 如何集成 DeepFlow 的数据增强网络故障的解释力

龙蜥系统运维联盟:Kindling-OriginX 如何集成 DeepFlow 的数据增强网络故障的解释力

Feb 22, 2024 pm 02:16 PM
网络 网络问题 deepflow 云微

龙蜥系统运维联盟:Kindling-OriginX 如何集成 DeepFlow 的数据增强网络故障的解释力

编者按:2023年,龙蜥社区正式成立系统运维联盟,该联盟由信通院、阿里云、中兴通讯、复旦大学、清华大学、浙江大学、云观秋毫、乘云数字、云杉网络、浪潮信息、统信软件及联通软件院等 12 家单位共同发起。本文转自云观秋毫,介绍系统运维联盟成员 Kindling-OriginX 通过结合 DeepFlow 完备的网络数据能力,自动化生成可解释的故障根因报告。

DeepFlow是一个开源项目,利用eBPF技术为复杂的云基础设施和云原生应用提供高度可观测性。通过eBPF技术,DeepFlow收集精细的链路追踪数据、网络和应用性能指标,具有全链路覆盖和丰富的TCP性能指标。这些功能为专业用户和网络专家提供了强大的故障诊断和问题定位支持。

Kindling-OriginX 是一款故障根因推导产品,目标是提供给用户一个可解释的故障根因报告,让用户能够直接了解故障根因,并附有根因的推理过程以便验证根因的准确性。网络故障是故障当中比较难以简单解释的,仅仅告知用户哪段网络有问题是不够的,用户需要更多指标以及图解,才能帮助用户更好的理解网络到底发生了什么故障,以及发生在哪个环节。

本文介绍 Kindling-OriginX 通过结合 DeepFlow 完备的网络数据能力,自动化生成可解释的故障根因报告。

soma-chaos 模拟网络故障

  • 针对 seat-service 注入 200ms 延时的网络模拟故障。

  • 接下来我们先使用 DeepFlow 来识别 200ms 的网络故障,并做出相应的 action。

人工最简化排障过程

步骤一:利用 Trace 系统缩小范围

在微服务环境中,当某个接口出现性能问题时,首要步骤是利用追踪系统检查哪个环节导致了慢速度,并了解具体的表现情况。

使用Tracing系统,用户可以准确定位到具体的Trace。经过分析Trace后,发现seat-service的执行时间较长,同时出现了一次长时长的config-service调用。在此情况下,联动网络指标将有助于精确定位网络问题的根源。

步骤二:利用 DeepFlow 火焰图确定故障发生在哪段网络

将故障代表 traceid 的输入 DeepFlow 在火焰图中,找到 Trace 在网络层面上的表现,然后深入分析这个火焰图,如果对火焰图比较了解,同时有具备网络知识的专家经验,是能够根据火焰图人为分析出:这个故障应该是发生在调用者也就是 seat-service 上,而且问题是发生了 syscall 到网卡的时间段,也就是容器网络时段出了问题(和故障注入是吻合的)。

(图/DeepFlow网络火焰图)

步骤三:确定容器网络到底什么网络指标异常

根据故障排查经验,用户需要查看 seat-service 与 config-service 的 pod 的网络指标。这个时候用户需要跳转至 DeepFlow 的 Pod 级别的网络指标页面。通过该页面,用户能够查看出建连有 200ms 的延时突变以及 RTT 指标有突变。

(图/DeepFlow-pod级别监控指标)

(图/DeepFlow-pod级别监控指标)

步骤四:排除可能的干扰因素

根据经验,宿主机的 CPU 被打满和带宽被占满之时,虚拟网络也会出现丢包和时延,所以要排查当时 seat-service 与 config-service 所在 node 的 CPU 以及 node 级别的带宽,确保 Node 级别资源没有饱和。

通过 k8s 命令确认了两个 pod 所在的 node 节点,然后去 DeepFlow 的 node 指标监控页面查看相应指标,发现 node 的 bps、pps 等指标均在合理范围内。

(图/通过k8s命令查找pod所在的节点)

(图/DeepFlow-node级别监控指标(client))

(图/DeepFlow-node级别监控指标(server))

由于node级别的网络指标没有出现明显异常,最终确定是seat-service的pod级别rtt指标异常。

人工排障总结

经过一系列的排查过程,最终用户是能够排查出故障的,但是对用户有以下要求:

  • 网络知识非常丰富

  • 深入理解网络火焰图

  • 熟练使用相关工具

Kindling-OriginX 如何结合 DeepFlow 指标,生产可解释的故障报告

Kindling-OriginX 针对不同的用户需求和使用场景,Kindling-OriginX 对 DeepFlow 的数据进行了加工呈现。

类比人工最简化排障过程,利用 Kindling-OriginX 的排障过程如下:

自动化分析每一条Trace

针对此时的故障,自动化分析每条 Trace,并按照故障节点对所列的 Trace 进行归集。Travel-service 是由于级联故障导致的,本文不重点论述级联故障,如果有兴趣可以参考微服务级联故障该如何处理。

Review 故障节点为 seat-service 的故障根报告

故障根因结论:

对于子请求10.244.1.254:50332->10.244.5.79:15679 rtt 指标出现 200ms 左右的延时。

故障的推理验证

由于 Kindling-OriginX 已经识别出是 seat-service 调用 config-service 的网络有问题,所以不用完全把 DeepFlow 的火焰图所有数据呈现给用户,只需要与 DeepFlow 对接,仅仅拿到 seat-service 调用 config-service 那段网络调用的相关数据即可。

利用 DeepFlow 的seat-service 调用 config-service 数据自动分析出了客户端 pod 的容器网络出现了 201ms 的延时。

Kindling-OriginX 会模拟专家分析经验,进一步关联 DeepFlow 的重传指标与RTT指标,从而确定到底是什么原因导致了 seat-service 调用 config-service 出现了延时的现象。

Kindling-OriginX 还会集成node的CPU利用率以及带宽指标,排除干扰因素。

Kindling-OriginX 将整个故障推理都在一页报告中完成,并且每个数据来源都是可信可查的。

总结

Kindling-OriginX 与 DeepFlow 都使用了 eBPF 技术,立求在不同的场景中为不同需求的用户提供灵活高效解决方案,也期待未来能看到国内有更多能力互补产品的出现。

DeepFlow 能提供非常完备的全链路网络基础数据,能够让云原生应用具有深度可观测性,对于排查网络问题非常有用。

Kindling-OriginX 是利用 eBPF 采集排障北极星指标、AI 算法和专家经验构建故障推理引擎,给用户提供可解释的根因报告。

—— 完 ——

以上是龙蜥系统运维联盟:Kindling-OriginX 如何集成 DeepFlow 的数据增强网络故障的解释力的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.聊天命令以及如何使用它们
4 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

Bitget Wallet交易所怎么注册不了是什么原因 Bitget Wallet交易所怎么注册不了是什么原因 Sep 06, 2024 pm 03:34 PM

无法注册BitgetWallet交易所的原因有多种,包括账户限制、不支持的地区、网络问题、系统维护和技术故障。要注册BitgetWallet交易所,请访问官网、填写信息、同意条款、完成注册并验证身份。

欧易交易所网络出错怎么办 欧易交易所网络出错怎么办 Jul 17, 2024 pm 04:25 PM

遇到欧易交易所网络出错时,可采取以下步骤解决:检查互联网连接。清除浏览器缓存。尝试其他浏览器。禁用浏览器插件。联系欧易客服。

MEXC(抹茶)官方网站怎么登陆不上去? MEXC(抹茶)官方网站怎么登陆不上去? Dec 07, 2024 am 10:50 AM

无法登录MEXC(抹茶)网站的原因可能是网络问题、网站维护、浏览器问题、帐户问题或其他原因。解决步骤包括:检查网络连接、查看网站公告、更新浏览器、检查登录凭据以及联系客服团队。

okx登录收不到验证码 okx登录收不到验证码 Jul 23, 2024 pm 10:43 PM

登录OKX无法收到验证码的原因包括:网络问题、手机设置问题、短信服务中断、服务器繁忙和验证码请求限制。解决方案依次为:等待重试、切换网络、联系客服。

欧易okex登录收不到验证码 欧易okex登录收不到验证码 Jul 25, 2024 pm 02:43 PM

无法收到欧易OKEx登录验证码的原因和解决方法:1.网络问题:检查网络连接或切换网络;2.手机设置:开启短信接收或将欧易OKEx列入白名单;3.验证码发送限制:稍后再试或联系客服;4.服务器拥堵:高峰期稍后再试或使用其他登录方式;5.账户冻结:联系客服解决。其他方法:1.语音验证码;2.第三方验证码平台;3.联系客服。

gate.io芝麻开门易所官方网站怎么登陆不上去? gate.io芝麻开门易所官方网站怎么登陆不上去? Aug 19, 2024 pm 04:58 PM

Gate.io芝麻开门易所官方网站无法登录的原因包括:网络问题、网站维护、浏览器问题、安全设置等。解决方案依次为:检查网络连接、等待维护结束、清除浏览器缓存、禁用插件、检查安全设置、联系客服。

火币(Huobi)官方网站怎么登陆不上去? 火币(Huobi)官方网站怎么登陆不上去? Aug 12, 2024 pm 04:09 PM

无法登录火币官方网站的原因包括:检查网络连接和清除浏览器缓存。网站可能正在维护或更新。由于安全问题(例如IP地址被封锁或账户被冻结)。输入的网站地址错误。所在地区可能受限制。其他技术问题。

在使用PHP调用支付宝EasySDK时,如何解决'Undefined array key 'sign'”报错问题? 在使用PHP调用支付宝EasySDK时,如何解决'Undefined array key 'sign'”报错问题? Mar 31, 2025 pm 11:51 PM

问题介绍在使用PHP调用支付宝EasySDK时,按照官方提供的代码填入参数后,运行过程中遇到报错信息“Undefined...

See all articles