¥40.00
作品简介
本书是一本面向系统工程师的实践指南,皆在帮助他们获得Linux内核中BPF虚拟机的专业知识。通过本书,你不仅可以深入了解BPF程序的生命周期,熟悉日常工作所需的基本概念,增强有关性能优化、网络和安全方面的知识。还可以学习如何编写观测和修改内核行为的应用程序,以及通过代码注入的方式对内核事件进行监控、跟踪和安全观测等内容。同时,本书展示了相关的C、Go和Python代码示例。每次学习BPF技术时,我们都需要翻阅许多博客文章、手册以及Internet上的各种资料。本书的目的就是将分散在各处的知识汇总在一起,以方便后续BPF爱好者能更好地学习这一技术。
[美]大卫·卡拉维拉(David Calavera)[意]洛伦佐·丰塔纳(Lorenzo Fontana)著:大卫·卡拉维拉(David Calavera)是Netlify的CTO,曾是Docker的维护者以及Runc、Go和BCC工具及其他开源项目的贡献者。他构建和促进了Docker插件生态系统,因Docker项目的工作而闻名。David非常喜欢使用火焰图和进行性能优化。
洛伦佐·丰塔纳(Lorenzo Fontana)是Sysdig开源团队的成员,主要负责CNCF(云本地计算基础)的Falco项目,该项目通过内核模块和eBPF实现了容器运行时安全和异常检测功能。他对分布式系统、软件定义网络、Linux内核和性能分析充满热情。
作品目录
O’Reilly Media,Inc.介绍
推荐序
译者序 学习的心与勇气的赞歌
序言
前言
第1章 引言
1.1 BPF的历史
1.2 架构
1.3 小结
第2章 运行第一个BPF程序
2.1 编写BPF程序
2.2 BPF程序类型
2.3 BPF验证器
2.4 BPF类型格式
2.5 BPF尾部调用
2.6 小结
第3章 BPF映射
3.1 创建BPF映射
3.2 使用BPF映射
3.3 BPF映射类型
3.4 BPF虚拟文件系统
3.5 小结
第4章 BPF跟踪
4.1 探针
4.2 跟踪数据可视化
4.3 小结
第5章 BPF工具
5.1 BPFTool
5.2 BPFTrace
5.3 kubectl-trace
5.4 eBPF Exporter
5.5 小结
第6章 Linux网络和BPF
6.1 BPF和数据包过滤
6.2 基于BPF的流量控制分类器
6.3 小结
第7章 XDP
7.1 XDP程序概述
7.2 XDP和BCC
7.3 测试XDP程序
7.4 XDP用户案例
7.5 小结
第8章 Linux内核安全、能力和Seccomp
8.1 能力
8.2 Seccomp
8.3 BPF的LSM钩子
8.4 小结
第9章 真实的用户案例
9.1 Sysdig eBPF上帝视角
9.2 Flowmill
载入中