eBPF 是一项革命性的技术,起源于 Linux 内核,它可以在特权上下文中(如操作系统内核)运行沙盒程序。它用于安全有效地扩展内核的功能,而无需通过更改内核源代码或加载内核模块的方式来实现。
分类
Cilium
  • pdf 文档 Cilium的网络加速秘诀

    0 码力 | 14 页 | 11.97 MB | 1 年前
    3
    文档主要介绍了Cilium的网络加速技术,重点阐述了其基于eBPF技术实现的网络性能提升。Cilium通过在Linux内核中使用eBPF程序,实现了数据包的高效转发、负载均衡和过滤,显著降低了网络数据包的转发延时,提升了吞吐量,并减少了CPU开销。与传统技术相比,Cilium在服务数量增加时表现出更优的性能,例如在服务数量达到3K时,Cilium的延时显著低于kube-proxy。此外,Cilium还支持DSR(Direct Server Return)模式,进一步优化了nodePort的转发性能,减少了网络转发的跳数。
  • pdf 文档 2.2.1通过Golang+eBPF实现无侵入应用可观测 推荐

    0 码力 | 29 页 | 3.83 MB | 1 年前
    3
    文档详细介绍了通过Golang和eBPF实现无侵入式应用可观测性的方法。eBPF是一种在Linux内核运行的沙盒程序,无需修改任何应用代码,提供无侵入的应用无关、语言无关、框架无关的应用可观测能力。结合Golang,可以实现高效的网络、系统调用等指标采集。文档还提到性能提升,如eBPF Agent性能提升20%,Otel Collector性能提升80%,并提供智能告警和多维度监控能力,帮助实现更高效的应用管理和优化。
  • pdf 文档 How and When You Should Measure CPU Overhead of eBPF Programs

    0 码力 | 20 页 | 2.04 MB | 1 年前
    3
    文档介绍了如何测量eBPF程序的CPU开销,强调了测量的重要性和方法。文档指出,eBPF程序通过运行时间(run_time_ns)和运行次数(run_cnt)来衡量性能,推荐使用eBPF进行基准测试和CI/CD,并在生产环境中使用采样分析器。测量方法包括通过sysctl和procfs启用内核eBPF统计,以及使用bpftool、bpf syscall和procfs访问统计信息。文档还介绍了ebpfbench这一Go库,用于eBPF基准测试。
  • pdf 文档 bpfbox: Simple Precise Process Confinement with eBPF and KRSI

    0 码力 | 8 页 | 528.12 KB | 1 年前
    3
    本文档介绍了bpfbox,一种基于eBPF和KRSI的Linux进程限制机制。bpfbox允许用户为每个应用程序编写简单的策略,并通过附加BPF程序到LSM钩子来执行这些策略。该机制结合了用户空间和内核空间的状态,提供了一种轻量级、灵活且生产安全的解决方案。bpfbox的策略语言支持规则和指令,用于指定对系统对象的访问权限,并增强规则块的功能。文档还提到bpfbox在Linux内核5.8及以上版本上即插即用,并对现有进程限制机制进行了改进。
  • pdf 文档 Debugging Go in production using eBPF

    0 码力 | 14 页 | 746.99 KB | 1 年前
    3
    本文档展示了如何利用eBPF在生产环境中调试Go程序。通过使用tracepoints进行动态日志记录,可以轻松地对生产二进制文件进行插桩。尽管Go的ABI(应用程序二进制接口)复杂性(如接口和通道等特性)使得调试变得困难,但仍可通过eBPF实现复杂功能,例如捕获HTTP消息。文档详细介绍了如何使用eBPF挂钩函数调用,并通过示例展示了如何利用BPF程序捕获函数参数。此外,还提到了使用Uprobes进行函数挂钩,并通过Perf Buffer输出跟踪数据。最后,文档展示了如何通过eBPF实现Go程序的动态调试,并提供了Github链接供进一步参考。
  • pdf 文档 Zero instrumentation monitoring with your first steps in eBPF

    0 码力 | 7 页 | 618.37 KB | 1 年前
    3
    文档介绍了eBPF在非仪器化监控中的应用,展示了如何通过eBPF附加到不同事件(如Kprobes、uprobes、Tracepoints和网络包)进行监控。内容还提到了使用C、LLVM/CLANG、tc、gobpf和bcc等工具和框架来简化eBPF开发,并提供了实际案例和链接供读者进一步探索。
  • pdf 文档 Identity Aware Threat Detection and Network Monitoring by using eBPF

    0 码力 | 7 页 | 1.35 MB | 1 年前
    3
    文档介绍了使用eBPF进行基于身份的威胁检测和网络监控的方法。传统网络工具基于IP和端口,但在Kubernetes环境中,IP地址动态变化使其不再有意义。通过结合eBPF和Cilium,可以实现对 suspicious IP的流出监控、未经授权的互联网流量检测以及Kubernetes API服务器访问的监控。解决方案包括定义签名、导出数据到Splunk,并通过网络策略决策字段(如转发或丢弃)进行警报。该方法能够有效应对容器化工作负载的网络威胁。
  • pdf 文档 North-South Load Balancing of Kubernetes Services with eBPF/XDP

    0 码力 | 11 页 | 444.46 KB | 1 年前
    3
    文档探讨了在Kubernetes服务中利用eBPF/XDP技术实现南北向流量负载均衡的方法。通过将服务暴露于固定IP地址,并结合eBPF/XDP的高效数据包处理能力,文档展示了如何优化服务发现和流量管理。Cilium作为容器网络解决方案,利用这些技术实现高性能和低延迟的网络通信。
  • pdf 文档 eBPF Summit 2020 Lightning Talk

    0 码力 | 22 页 | 1.81 MB | 1 年前
    3
    文档介绍了eBPF Summit 2020 Lightning Talk的主要内容,包括不同类型的BPF程序、使用Rust编写BPF程序、在RedBPF中添加新功能、利用BPF maps进行状态决策,以及如何加载程序以保护RabbitMQ。
  • pdf 文档 Understanding Ruby with BPF - rbperf

    0 码力 | 19 页 | 972.07 KB | 1 年前
    3
    文档介绍了rbperf工具,该工具用于通过BPF技术分析Ruby程序的性能。rbperf能够记录和报告系统调用(如write(2))以及CPU活动,特别适用于复杂Ruby程序的执行分析。文档还展示了rbperf的工作流程,包括数据采集、处理和输出,并提到了未来计划,如集成到Facebook的性能分析基础设施、改进开源版本和增加更多功能支持。
共 24 条
  • 1
  • 2
  • 3
前往