Inspektor Gadget

    Inspektor Gadget is a collection of tools (or gadgets) to debug and inspect Kubernetes resources and applications. It manages the packaging, deployment and execution of eBPF programs in a Kubernetes cluster, including many based on BCC tools, as well as some developed specifically for use in Inspektor Gadget. It automatically maps low-level kernel primitives to high-level Kubernetes resources, making it easier and quicker to find the relevant information.

    How does it work?

    Inspektor Gadget is deployed to each node as a privileged DaemonSet. It uses in-kernel eBPF helper programs to monitor events mainly related to syscalls from userspace programs in a pod. The eBPF programs are run by the kernel and gather the log data. Inspektor Gadget’s userspace utilities fetch the log data from ring buffers and display it. What eBPF programs are and how Inspektor Gadget uses them is briefly explained here:


    How to install Inspektor Gadget

    About Continuous Integration

    Inspektor Gadget continuous integration workflow


    Understand how everything comes together.


    Kernel requirements per gadget.

    CR Usage Reference

    Syntax reference for using the Trace custom resource with each gadget.


    This section provides an overview of the gadgets included in Inspektor Gadget and guidance on how to use each.

    Custom Trace Resource

    Basic usage of the Trace resource


    Description of the local-gadget tool.


    How to contribute to Inspektor Gadget.

    Trace CRD schema reference (group

    Trace is the Schema for the traces API