Inspektor Gadget

    Inspektor Gadget is a collection of tools (or gadgets) to debug and inspect Kubernetes applications. While it was originally designed for Lokomotive , Kinvolk’s open-source Kubernetes distribution, it works just as well on other Kubernetes distributions.

    How does it work?

    Inspektor Gadget is deployed to each node as a privileged DaemonSet. It uses in-kernel BPF helper programs to monitor events mainly related to syscalls from userspace programs in a pod. The BPF 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 BPF programs are and how Inspektor Gadget uses them is briefly explained here:

    Further Reading


    How to install.


    Understand how everything comes together.


    Kernel requirements per gadget.

    Gadget specs

    Reference documentation for the existing gadgets.


    Quick guides showing the capability and use cases of gadgets.

    Custom Trace Resource

    Basic usage of the Trace resource


    How to use the local-gadget tool.


    How to contribute to Inspektor Gadget.

    Trace CRD schema reference (group

    Trace is the Schema for the traces API