Skip to content

fix(kyverno): reports/admission leaders hot-loop ~25 no-op reconciles/s, inflating VPA and ratcheting autoscale nodes #2668

Description

@devantler

🤖 Generated by the Daily AI Engineer

Evidence (measured live 2026-07-16 ~23:1x-23:4xZ)

  • In both the kyverno admission and reports deployments, exactly the LEADER replica burns ~1 CPU steadily while its standby idles at 1-50m (admission 1079m vs 50m; reports 929m vs 3m).
  • The reports leader's counters: aggregate-report-controller at 23.4 reconciles/s live (1.67M cumulative), background-scan-controller 4.7/s live (2.04M cumulative) — on a quiet cluster: 0 policyreport writes, 0 ephemeralreport events, and 0 kubescape profile events in 12s watch samples; apiserver-side webhook traffic ~0.3/s.
  • So the reconciles are no-op recomputation, not real work. Restarting both leaders elected new leaders that resumed the same burn ⇒ structural, not stuck state.
  • Consequence: the uncapped VPA sized both pairs for the pathology (1836m/1168m requests ⇒ ~6.2 cores), tipping the fleet past the static workers — the capacity half of the 2026-07-16 snapshot-slot deadlock. Mitigated by fix(vpa): cap kyverno controller CPU below the leader hot-loop level #2667 (CPU caps); this issue is the root-cause hunt.

Expected behaviour

On a quiet cluster the reports controller reconciles at near-zero; kyverno pairs fit comfortably in the static-worker budget without VPA caps doing load-bearing work.

Direction

Identify what feeds the aggregate-report/background-scan workqueues at ~25/s with no object churn (suspects: metadata-informer resync storms from a matched high-churn kind; a requeue-forever item; a kyverno bug worth an upstream issue — check kyverno releases/issues for known aggregate-controller loop fixes and consider a version bump first).

Acceptance criteria

Rough size: M (investigation-heavy).

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    Fields

    No fields configured for Bug.

    Projects

    Status
    📥 Backlog

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions