探秘云端监控新星:Kindling

探秘云端监控新星:Kindling

Kindling,一个基于eBPF(Extended Berkeley Packet Filter)的云原生监控工具,是理解应用程序从内核到代码栈行为的利器。它旨在帮助用户轻松洞察应用行为,并能在几秒钟内找到问题的根本原因。凭借其创新的跟踪剖析功能,Kindling将带你深入观察你的系统如何运行,捕捉那些难以捉摸的问题。

什么是Kindling?

Kindling不仅仅是一个网络监控器,它的目标是为用户提供一种全新的方式来了解应用在Kernel层面的活动。通过收集和关联OnCPU(CPU执行事件)与OffCPU(非CPU执行事件),如锁等待、数据库查询、远程过程调用等,它提供了全面的行为视图。Kindling还提供了一个类似Chrome浏览器中网络探索的界面,让你可以在生产环境中像查看网页资源一样分析单个RPC调用。

Kindling Screenshot

跟踪剖析

Kindling的跟踪剖析将线程级的火焰图与日志、时间序列数据相结合,使得可以回溯和重演整个跟踪过程。它明确标识出执行轨迹的线程,收集并关联每个线程的日志,同时显示CPU繁忙时的代码执行火焰图,以及网络、文件相关指标的时间序列。

架构设计

Kindling作为Kubernetes中的DaemonSet运行,捕获所有系统调用和其他关键点。它支持不同的数据出口方式,例如Prometheus用于存储和展示数据,而跟踪剖析则有一个独立的UI模块。这种设计确保了数据采集的灵活性和可扩展性。

Kindling Architecture

支持的Linux内核版本

Kindling的eBPF模块要求内核版本大于4.14,但为了实现跟踪剖析,需要内核版本大于4.17。对于旧内核的支持,Kindling采用了Sysdig开源项目提供的增强版内核模块,尽管有局限,但在测试中表现良好。

为什么选择Kindling?

在众多的观测性工具如Skywalking、ELK和Prometheus之外,Kindling带来了独特的价值。在Kubernetes环境中,它可以帮助快速识别服务间的网络流,初步定位产品问题的原因。通过观察网络层面,可以判断问题是出在基础设施配置、虚拟网络如Calico或Flannel,还是应用代码上。

eBPF的低开销数据捕获使得Kindling在性能上优于传统的libpcap方法,特别适合跟踪Linux内核处理应用程序请求的过程。

核心特性

  • 跟踪剖析:揭示复杂的操作行为,如Elasticsearch的bulk insert操作。
  • 依赖关系映射:清晰展现Kubernetes集群内的服务间依赖关系。
  • Prometheus集成:利用PromQL进行数据查询,易于适应和管理。

开始使用

要开始使用Kindling,请参照安装指南

文档和支持

详细文档可在Kindling官方网站查阅。如果你有任何问题或者建议,可以通过GitHub讨论区、Slack频道,甚至加入我们的微信交流群进行交流。

Kindling 微信二维码

许可证

Kindling项目遵循Apache 2.0许可证

准备好用Kindling提升你的监控体验了吗?现在就开始,探索云原生环境的无限可能!

  • 5
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

芮奕滢Kirby

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值