kubectl tree is a kubectl plugin that lets you visualize Kubernetes object hierarchies as a tree by following the ownerReferences set on API objects. Instead of manually chasing which ReplicaSet owns which Pods or which higher-level controller is responsible for a given resource, it prints an ASCII tree that shows parent-child relationships at a glance. This is especially useful for understanding how complex workloads like Deployments, StatefulSets, Knative Services, or Agones Fleets fan out into lower-level resources across the cluster. The plugin is written in Go, packaged for easy installation via the krew plugin manager, and exposes flags to control namespace scoping, label selectors, and condition filters so you can narrow what’s shown. It defaults to searching namespaced objects in the same namespace as the root resource, but can also traverse cluster-wide objects when asked.
Features
- Shows Kubernetes owner relationships as an ASCII tree using ownerReferences
- Installs as a kubectl plugin via krew for straightforward setup
- Supports -A flag to search across all namespaces and non-namespaced objects
- Label selector flag -l lets you filter resources shown in the tree
- Condition filtering via --condition-types to highlight readiness or custom states
- Works with many resource types including Deployments, Knative, Agones, and more