Monitoring and alerting are your responsibility. 3B does not ship dashboards, alerts, or a metrics stack. Before you put an install in front of users, you enable monitoring on the cluster and page someone when the signals below fire. We document what to watch and the thresholds we recommend; connecting those signals to your tools, and acting on them, stays with you.
This page is the minimum set. The pages that follow give thresholds and the signals to scrape:
What you need on the cluster
Two different components show up in Kubernetes monitoring, and they are not interchangeable.
Metrics Server (metrics.k8s.io) powers kubectl top and CPU-based HorizontalPodAutoscalers. Many managed clusters already run it (GKE and AKS do; EKS needs the add-on). The single-server k3s install includes it. Confirm with kubectl top nodes. If that command fails, install Metrics Server — you will want it before you add an HPA, as described in how and when to scale.
Metrics Server is not an alerting system. It keeps a few minutes of in-memory usage, has no history, and does not know about persistent volume usage or Postgres internals.
A metrics pipeline is what you alarm from: Prometheus, Datadog, CloudWatch Container Insights, or the equivalent your platform team already operates. It should scrape kubelet (for pod CPU, memory, and PVC usage) and, for an in-cluster database, Postgres itself. Page a human from that pipeline; do not page from Metrics Server.
Recommended alarms
Signal | Starting threshold | Why it matters |
Pod CPU on | Sustained above about 80% of the pod’s request | Capacity is exhausted; scale or raise resources. See CPU and memory. |
Pod memory on those services | Sustained above about 80% of the memory limit | The next step is an OOM kill. See CPU and memory. |
Postgres CPU, memory, connections, and its PVC | CPU 80% sustained / 95% spike; memory below 10% free; connections high; disk at 60% | Almost every request hits Postgres. See Postgres. |
Blobstore PVC | 60% full | A full volume stops writes. Growing it takes time. See Blobstore disk. |
Treat missing disk metrics as a problem, not as “all clear.” If kubelet stops reporting PVC usage, you are blind until the volume is already full.
The system overview lists every component. Sizing is where you raise CPU, memory, and volume sizes once an alarm has told you that you are out of headroom.
