随着 eBPF 技术的高速发展,eBPF 已成为 Linux 内核顶级子系统,并扩展到内核网络、存储、内存、调度和安全等子模块。这种可编程底座内核框架构建了全系统,是云计算、运维和安全等领域技术创新的基础。
龙蜥社区在 eBPF 领域进行了广泛的实践。从底层的 eBPF 低版本内核支持和 eBPF 脚本编程语言,到上层的基于 libbpf 跨平台的跟踪诊断增强框架,再到系统诊断和性能优化方面的应用实践等多方面,皆取得了一定成果。11 月 1 日,2023 云栖大会龙蜥操作系统专场上,龙蜥社区联合理事单位浪潮信息共同编写的《eBPF 技术实践白皮书》正式发布(以下简称“白皮书”),该白皮书主要介绍了 eBPF 技术原理、常见开发框架,并分享 eBPF 技术在系统诊断、网络性能优化、主机安全等场景的应用实践和成果。
内容概览
白皮书历经数月精心编写,旨在为企业、工程师和技术领导者提供 eBPF 技术的参考和借鉴,共分为四大章节,下载方式详见文章末尾处。
eBPF 技术介绍
介绍了 eBPF 的技术原理、常见的开发框架特点和使用场景,重点介绍了龙蜥社区开源的 Coolbpf。以便于广大 eBPF 爱好者可以简化开发和编译过程,专注自己功能开发。
(图/Coolbpf功能架构图)
应用与实践
重点介绍了龙蜥社区和浪潮信息在 eBPF 技术方面的四大实践应用和成功案例。
场景一:系统诊断
针对传统系统诊断工具在网络、IO、内存和调度领域的限制,龙蜥社区 eBPF 技术探索 SIG 将实践成果整理汇总在白皮书中,详细介绍了基于 eBPF 技术在网络、IO、内存和调度等场景的系统诊断实践,为系统诊断提供了更强大能力。
场景二:IO 全链路检测
针对传统虚拟化 I/O 因链路长、技术栈复杂等而难以追踪的问题,浪潮数据InCloud Shpere虚拟化产品开发团队将实践成果整理汇总在白皮书中,突破了一种虚拟化I/O全链路分析技术,实现了虚拟机内部单个I/O到Virtio、Qemu、文件系统、块设备、分布式存储等不同技术层的I/O栈的运行状态追踪。
场景三:网络性能优化
针对传统解决方案资源消耗大、兼容性、安全性等问题,浪潮数据云操作系统InCloud OS产品团队将容器网络性能提升实践成果整理汇总在白皮书中,主要包括方案说明、整体架构及性能对比测试情况等,提升了pod/service 关键性能指标。
场景四:主机安全
针对传统内核模块方式带来的系统稳定性和性能问题,浪潮信息云峦 KeyarchOS 操作系统团队将系统安全实践成果整理汇总在白皮书中,详细介绍了安全防御组件KSecure的技术架构和应用场景,提升了操作系统作系统安全性和合规性。
未来展望
后续,龙蜥社区和浪潮信息会继续开展 eBPF 应用的研究与实践,在安全方向,支持容器入侵检测、网络防护等;在容器网络可观测性方向,支持应用零侵入网络流量信息采集和分析、容器间网络拓扑绘制、时延和错误响应等监控告警等,敬请期待!
白皮书下载方式:
1.欢迎关注龙蜥社区公众号【OpenAnolis 龙蜥】,后台回复关键字“白皮书”,即可获得龙蜥社区系列白皮书下载链接。
2.下载链接:
https://openanolis.cn/assets/static/eBPF_technical_practice.pdf
—— 完 ——
加入龙蜥社群
加入微信群:添加社区助理-龙蜥社区小龙(微信:openanolis_assis),备注【龙蜥】与你同在;加入钉钉群:扫描下方钉钉群二维码。
关于龙蜥
龙蜥社区是立足云计算打造面向国际的 Linux 服务器操作系统开源根社区及创新平台。龙蜥操作系统(Anolis OS)是龙蜥社区推出的 Linux 发行版,拥有三大核心能力:提效降本、更加稳定、更加安全。
目前,Anolis OS 23 已发布,全面支持智能计算,兼容主流 AI 框架,支持一键安装 nvidia GPU 驱动、CUDA 库等,完善适配 Intel、兆芯、鲲鹏、龙芯等芯片,并提供全栈国密支持。
加入我们,一起打造面向云时代的操作系统!