cilium-agent and cilium-operator can be configured to serve Prometheus metrics. Prometheus is a pluggable metrics collection
and storage system and can act as a data source for Grafana, a metrics visualization frontend. Unlike some metrics
collectors like statsd, Prometheus requires the collectors to pull metrics from
each source.

To run Cilium with Prometheus metrics enabled, deploy it with the
global.prometheus.enabled=true Helm value set.

All metrics are exported under the cilium Prometheus namespace. When
running and collecting in Kubernetes they will be tagged with a pod name and
namespace.

To expose any metrics, invoke cilium-agent with the
--prometheus-serve-addr option. This option takes a IP:Port pair but
passing an empty IP (e.g. :9090) will bind the server to all available
interfaces (there is usually only one in a container).

cilium-operator can be configured to serve metrics by running with the
option --enable-metrics. By default, the operator will expose metrics on
port 6942, the port can be changed with the option --metrics-address.