TopGit
GitHub Repo Review

Tetragon: eBPF Security Observability for Kubernetes

cilium/tetragon
TTopGit review image for cilium/tetragon
Review by Topgit.dev for cilium/tetragon, with GitHub repository stats and README context.
Quick verdict

Tetragon is Cilium's eBPF-based component for security observability and runtime enforcement on Kubernetes and Linux. It hooks into kernel sensors to watch process execution, system calls, and network or file I/O, tagging events with Kubernetes identity. Reach for it if you need kernel-level visibility tied to a workload. Skip it if you're not ready to author TracingPolicy for anything beyond the defaults.

Stars
โ˜… 5.1k
Forks
โ‘‚ 627
Contributors
๐Ÿ‘ฅ 192
Language
C
License
Apache-2.0
Topic
Developer Tools
Updated
Oct 2026

What is Tetragon?

Tetragon is Cilium's component for eBPF-based security observability, paired with runtime enforcement, run on Linux hosts or inside a Kubernetes cluster. It hooks into critical kernel points through sensors, emitting events such as process_exec, process_exit, process_kprobe, process_tracepoint, and process_uprobe, each carrying Linux and Kubernetes context like namespace and pod.

Core Capabilities

  • โœ“By default, Tetragon emits process_exec and process_exit events, covering the full process lifecycle without any policy configuration.
  • โœ“Generic tracing events โ€” process_kprobe, process_tracepoint, and process_uprobe โ€” support custom detection logic defined through TracingPolicy resources.
  • โœ“Kubernetes-aware: it understands namespaces, pods, and other cluster identities, so detection can target specific workloads.
  • โœ“Covers system call activity and I/O, including network and file access, not just process starts and stops.
  • โœ“Documented use cases beyond the basics: network observability, filename access tracking, Linux credentials monitoring, and privileged execution detection.
  • โœ“Ships alongside the Tetra CLI, installed separately, for interacting with Tetragon.
How this repository's GitHub stars have grown over time. Source: star-history.com.View the star history โ†—

Practical Security Scenarios

  • โ€ขWatching process execution across a cluster to catch a shell spawned inside a container that shouldn't be running one.
  • โ€ขWriting a TracingPolicy to flag specific system calls or kernel probes for a workload you don't fully trust.
  • โ€ขTracking privileged execution or credential changes inside containers, per the README's linked use case pages.
  • โ€ขAuditing file access and network activity tied to a specific namespace or pod, instead of raw host-level logs.

Getting Started with Tetragon

The README doesn't list install commands inline; it points to the official Tetragon documentation instead. From there the getting-started guides split by target: install Tetragon on a Kubernetes cluster, try it on Linux via Docker, deploy Tetragon more broadly, or install the separate Tetra CLI for interacting with it. Treat those docs pages as the source of truth for exact commands, since none appear in this repo's README.

Configuring Security Policies

Beyond the default process_exec/process_exit events, custom detection goes through TracingPolicy resources โ€” that's the mechanism the README points to for configuring process_kprobe, process_tracepoint, and process_uprobe events. The README links dedicated use-case pages for network observability, filename access, Linux process credentials, and privileged execution, all built on that same TracingPolicy concept rather than a separate config format. Exact policy syntax isn't in this repo's README; it's covered in the linked TracingPolicy concept page and the use-case docs.

Strengths

  • โœ“Kubernetes-aware by design: security events carry namespace and pod identity instead of raw host PIDs, so alerts map straight to a workload.
  • โœ“Default process lifecycle tracking works without writing any policy first, so you get visibility before you tune anything.
  • โœ“Kernel-level detection covers more than process starts: system calls, network I/O, and file access are all in scope, per the README.
  • โœ“TracingPolicy gives you a path from generic tracing to custom kprobe/tracepoint/uprobe rules once the defaults aren't specific enough.
  • โœ“Apache-2.0 license. No copyleft obligations for building it into a commercial security stack.

Considerations and Scope

  • โ–ณThe README gives no version number, release history, or roadmap, so there's no documented sense of stability or upgrade cadence.
  • โ–ณInstall and configuration commands aren't in the README; every setup path (Kubernetes, Linux, Tetra CLI) routes you to external docs, which adds friction for a quick local test.
  • โ–ณDetection beyond default process lifecycle events requires writing TracingPolicy resources yourself; this README doesn't describe a ready-made policy library.
  • โ–ณThe README doesn't state Tetragon's own resource footprint or required kernel version, so you'd need to check the linked docs before assuming it runs on your kernel.
  • โ–ณThe list of production adopters lives in a separate USERS.md file rather than the main README, so you can't gauge real-world deployment scale from this page alone.

Comparing Runtime Security Tools

Falco โ€” a CNCF runtime security tool that also detects at the kernel level (eBPF or kernel module) with syscall-based rules, an established option with a broader shared rule ecosystem.Tracee โ€” Aqua Security's eBPF-based runtime security and forensics tool, comparable in scope to Tetragon's kernel event tracing.Cilium โ€” Tetragon's parent project, worth adding if you want eBPF-based networking and policy enforcement alongside the security observability Tetragon provides, not as a replacement for it.Sysdig โ€” a commercial and open-source runtime security platform built on syscall capture, an option if you want a managed product instead of self-hosting the component.

Frequently Asked Questions

What is Tetragon's license?

Tetragon is licensed under Apache-2.0, according to its GitHub repository.

What types of security events can Tetragon detect?

Tetragon detects process execution, system call activity, and I/O events covering network and file access, based on kernel sensors.

Does Tetragon integrate with Kubernetes?

Tetragon integrates with Kubernetes: when it runs in a cluster, it understands namespaces, pods, and other Kubernetes identities, so detection can target specific workloads.

How does Tetragon use eBPF?

Tetragon uses eBPF to hook into critical kernel points through sensors, generating process_exec, process_exit, process_kprobe, process_tracepoint, and process_uprobe events that carry Linux and Kubernetes context.

Where can I find installation guides for Tetragon?

Tetragon's installation guides live in its official documentation, with separate paths for Kubernetes, Linux via Docker, general deployment, and installing the Tetra CLI.

The problem it solves

Most security tooling watches network traffic or reads audit logs afterward, so a shell spawned inside a compromised pod, or a suspicious file read inside a container, can go unnoticed until someone digs through logs later. Tetragon closes that gap by hooking directly into the kernel and reacting as those events happen โ€” process execution, system call activity, and network or file access โ€” with Kubernetes identity attached so the specific workload is obvious right in the alert.

Who should try it โ€” and who should skip

Try Tetragon if you run workloads on Kubernetes or Linux and want kernel-level visibility into process execution, syscalls, and file or network access, tied to pod and namespace identity rather than raw host logs. It's also a fit if you're prepared to write TracingPolicy resources to go beyond the default process-lifecycle events. Skip it if you just want network policy enforcement โ€” that's Cilium's job โ€” or if you need a turnkey install with no policy authoring at all.

Related repositories

Source & attribution

Facts and quotes sourced from the cilium/tetragon GitHub repository and its README.

GitHub data ยท last synced Aug 14, 2026Reviewed by Henry
โ† Back to TopGit

Is tetragon worth your time?

ChatGPT, Claude and Perplexity can all read this page. Ask one of them what it makes of tetragon.

GitHub