Skip to content

Commit

Permalink
update ebpf fentry/fexit docs
Browse files Browse the repository at this point in the history
  • Loading branch information
sharang committed Sep 16, 2024
1 parent 319facf commit acefe30
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 16 deletions.
21 changes: 11 additions & 10 deletions docs/zh/02-ce-install/01-overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,13 +28,13 @@ permalink: /ce-install/overview
# 运行权限及内核要求

DeepFlow 中的 eBPF 能力(AutoTracing、AutoProfiling)对内核版本的要求如下:
| 体系架构 | 发行版 | 内核版本 | kprobe | 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 |
| 体系架构 | 发行版 | 内核版本 | kprobe [1] | Golang uprobe | OpenSSL uprobe | perf |
| -------- | ------ | ------- | ---------- | ------------- | -------------- | ---- |
| X86 | CentOS 7.9 | 3.10.0 **[2]** | Y | Y **[3]** | Y **[3]** | Y |
| | RedHat 7.6 | 3.10.0 **[2]** | Y | Y **[3]** | Y **[3]** | Y |
| | \* | 4.9-4.13 | | | | Y |
| | \* | 4.14 **[3]** | Y | Y **[2]** | | Y |
| | \* | 4.15 | Y | Y **[2]** | | Y |
| | \* | 4.14 **[4]** | Y | Y **[3]** | | Y |
| | \* | 4.15 | Y | Y **[3]** | | Y |
| | \* | 4.16 | Y | Y | | Y |
| | \* | 4.17+ | Y | Y | Y | Y |
| ARM | CentOS 8 | 4.18 | Y | Y | Y | Y |
Expand All @@ -44,16 +44,17 @@ DeepFlow 中的 eBPF 能力(AutoTracing、AutoProfiling)对内核版本的

对内核版本的额外说明:

- [1]: CentOS 7.9、RedHat 7.6 向 3.10 内核中[移植了一部分 eBPF 能力](https://www.redhat.com/en/blog/introduction-ebpf-red-hat-enterprise-linux-7)
- [1]: 当 X86 架构下内核大于等于 [5.5](https://github.com/torvalds/linux/commit/f1b9509c2fb0ef4db8d22dac9aef8e856a5d81f6)、ARM 架构下内核大于等于 [6.0](https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.0.y&id=efc9909fdce00a827a37609628223cd45bf95d0b) 时,agent 将会自动使用 fentry/fexit 替代 kprobe/kretprobe,此时可获得约 15% 的性能提升
- [2]: CentOS 7.9、RedHat 7.6 向 3.10 内核中[移植了一部分 eBPF 能力](https://www.redhat.com/en/blog/introduction-ebpf-red-hat-enterprise-linux-7)
- 在这两个发行版中,DeepFlow 支持的详细内核版本如下([依赖的 Hook 点](https://github.com/deepflowio/deepflow/blob/main/agent/src/ebpf/docs/probes-and-maps.md)):
- 3.10.0-957.el7.x86_64
- 3.10.0-1062.el7.x86_64
- 3.10.0-1127.el7.x86_64
- 3.10.0-1160.el7.x86_64
- 注意 RedHat 的申明
- 注意 RedHat 的声明
> 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.
- [2]: 容器内部的 Golang/OpenSSL 进程不支持
- [3]: 在内核 4.14 版本中,一个 `tracepoint` 不能被多个 eBPF program attach(如:不能同时运行两个或多个 deepflow-agent),其他版本不存在此问题
- [3]: 容器内部的 Golang/OpenSSL 进程不支持
- [4]: 在内核 4.14 版本中,一个 `tracepoint` 不能被多个 eBPF program attach(如:不能同时运行两个或多个 deepflow-agent),其他版本不存在此问题

deepflow-agent 运行权限的要求:

Expand Down
12 changes: 6 additions & 6 deletions docs/zh/09-release-notes/02-release-timeline.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,12 @@ permalink: /release-notes/release-timeline

| Branch | Tag | LTS | Release | End Of Life |
| ------ | ------- | ----- | -------------- | ------------------ |
| main | 6.6.9 | | 2024-10-17 (E) | |
| | 6.6.8 | | 2024-10-11 (E) | |
| | 6.6.7 | | 2024-09-29 (E) | |
| | 6.6.6 | | 2024-09-23 (E) | |
| | 6.6.5 | | 2024-09-13 (E) | |
| | 6.6.4 | | 2024-08-29 (E) | |
| main | 6.6.9 | Y | 2024-10-24 (E) | |
| | 6.6.8 | | 2024-10-17 (E) | |
| | 6.6.7 | | 2024-10-11 (E) | |
| | 6.6.6 | | 2024-09-29 (E) | |
| | 6.6.5 | | 2024-09-23 (E) | |
| | 6.6.4 | | 2024-08-29 | |
| | 6.6.3 | | 2024-08-15 | |
| | 6.6.2 | | 2024-08-01 | |
| | 6.6.1 | | 2024-07-18 | |
Expand Down

0 comments on commit acefe30

Please sign in to comment.