ebpf环境搭建2

最近又需要了解ebpf相关的知识,感觉到目前ebpf的开发相对简单了很多,最终我选择使用cilium/ebpf作为框架进行代码开发:

  1. 直接升级内核到Linux5.10
  2. 安装必要的开发工具:
  • 将 eBPF 程序编译成字节码的 LLVM;
  • C 语言程序编译工具 make;
  • 最流行的 eBPF 工具集 BCC 和它依赖的内核头文件;(cilium/ebpf不需要这个)
  • 与内核代码仓库实时同步的 libbpf;(cilium/ebpf使用libbpf-go)
  • 同样是内核代码提供的 eBPF 程序管理工具 bpftool。
# For Ubuntu20.10+
sudo apt-get install -y  make clang llvm libelf-dev libbpf-dev bpfcc-tools libbpfcc-dev linux-tools-$(uname -r) linux-headers-$(uname -r)

# For RHEL8.2+
sudo yum install libbpf-devel make clang llvm elfutils-libelf-devel bpftool bcc-tools bcc-devel
  1. 简单内核是否开启了BTF,如果没有的话,重新编译内核
CONFIG_DEBUG_INFO_BTF=y 和 CONFIG_DEBUG_INFO=y 
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容