Running Kube-Prometheus-Stack in Production

The default values.yaml gets kube-prometheus-stack running, but it is not a production configuration on its own. Persistent volumes, resource requests and limits, multiple Prometheus replicas for high availability, and a tested upgrade process all need to be in place before this stack is monitoring anything that matters.

This category brings together production-readiness guidance: configuring durable storage so metrics and dashboards survive pod restarts, running Prometheus and Alertmanager with pod anti-affinity across failure domains, and safely upgrading the chart without losing historical data or alert configuration.

Frequently Asked Questions

Is the default kube-prometheus-stack install production-ready?

Not quite — persistent storage, resource limits, and Alertmanager routing to a real notification channel all need to be configured first; the defaults are tuned for fast setup, not production safety.

How many Prometheus replicas should run in production?

At least two, with pod anti-affinity across nodes, for high availability — a single replica means a node failure takes monitoring down along with whatever it was watching.