Go Ebpf

Open-source Go projects categorized as Ebpf

Top 23 Go Ebpf Projects

  • cilium

    eBPF-based Networking, Security, and Observability

  • Project mention: Cisco to Acquire Cloud Native Networking and Security Leader Isovalent | news.ycombinator.com | 2023-12-21

    They would have had to add a few externals to get to Graduated but it's definitely a minority:

    https://github.com/cilium/cilium/blob/main/MAINTAINERS.md

  • ebpf

    ebpf-go is a pure-Go library to read, modify and load eBPF programs and attach them to various hooks in the Linux kernel.

  • Project mention: eBPF Documentary | news.ycombinator.com | 2024-03-10

    Oh, no I don't mean that arbitrary Go compiles to eBPF. Apologies if I gave that impression. I meant that there are libraries that let you compose eBPF programs in other languages. But you're still putting together an eBPF program, just like you can assemble JSON with Go but you can't compile an arbitrary Go program to JSON.

    Cilium's eBPF library is the Go one I had in mind: https://github.com/cilium/ebpf

    Here's an example from that repo: https://github.com/cilium/ebpf/tree/main/examples/ringbuffer

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • coroot

    Coroot is an open-source APM & Observability tool, a DataDog and NewRelic alternative 📊, 🖥️, 👉. Powered by eBPF for rapid insights into system performance. Monitor, analyze, and optimize your infrastructure effortlessly for peak reliability at any scale.

  • Project mention: Coroot: Open-source alternative to Datadog/NewRelic | news.ycombinator.com | 2024-04-24
  • tetragon

    eBPF-based Security Observability and Runtime Enforcement

  • Project mention: Linux runtime security agent powered by eBPF | news.ycombinator.com | 2023-10-19
  • tracee

    Linux Runtime Security and Forensics using eBPF

  • Project mention: Linux runtime security agent powered by eBPF | news.ycombinator.com | 2023-10-19
  • odigos

    Distributed tracing without code changes. 🚀 Instantly monitor any application using OpenTelemetry and eBPF

  • Project mention: Setup odigos in Ubuntu | dev.to | 2024-04-10

    Welcome 👋 to this blog. Did you want to use odigos on your Ubuntu machine but don't know how to start? Then this blog will definitely help you and it also helps you to understand the basic aspect of the odigos project.

  • skydive

    An open source real-time network topology and protocols analyzer

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
  • dae

    eBPF-based Linux high-performance transparent proxy solution.

  • Project mention: A Linux high-performance transparent proxy solution based on eBPF | news.ycombinator.com | 2024-01-09
  • ebpf_exporter

    Prometheus exporter for custom eBPF metrics

  • kubectl-trace

    Schedule bpftrace programs on your kubernetes cluster using the kubectl

  • caretta

    Instant K8s service dependency map, right to your Grafana.

  • KubeArmor

    Runtime Security Enforcement System. Workload hardening/sandboxing and implementing least-permissive policies made easy leveraging LSMs (BPF-LSM, AppArmor).

  • loxilb

    eBPF based cloud-native load-balancer. Powering Kubernetes|Edge|5G|IoT|XaaS Apps.

  • Project mention: Requirement for cross-cluster communication in Kubernetes (K8s) | /r/kubernetes | 2023-12-08

    Feel free to take a look at this project

  • goebpf

    Library to work with eBPF programs from Go

  • kepler

    Kepler (Kubernetes-based Efficient Power Level Exporter) uses eBPF to probe performance counters and other system stats, use ML models to estimate workload energy consumption based on these stats, and exports them as Prometheus metrics (by sustainable-computing-io)

  • libbpfgo

    eBPF library for Go. Powered by libbpf.

  • parca-agent

    eBPF based always-on profiler auto-discovering targets in Kubernetes and systemd, zero code changes or restarts needed!

  • Project mention: Flameshow: A Terminal Flamegraph Viewer | news.ycombinator.com | 2023-09-24

    If that's true, you should probably update the docs. Everything I could find implied dotnet, jvm, python were still unsupported. For example, the roadmap section of the readme mentions most of these but nothing mentions dotnet. However I did find your tickets and a demo being merged in which makes it seem maybe supported?

    Ticket: https://github.com/parca-dev/parca-agent/issues/161

    Demo: https://github.com/parca-dev/parca-demo/pull/18

  • eBPF-Guide

    eBPF (extended Berkeley Packet Filter) Guide. Learn all about the eBPF Tools and Libraries for Security, Monitoring , and Networking.

  • go-tc

    traffic control in pure go - it allows to read and alter queues, filters and classes

  • cilium-cli

    CLI to install, manage & troubleshoot Kubernetes clusters running Cilium

  • Project mention: Grant Kubernetes Pods Access to AWS Services Using OpenID Connect | dev.to | 2024-04-22

    resource "tls_private_key" "this" { algorithm = "ECDSA" ecdsa_curve = "P384" } resource "hcloud_ssh_key" "this" { name = var.stack_name public_key = tls_private_key.this.public_key_openssh } resource "hcloud_server" "this" { name = var.stack_name server_type = "cax11" image = "ubuntu-22.04" location = "nbg1" ssh_keys = [ hcloud_ssh_key.this.id, ] public_net { ipv4 = hcloud_primary_ip.this["ipv4"].id ipv6 = hcloud_primary_ip.this["ipv6"].id } user_data = <<-EOF #cloud-config users: - name: ${var.username} groups: users, admin, adm sudo: ALL=(ALL) NOPASSWD:ALL shell: /bin/bash ssh_authorized_keys: - ${tls_private_key.this.public_key_openssh} packages: - certbot package_update: true package_upgrade: true runcmd: - sed -i -e '/^\(#\|\)PermitRootLogin/s/^.*$/PermitRootLogin no/' /etc/ssh/sshd_config - sed -i -e '/^\(#\|\)PasswordAuthentication/s/^.*$/PasswordAuthentication no/' /etc/ssh/sshd_config - sed -i '$a AllowUsers ${var.username}' /etc/ssh/sshd_config - | curl https://get.k3s.io | \ INSTALL_K3S_VERSION="v1.29.3+k3s1" \ INSTALL_K3S_EXEC="--disable traefik --kube-apiserver-arg=service-account-jwks-uri=https://${cloudflare_record.this.name}/openid/v1/jwks --kube-apiserver-arg=service-account-issuer=https://${cloudflare_record.this.name} --disable-network-policy --flannel-backend none --write-kubeconfig /home/${var.username}/.kube/config --secrets-encryption" \ sh - - chown -R ${var.username}:${var.username} /home/${var.username}/.kube/ - | CILIUM_CLI_VERSION=v0.16.4 CLI_ARCH=arm64 curl -L --fail --remote-name-all https://github.com/cilium/cilium-cli/releases/download/$CILIUM_CLI_VERSION/cilium-linux-$CLI_ARCH.tar.gz{,.sha256sum} sha256sum --check cilium-linux-$CLI_ARCH.tar.gz.sha256sum sudo tar xzvfC cilium-linux-$CLI_ARCH.tar.gz /usr/local/bin - kubectl completion bash | tee /etc/bash_completion.d/kubectl - k3s completion bash | tee /etc/bash_completion.d/k3s - | cat << 'EOF2' >> /home/${var.username}/.bashrc alias k=kubectl complete -F __start_kubectl k EOF2 - reboot EOF }

  • btfhub

    BTFhub, in collaboration with the BTFhub Archive repository, supplies BTF files for all published kernels that lack native support for embedded BTF. This joint effort ensures that even kernels without built-in BTF support can effectively leverage the benefits of eBPF programs, promoting compatibility across various kernel versions.

  • nhi

    :tv: Automatically capture all potentially useful information about each executed command (as well as its output) and get powerful querying mechanism

  • coroot-node-agent

    A Prometheus exporter based on eBPF that gathers comprehensive container metrics

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020).

Go Ebpf related posts

  • Setup odigos in Ubuntu

    2 projects | dev.to | 10 Apr 2024
  • A Linux high-performance transparent proxy solution based on eBPF

    2 projects | news.ycombinator.com | 9 Jan 2024
  • Dae – A Linux high-performance transparent proxy solution based on eBPF

    1 project | news.ycombinator.com | 7 Jan 2024
  • Requirement for cross-cluster communication in Kubernetes (K8s)

    1 project | /r/kubernetes | 8 Dec 2023
  • Open Source Distributed Tracing Through eBPF

    1 project | news.ycombinator.com | 28 Nov 2023
  • Architecting for Resilience: Crafting Opinionated EKS Clusters with Karpenter & Cilium Cluster Mesh — Part 1

    4 projects | dev.to | 31 Oct 2023
  • Odigos v0.1.82 - Open-source instant distributed tracing without code changes

    1 project | /r/selfhosted | 24 Oct 2023
  • A note from our sponsor - SaaSHub
    www.saashub.com | 21 May 2024
    SaaSHub helps you find the best software and product alternatives Learn more →

Index

What are some of the best open-source Ebpf projects in Go? This list will help you:

Project Stars
1 cilium 18,720
2 ebpf 5,805
3 coroot 4,189
4 tetragon 3,332
5 tracee 3,287
6 odigos 3,043
7 skydive 2,599
8 dae 2,465
9 ebpf_exporter 2,043
10 kubectl-trace 1,979
11 caretta 1,713
12 KubeArmor 1,284
13 loxilb 1,188
14 goebpf 1,098
15 kepler 1,012
16 libbpfgo 673
17 parca-agent 494
18 eBPF-Guide 471
19 go-tc 411
20 cilium-cli 372
21 btfhub 333
22 nhi 291
23 coroot-node-agent 280

Sponsored
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com