Skip to main content
Reference for the compute contention feature. Operational steps are in the guide.

Helm values

Thresholds are evaluated by the broker, so a change takes effect on the next findings poll without a controller restart.

Environment variables

Rendered by the chart; listed here for operators who run the binaries another way. Controller (kguardian-controller DaemonSet) When compute.enabled is false the chart renders only COMPUTE_ENABLED=false and no /sys/fs/cgroup mount. Broker (kguardian-broker Deployment) — rendered regardless of compute.enabled, so a cluster that turns the feature off still prunes what it collected.

Pod annotation

Broker endpoints

All read endpoints return JSON and are metered by the broker’s read budget. The two POSTs are for the controller. When broker.auth.enabled is set, every broker endpoint — these included — requires the bearer token; the auth middleware is global, not per route.

Finding

Findings response

History row

GET /compute/history/{pod_uid} rows carry resolution_secs (60 or 300); gauges are stored as _avg / _max / _last columns (cpu_usage_millis, mem_current, mem_working_set, cpu_psi_some10, cpu_psi_full10, mem_psi_some10, mem_psi_full10), counters (cpu_nr_periods, cpu_nr_throttled, cpu_throttled_usec, mem_events_high, mem_events_max, mem_oom_kill, mem_refault, mem_pgmajfault, runq_count) are sums over the row’s interval, and runq_hist is the 24-bucket log2 latency histogram (bucket b is [2^b, 2^(b+1)) µs; bucket 23 is overflow and is never reported as a finite maximum).