摘要: 本文地址:https://www.ebpf.top/post/bumblebee 1. 前言 不久前,Solo.io 公司在官网博客宣布了开源了一个名称为 BumbleBee 的新项目。该项目专注于简化构建 eBPF 工具的门槛和优化使用体验,通过将 eBPF 程序打包成 OCI 镜像,带来了与使用 阅读全文
posted @ 2022-02-14 08:50 深入浅出eBPF 阅读(914) 评论(0) 推荐(0) 编辑

2022年11月12日

摘要: 本文地址:https://www.ebpf.top/post/ebpf_rust_aya 1. 前言 Linux 内核 6.1 版本中有一个非常引人注意的变化:引入了对 Rust 编程语言的支持。Rust 是一种系统编程语言,Rust 通过提供非常强大的编译时保证和对内存生命周期的明确控制。在内核开 阅读全文
posted @ 2022-11-12 13:03 深入浅出eBPF 阅读(924) 评论(0) 推荐(0) 编辑

2022年5月2日

摘要: 本文地址:https://www.ebpf.top/post/ftrace_kernel_dynamic 李程远老师在极客时间 《容器实战高手课》中的 “ 加餐 04 | 理解 ftrace(2):怎么理解 ftrace 背后的技术 tracepoint 和 kprobe?” 留了一道思考题: 想想 阅读全文
posted @ 2022-05-02 17:47 深入浅出eBPF 阅读(977) 评论(0) 推荐(0) 编辑

2022年4月8日

摘要: 本文地址:https://www.ebpf.top/post/no_space_left_on_devices 最近在生产环境中遇到了几次创建容器报错 ”no space left on device“ 失败的案例,但是排查过程中发现磁盘使用空间和 inode 都比较正常。在常规的排查方式都失效的情 阅读全文
posted @ 2022-04-08 22:47 深入浅出eBPF 阅读(318) 评论(0) 推荐(0) 编辑
摘要: 本文地址:https://ebpf.top/post/btfgen-one-step-closer-to-truly-portable-ebpf-programs Mauricio 2022 2022/03/16 eBPF 是一项广为人知的技术,已经在可观测、网络和安全领域领域得到广泛应用。Linu 阅读全文
posted @ 2022-04-08 22:45 深入浅出eBPF 阅读(702) 评论(0) 推荐(0) 编辑

2022年3月17日

摘要: 本文地址:https://www.ebpf.top/post/ubuntu-21-10-dbgsym 1. 背景 Linux 内核中的调试符号包含源代码级别的信息,如函数名称、函数调用约定、以及源代码行号到指令的映射。这些信息在调试或剖析内核的时候非常有用。在本文中,我将展示如何在 Ubuntu 上 阅读全文
posted @ 2022-03-17 15:28 深入浅出eBPF 阅读(916) 评论(0) 推荐(0) 编辑
摘要: 如果你只是需要快速使用工具来进行问题排查,包括但不限于函数调用栈跟踪、函数调用子函数流程、函数返回结果,那么推荐你直接使用 Brendan Gregg 封装的 perf-tools工具即可,本文尝试从手工操作 Ftrace 跟踪工具的方式展示在底层是如何通过 tracefs 实现这些能力的。如果你对某个跟踪主题感兴趣,建议直接跳转到相关的主题查看。 阅读全文
posted @ 2022-03-17 08:36 深入浅出eBPF 阅读(3119) 评论(0) 推荐(1) 编辑

2022年1月10日

摘要: 揭秘 BPF map 前生今世 本文地址:https://www.ebpf.top/post/map_internal 1. 前言 众所周知,map 可用于内核 BPF 程序和用户应用程序之间实现双向的数据交换, 为 BPF 技术中的重要基础数据结构。 在 BPF 程序中可以通过声明 struct 阅读全文
posted @ 2022-01-10 10:12 深入浅出eBPF 阅读(746) 评论(0) 推荐(0) 编辑

2021年12月4日

摘要: eBPF 从创建开始,短短数年(7年),至今就已经被认为是过去 50 年来操作系统最大的变更,那么 eBPF 技术到底给我们带来了什么样的超能力,以至于得到如此高的评价? 本文从以下内容入手,对 eBPF 技术进行了全面的概述: eBPF 是什么? eBPF 的应用场景有哪些? eBPF 是怎么工作 阅读全文
posted @ 2021-12-04 11:40 深入浅出eBPF 阅读(593) 评论(0) 推荐(1) 编辑

2021年9月29日

摘要: 本文地址:https://www.ebpf.top/post/ubuntu_2104_bpf_env 1. 系统安装 1.1 Vagrant Vagrant 是一款用于构建及配置虚拟开发环境的软件,基于 Ruby,主要以命令行的方式运行。Vagrant 由 HashiCorp 官方出品,相信提到大名 阅读全文
posted @ 2021-09-29 16:40 深入浅出eBPF 阅读(2157) 评论(0) 推荐(0) 编辑

导航