diff --git a/SUMMARY.md b/SUMMARY.md index a2ab2b64b6b98c34570bf6e91d7f69309cc57b23..3820fa9d5a8b7f759bcce519d21757498e20ed1e 100644 --- a/SUMMARY.md +++ b/SUMMARY.md @@ -15,6 +15,7 @@ * [AMD安全虚拟化的增强](./multi_arch/amd_support.md) * [运维与性能](./devops_perf/README.md) * [利用io_uring提升数据库系统性能](./devops_perf/io_uring_igraph.md) + * [Coolbpf:一站式eBPF开发编译平台](./devops_perf/coolbpf.md) * [软硬件协同](./sw_hw_codesign/README.md) * [面向芯片研发和验证的操作系统 SiliconFastOS](./sw_hw_codesign/siliconfastos.md) * [安全可信](./security_trust/README.md) diff --git a/devops_perf/coolbpf.md b/devops_perf/coolbpf.md new file mode 100644 index 0000000000000000000000000000000000000000..21664e1dce407e8c80a2e474db1cc607163241b1 --- /dev/null +++ b/devops_perf/coolbpf.md @@ -0,0 +1,30 @@ +# Coolbpf:一站式eBPF开发编译平台 +tags: 运维与性能,Anolis8,Anolis23 + +## 概述 +eBPF是一项新的动态跟踪技术。基于eBPF技术,衍生出的BCC、bpftrace等开源工具,极大降低了eBPF的应用代码开发的门槛, +成为当前eBPF各类应用开发的主要方式,但此类工具存在如下缺点: + +- 生产环境需要部署依赖库较多,如Clang/LLVM等库,部署不便; +- 每次运行都要执行Clang/LLVM编译,严重消耗CPU、内存等资源; +- 这里是列表文本需要安装对应内核的头文件; +- 不支持3.10等低内核版本 + +Coolbpf是一个便捷高效的一站式eBPF开发编译平台,创新的提出远程编译(云编译)思想,以CO-RE(Compile Once-Run Everywhere) +为基础实现,保留了资源占用低、可移植性强等优点,适合在生产环境批量部署所开发的应用,加上新实现的带 +eBPF verifier的内核模块,使得同一个eBPF应用无需修改就能在 3.x/4.x/5.x内核版本安全运行。基于Coolbpf的用户只需专注自己 +的功能开发,不用关心底层库安装和环境搭建,给广大eBPF爱好者提供了一种新的探索和实践。 + + +## 技术描述 +Coolbpf的功能架构如下图,它当前主要包含六大功能: +- 远程编译;本地编译和基础库封装; +- 低版本内核支持;BTF自动生成和发布; +- eBPF应用自动化测试; +- 支持python/go/rust等高级语言进行应用开发 + +![Coolbpf 整体架构图](../materials/imgs/devops_perf/coolbpf/coolbpf.png) + +## 应用场景 +Coolbpf如其名一样非常酷的提升了eBPF的开发和编译效率,应用场景包括:系统故障诊断,网络优化,系统安全,性能监控。未 +来,Coolbpf还将探索新技术、新特性:提升字节码翻译效率、内核运行时安全等,应用场景将更加多样。 diff --git a/materials/imgs/devops_perf/coolbpf/coolbpf.png b/materials/imgs/devops_perf/coolbpf/coolbpf.png new file mode 100644 index 0000000000000000000000000000000000000000..28bfa49e67a7867deb609655e9703b82d194f265 Binary files /dev/null and b/materials/imgs/devops_perf/coolbpf/coolbpf.png differ