Kubernetes memory, explained

See what is really consuming Pod memory.

Kubernetes tells you memory is high. KubeMemLens separates the observed charge into application memory, file cache, shmem and residual signals so you can investigate why.

v1.0.0-rc.1 · Public prerelease · Linux and cgroup v2 · Disposable or authorised clusters only · Stable v1 not published

kubectl memlens tuiread-only evidence
KubeMemLens terminal interface showing Pod memory composition, risk order and cgroup signals
Real KubeMemLens TUI capture using synthetic cluster names.Tap the image to inspect it at full size.

01 · Composition

A single memory number is not a diagnosis.

kubectl top can tell you that memory is high. It cannot tell you whether the charge comes from application memory, filesystem cache, tmpfs, pressure or another cgroup signal.

Repository sample · cache-heavy

Total observed charge4.10 GiB
Anonymous memory
1.20 GiB
File cache
2.51 GiB
Shmem / tmpfs
90.00 MiB
Residual / other
307.20 MiB
Diagnosiscache-heavy
Severityinfo
Confidencemedium

02 · Workflow

From signal to evidence.

Stay in the terminal and move through the investigation with read-only commands. KubeMemLens reports evidence and caveats; it does not mutate workloads.

Explore the CLI
  1. 01

    Find

    kubectl memlens top pods -A --sort-by cache

    Bring the Pods with the strongest memory signals to the top.

  2. 02

    Explain

    kubectl memlens explain pod api-123 -n production

    Inspect composition, limits, pressure and the evidence behind the diagnosis.

  3. 03

    Preserve

    kubectl memlens capture -n production --pod api-123 --include-history -o incident.json

    Write a redacted incident capture that you can review and compare.

03 · Evidence

Claims with receipts.

Qualification is version-bound and published with its limits. Provider records cover their named artefacts and environments. The public RC has its own signed release evidence.

Provider recordsGKE Standard · EKS managed nodes · self-managed containerd and CRI-OProvider evidence ↗
Local scale record5,000 containers · 100 Pods · 30 minutes · kind v1.35.5Scale evidence ↗

Exact supported and unsupported combinations are maintained in the compatibility contract.

Start here

Start with a disposable cluster.

Install the public RC on a disposable cluster, inspect the evidence, then decide whether to evaluate it in an explicitly authorised environment. Stable v1 is not published.

helm upgrade --install kube-memlens \
  oci://ghcr.io/danushkastanley/candidates/1.0.0-rc.1/charts/kube-memlens \
  --version 1.0.0 \
  --namespace kube-memlens \
  --create-namespace \
  --set-string image.repository=ghcr.io/danushkastanley/candidates/1.0.0-rc.1/kube-memlens \
  --set-string image.digest=sha256:a5963f8bb8e68359cd3648cf9c6064309772b3794a5bf51547ff314ba559e809