Observability is a requirement for modern cloud-native applications, but it doesn't need to be highly differentiated.
We need to capture logs and metrics from our applications and control plane, and we need to be able to query and visualize them. Because these requirements are so universal it is possible to completely automate the setup of these systems.
The CNDI platform integrates Prometheus, Loki, Promtail, and Grafana to provide observability out-of-the-box in every cluster.
It's powered by 3 charts:
- kube-prometheus-stack for Prometheus and Grafana,
- promtail for log collection
- loki for log storage
and they're all configured and integrated together for you.
The only thing to (optionally) configure is the domain name you want CNDI to use for Grafana.
# basic cndi_config.yaml
project_name: my-project
provider: ...
distribution: ...
applications: { ... }
cluster_manifests: { ... }
infrastructure:
cndi:
nodes: { ... }
external_dns: { ... }
observability:
grafana:
hostname: my-dashboards.example.com
Like all the other "Core Applications" in CNDI, the observability stack can be
configured with custom Helm Values by adding them to your cndi_config.yaml
, or
you can even disable it entirely.