{"repo":"yunwei37/Eunomia","free":true,"listed":false,"github":"https://github.com/yunwei37/Eunomia","clone":"git clone https://github.com/yunwei37/Eunomia.git","description":"A lightweight eBPF-based Monitor tool：run ebpf as a service!","language":"C","stars":69,"topics":["cloud-native","container","cpp","cpp-library","cpp20","ebpf","monitor","observability","prometheus","security"],"license":"BSD-3-Clause","category":"analytics","readme_excerpt":"Eunomia A lightweight eBPF-based CloudNative Monitor tool for Container Security and Observability 这个项目是为了 2022 年操作系统大赛而设计的，它仅适用于概念验证和教学内容，不适用于生产环境。关于更进一步的开源开发计划，请移步 eunomia-bpf eunomia-bpf 将会关注两个方面： - eBPF 即服务 ：https://github.com/eunomia-bpf/eunomia-bpf - 一个工具链和包管理器 ：https://github.com/eunomia-bpf/ebpm-bootstrap We have a mirror of the source code on GitHub which runs CI. We also have a mirror on GitLab, for faster access in China and OS comp. - What is Eunomia - Three Main Ideas - Describe - Trace Point - Tutorial and Documents - Architecture - Quickstart - Prequest - run as binary - Docker, Prometheus and Grafana - Prometheus and grafana result - security rules - build On Linux - Why is eBPF - Why Eunomia - Documents & report - benchmark What is Eunomia Three Main Ideas 1. 无需修改代码，无需繁琐的配置，仅需 BTF 和一个微小的二进制即可启动监控和获取 Eunomia 核心功能： - 代码无侵入即可开箱即用收集多种指标，仅占用少量内存和 CPU 资源； - 告别庞大的镜像和 BCC编译工具链，最小仅需约 4MB 即可在支持的内核上或容器中启动跟踪； 2. 让 ebpf 程序的分发和使用像网页和 web 服务一样自然： - 数百个节点的集群难以分发和部署 ebpf 程序？bpftrace 脚本很方便，但是功能有限？Eunomia 支持通过 http RESTful API 直接进行本地编译后的 ebpf 代码的分发和热更新，仅需约数百毫秒和几乎可以忽略的 CPU 内存占用即可完成复杂 ebpf 追踪器的部署和更新； - 可以通过 http API 高效热插拔 ebpf 追踪器（约 100ms），实现按需追踪； 3. 提供一个新手友好的 ebpf 云原生监控框架： - 最少仅需继承和修改三四十行代码，即可在 Eunomia 中基于 libbpf-bootstrap 脚手架添加自定义 ebpf 追踪器、匹配安全告警规则、获取容器元信息、导出数据至 prometheus 和 grafana，实现高效的时序数据存储和可视化，轻松体验云原生监控； - 提供了丰富的文档和开发教程，力求降低 ebpf 程序的开发门槛； 详细信息可参阅 操作系统大赛决赛报告 ：doc/Readme.md Describe Eunomia 是一个使用 C/C++ 开发的基于 eBPF的轻量级，高性能云原生监控工具框架，旨在帮助用户了解容器的各项行为、监控可疑的容器安全事件，力求提供覆盖容器全生命周期的轻量级","default_branch":null,"files":null,"tree":[],"storefront":"/r/yunwei37","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/yunwei37/Eunomia/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}