Kubernetes Observability Essentials: Logs, Metrics, and Simple Dashboards
Track what your cluster is doing with kubectl logs, metrics-server, and lightweight dashboards on k3s — no heavy observability stack needed.
Netbay Engineering
Netbay Engineering
On this page
A black-box cluster is a dangerous cluster. On a single node you do not need a sprawling Prometheus-plus-Grafana-Loki deployment to stay oriented. The essentials are three layers: logs for what happened, metrics for how much is happening, and a simple dashboard to glance at. This post walks through each with the tools k3s gives you by default plus one small install.
Layer 1: logs
kubectl logs shows a pod or container's stdout/stderr. For a Deployment, add --tail and an app label to inspect the newest lines. When a pod is unhealthy, describe plus logs usually tells you why.
kubectl logs deploy/api --tail=100
kubectl logs -l app=api --tail=50 -f
kubectl logs deploy/db --previous
kubectl describe pod api-abc123The --previous flag reads logs from the prior incarnation of a restarted container — essential for crash-loop debugging.
Layer 2: metrics with metrics-server
The metrics server feeds kubectl top and powers the HorizontalPodAutoscaler. k3s can enable it via the HelmChartConfig mechanism. Install it with:
kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml
kubectl top nodes
kubectl top pods -AOnce running, top shows live CPU and memory per node and pod.
Layer 3: a simple dashboard
For higher-level views without heavy tooling, the k9s terminal UI is a great fit for a single operator. It is a TUI, not a web dashboard, so it needs no extra storage or services.
sudo snap install k9s
k9s -n production
k9s podsk9s tabs let you move between pods, deployments, services, and logs with keyboard shortcuts.
How the layers fit
A debugging sequence
A reliable habit: check metrics first to see if the node is saturated, then logs to find the error, then describe for events. Concretely:
kubectl top nodes
kubectl top pods
kubectl logs -l app=api --tail=100
kubectl get events --sort-by=.lastTimestampTakeaway
Start with logs, add metrics-server for top, and use a TUI like k9s for navigation — that is enough to run a small cluster confidently without heavy tooling. Get the three commands into daily muscle memory on your k3s box at Netbay, and problems will announce themselves early instead of arriving as surprises — netbayhosts.in.
Keep reading
Follow along on a real VPS
Deploy Linux in under 60 seconds
These guides are written against Ubuntu, Debian, and RHEL-family images — the same ones on NetBay.
Deploy an instance