**eBPF:洞悉系统底层黑盒的“透视眼”**

在云原生与大数据时代,容器化部署已成为常态。然而,当应用性能瓶颈出现、网络包丢失或系统调用异常时,传统的监控手段往往捉襟见肘——它们只能告诉你“出事了”,却无法揭示“为什么出事”。这时候,eBPF(Extended Berkeley Packet Filter)便成为运维工程师和开发者手中最锋利的解剖刀。本课程《eBPF核心技术与实战》旨在带你彻底打开系统底层的黑盒,从原理到代码,构建一套完整的可观测性技术体系。

**为何学习 eBPF?**
eBPF 允许用户在无需修改内核源码、无需重启系统的情况下,安全地在内核空间中运行沙箱程序。它既可用于网络数据包的过滤与转发,也能用于性能剖析、安全审计及运行时诊断。正如课程开篇词所言,想要真正掌控基础设施,必须跨越用户态与内核态的鸿沟,而 eBPF 正是连接这两者的桥梁。

**课程内容全景解析**

课程分为四大模块,循序渐进地引领你入门并进阶:

1. **开篇与大咖视角**:由行业专家李程远分享 eBPF 在云原生领域的纵横之道,并通过真实用户故事打破“从入门到放弃”的刻板印象,帮助学习者建立正确的学习路径与心态。
2. **基础入门篇**:这是构建认知的基石。你将首先了解 eBPF 的发展历程及工作原理,掌握高效的学习工具与环境配置。随后,通过编写并运行第一个 eBPF 程序,直观感受其威力。课程深入探讨了 eBPF 虚拟机机制、编程接口以及内核交互方式,并详细解析了各类触发机制(如 Kprobe, Tracepoint, Uprobe 等)及其典型应用场景。
3. **实战进阶篇**:理论需落地。本部分聚焦于具体的跟踪技术。你将学习如何查询和利用内核跟踪点,掌握内核跟踪程序的进阶开发技巧;同时,课程还涵盖了用户态跟踪,教你如何定位应用程序的性能陷阱。这些技能对于排查生产环境中的复杂故障至关重要。
4. **核心原理深化**:虽然摘要未完全展开,但结合目录逻辑,后续内容预计将深入探讨 eBPF 程序的生命周期管理、BPF map 的数据结构优化以及基于 eBPF 的网络安全与可观测性平台建设。

**适合谁学?**
本课程适合系统工程师、SRE、后端开发以及任何对操作系统底层机制感兴趣的技术人员。无论你是希望提升问题排查效率,还是打算构建自定义的可观测性平台,eBPF 都是不可或缺的核心技能。

掌握 eBPF,不仅是掌握一项技术,更是获得了一种深度理解系统行为的能力。让我们从第一个 eBPF 程序开始,揭开内核运行的秘密。

课程目录

开篇词 (1讲)

  1. 开篇词 _ 想要洞悉系统底层的黑盒?先掌握eBPF

加餐篇 (2讲)

  1. 大咖助场|李程远:谈谈eBPF在云原生中的纵与横
  2. 用户故事|eBPF从入门到放弃?在实践中找到突破口

学习准备篇 (2讲)

  1. 01|技术概览:eBPF的发展历程及工作原理
  2. 02 _ 先利其器:如何高效学习eBPF?

基础入门篇 (4讲)

  1. 03 _ 初窥门径:开发并运行你的第一个eBPF程序
  2. 04 _ 运行原理:eBPF是一个新的虚拟机吗?
  3. 05 _ 编程接口:eBPF程序是怎么跟内核进行交互的?
  4. 06 _ 事件触发:各类eBPF程序的触发机制及其应用场景

实战进阶篇 (7讲)

  1. 07 _ 内核跟踪(上):如何查询内核中的跟踪点?
  2. 08|内核跟踪(下):开发内核跟踪程序的进阶方法
  3. 09 _ 用户态跟踪:如何使用eBPF排查应用程序?
  4. 10 _ 网络跟踪:如何使用eBPF排查网络问题?
  5. 11 _ 容器安全:如何使用eBPF增强容器安全?
  6. 12|高性能网络实战(上):如何开发一个负载均衡器?
  7. 13|高性能网络实战(下):如何完善负载均衡器?

阶段总结 (2讲)

  1. 14|阶段总结:实用eBPF工具及最新开源项目总结
  2. 15|未来可期:邀你与eBPF共赴一场技术革新之约

技术雷达篇 (18讲)

  1. 16|难点解析:eBPF开发环境搭建及内核编译详解
  2. 17|难点解析:eBPF多内核版本兼容详解
  3. 18|年度总结:eBPF的2022之旅
  4. 19|案例解析:云原生网络Cilium详解
  5. 20|学习路径:借助ChatGPT学习和实践eBPF
  6. 21|平台移植:Windows平台上的eBPF实现
  7. 22|技术解析:如何使用Go开发eBPF程序?
  8. 23|年度总结:eBPF的2023之旅
  9. 24|技术解析:HTTPS跟踪详解(上)
  10. 25|技术解析:HTTPS跟踪详解(下)
  11. 26|技术解析:eBPF程序参数原理详解
  12. 27 _ 难点解析:如何调试eBPF程序
  13. 28 _ 年度总结:eBPF的2024之旅
  14. 29 _ 技术解析:如何使用Rust开发eBPF程序?
  15. 30|难点答疑:eBPF 应用实践中的那些问题
  16. 31|案例解析:eBPF 揭秘 GPU,大模型训练与推理的性能诊断
  17. 32|技术解析:用户态 eBPF 与 bpftime 详解
  18. 33|年度总结:eBPF的2025之旅

结束语 (1讲)

  1. 结束语|与eBPF共赴技术革新之约