Skip to content
This repository has been archived by the owner on Jan 31, 2024. It is now read-only.

oscomp/proj205-eBPF-K8S

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 

Repository files navigation

proj205-eBPF-K8S

基于 Kubernetes 的云原生 eBPF 程序编排和部署框架

项目名称

基于 Kubernetes 的云原生 eBPF 程序编排框架

项目描述

随着云原生的兴起,容器技术已经成为了现代应用程序开发、部署和管理的标准,而 eBPF 技术则被广泛地应用于网络、安全和性能监控等领域。然而,目前在云端和边缘端使用 eBPF 还存在一些痛点,比如缺少类似于容器一样的调度和分发机制,不便于用户管理和部署。

本课题希望参赛团队基于 Kubernetes 和 eBPF 技术,设计并实现一款支持类容器化的 eBPF 程序调度和分发的框架。通过在云端和边缘端提供类似于容器一样的使用体验,让用户可以更加便捷地开发、部署和管理 eBPF 程序,同时提高系统的性能和安全性。参赛者需在此框架之上构建一个示例应用系统,专注于可观测性、网络或安全等方面。此外,探索将 eBPF 与 WebAssembly (WASM) 结合,以改进 eBPF 程序的开发与部署体验。

所属赛道

2023全国大学生操作系统比赛的“OS功能设计”赛道

参赛要求

  • 以小组为单位参赛,最多三人一个小组,且小组成员是来自同一所高校的本科生(2023春季学期或之后本科毕业的大一~大四的学生)或研究生
  • 如学生参加了多个项目,参赛学生选择一个自己参加的项目参与评奖
  • 请遵循“2023全国大学生操作系统比赛”的章程和技术方案要求

项目导师

赖晓铮(华南理工计算机学院)

郑昱笙(浙江大学/DatenLord)

难度

  • 基础特性的难度:中等
  • 高级特性的难度:较高

基本要求

  • 设计并实现一个基于 Kubernetes 的 eBPF 开发与部署框架,支持高效的 eBPF 程序管理和部署,包括程序的安装、动态加载、升级和回滚,提供类容器化的使用体验;
  • 在此框架之上,构建一个专注于可观测性、网络、或者安全等方面的示例应用系统
  • 支持在用户态或内核态运行eBPF程序
  • 探索将 eBPF 与 WebAssembly(Wasm)结合的可能性,以改进eBPF程序的开发与部署体验。例如使用 wasm-bpf (https://github.com/eunomia-bpf/wasm-bpf)框架和 WASM 轻量级容器辅助 eBPF 程序开发,并借助 WASM 的沙箱和轻量级特性,在边缘端部署,或作为其他应用的插件动态加载。

预期目标

  1. 完成基于 Kubernetes 的 eBPF 开发与部署框架的设计与实现,包括以下功能:
    • eBPF 程序的安装、动态加载、升级和回滚
    • 提供类似容器化的使用体验
    • 支持在用户态或内核态运行 eBPF 程序
    • 支持eBPF程序的监控与管理
  2. 在此框架之上,构建一个专注于可观测性、网络或安全等方面的示例应用系统,具体要求如下:
    • 选择一个具体的应用场景,如网络监控、流量控制、安全防护等
    • 为选定的应用场景开发 eBPF 程序
    • 利用所构建的框架对开发的 eBPF 程序进行部署和管理
    • 对示例应用系统的性能和可用性进行评估
  3. eBPF 与 WebAssembly 结合
    • 探索将 eBPF 与WebAssembly(Wasm)结合的可能性,例如使用 wasm-bpf 框架和 WASM 轻量级容器辅助 eBPF 程序开发;
    • 在边缘端部署 eBPF 程序,或作为其他应用的插件动态加载,利用 WASM 的沙箱和轻量级特性提高部署效率;
    • 实现一个兼容 WASM 的 eBPF 程序开发和运行时环境,以便开发者可以使用熟悉的 WASM 工具链进行eBPF程序开发。

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published