老乡,内核 3.10 的机器可以跑 eBPF 了!
DeepFlow 的 eBPF 特性支持 RedHat/CentOS 的 3.10 内核了!
01
RedHat/CentOS 做了什么
日前,DeepFlow 一名潜在客户提到红帽在 3.10 内核中移植了一部分 eBPF 特性,让我司研发评估 DeepFlow 适配的可能性。在红帽的文章中提到:
eBPF in Red Hat Enterprise Linux 7.6 is enabled only for tracing purposes, which allows attaching eBPF programs to probes, tracepoints and perf events. Other use cases such as eBPF socket filters or eXpress DataPath (XDP) are not enabled at this stage.
好巧不巧,对于可观测性场景来讲恰好也够用了!这个评估工作早年我们实际上有过心动,但考虑到发行版的限制以及红帽的免责声明最终放弃了在 DeepFlow 中进行支持。此次由于得到了客户的鼓励,我们正式开启了严谨的评估、适配、测试的工作,并且于近日 DeepFlow 6.4 LTS 发布前顺利完成。
02
DeepFlow 做了什么
总结来讲,目前 DeepFlow 中的 eBPF 能力(AutoTracing、AutoProfiling)对内核版本的要求如下:
体系架构 | 发行版 | 内核版本 | kprobe [4] | Golang uprobe | OpenSSL uprobe | perf |
---|---|---|---|---|---|---|
X86 | CentOS 7.9 | 3.10.0 [1] | Y | Y [2] | Y [2] | Y |
RedHat 7.6 | 3.10.0 [1] | Y | Y [2] | Y [2] | Y | |
* | 4.9-4.13 | Y | ||||
* | 4.14 [3] | Y | Y [2] | Y | ||
* | 4.15 | Y | Y [2] | Y | ||
* | 4.16 | Y | Y | Y | ||
* | 4.17+ | Y | Y | Y | Y | |
ARM | CentOS 8 | 4.18 | Y | Y | Y | Y |
EulerOS | 5.10+ | Y | Y | Y | Y | |
麒麟 KylinOS V10 SP3+ | 4.19.90-52.25+ | Y | Y | Y | Y | |
其他发行版 | 5.8+ | Y | Y | Y | Y |
上表中对内核版本的额外说明:
- [1]: 在这两个发行版中,DeepFlow 支持版本号高于 3.10.0-940 的内核
- [2]: 目前尚不支持使用 uprobe hook 在容器内部运行的 Golang/OpenSSL 进程
- [3]: 在内核 4.14 版本中,一个 tracepoint 不能被多个 eBPF program attach(如:不能同时运行两个或多个 deepflow-agent),其他版本不存在此问题
- [4]: 包括 kprobe 和 tracepoint
03
注意事项
虽然红帽有下述免责声明,但目前我们已经测试了 3.10.0-940 之上的几个小版本内核,若对 DeepFlow 中零侵扰的分布式追踪能力有强烈需求,可以一试:
The eBPF in Red Hat Enterprise Linux 7.6 is provided as Tech Preview and thus doesn't come with full support and is not suitable for deployment in production. It is provided with the primary goal to gain wider exposure, and potentially move to full support in the future. eBPF in Red Hat Enterprise Linux 7.6 is enabled only for tracing purposes, which allows attaching eBPF programs to probes, tracepoints and perf events.
对于 Preview 类新特性,这时候 eBPF 的核心优势就能体现价值了:安全,不崩!
04
什么是 DeepFlow
DeepFlow 是云杉网络开发的一款可观测性产品,旨在为复杂的云基础设施及云原生应用提供深度可观测性。DeepFlow 基于 eBPF 实现了应用性能指标、分布式追踪、持续性能剖析等观测信号的零侵扰(Zero Code)采集,并结合智能标签(SmartEncoding)技术实现了所有观测信号的全栈(Full Stack)关联和高效存取。使用 DeepFlow,可以让云原生应用自动具有深度可观测性,从而消除开发者不断插桩的沉重负担,并为 DevOps/SRE 团队提供从代码到基础设施的监控及诊断能力。
GitHub 地址:https://github.com/deepflowio/deepflow
访问 DeepFlow Demo,体验零插桩、全覆盖、全关联的可观测性。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
开源 - 奋进者的盛宴 | Apache StreamPark in 2023
时间的指针已跨过 2023,对于 Apache StreamPark 社区而言,这是一个值得书写回顾的时刻。Apache StreamPark 从最初的个人项目到加入全球最大的开源软件基金会(Apache Software Foundation),一路走来我们始终相信坚持和协作的力量,相信社区的力量。开源,不是天才的甜点,而是奋进者的盛宴。此时此刻,让我们一起回顾 Apache StreamPark 社区过去一年的精彩时刻。 社区向好发展 在过去一年,Apache StreamPark 一直在积极地建设社区,大力地培养开发者,遵循 Apache 软件基金会的「Community over Code」原则来运营社区,以开放包容、自由平等的态度对待每位参与者,在 2023 年社区有许多值得被分享的事情: 全年发布了2.0.0 -2.1.2共**4**个 Apache 版本。 社区参加了 2023 年 8 月「Community over Code」ASIA 大会,带来**3**场 Apache StreamPark 相关的主题分享。 投票推选了2位PPMC Member和**5**位新晋 ...
- 下一篇
LoRA:语言模型微调的计算资源优化策略
编者按:随着数据量和计算能力的增加,大模型的参数量也在不断增加,同时进行大模型微调的成本也变得越来越高。全参数微调需要大量的计算资源和时间,且在进行切换下游任务时代价高昂。 本文作者介绍了一种新方法LoRA,可以在保持模型性能的同时大幅减少微调的参数量和所需资源。 LoRA通过引入两个低秩适配矩阵,用矩阵乘法的方法替换大部分参数。实验证明,LoRA在多项NLP任务上的表现与许多微调方法(如Adapter和PreLayer等)相当或更好。与全参数微调相比,LoRA降低了可训练参数数量10,000倍,GPU内存需求减少3倍,存储需求减少10,000倍,训练速度提高25%。 LoRA 为大语言模型的高效多任务微调提供了一种有效途径。作者认为LoRA可以推广到更多模型结构,有望加深我们对模型微调机制的理解。 作者 | ArxivDives 编译|岳扬 🚢🚢🚢欢迎小伙伴们加入AI技术软件及技术交流群,追踪前沿热点,共探技术难题~ 一、 背景知识 Paper:https://arxiv.org/abs/2106.09685 Published:October16th,2021,byMicro...
相关文章
文章评论
共有0条评论来说两句吧...