This project's goal is to provide a simple Prometheus exporter, which exposes metrics about outdated and deprecated Helm charts. It uses nova, a tool that scans a given Kubernetes cluster for installed Helm charts. It searches on all known Helm repositories if any updated version is available or if the current version of the chart is deprected.
Once a week - or according to the schedule of your Kubernetes cronjob
-, a Kubernetes Job launches a scan with nova, then, it updates a ConfigMap on which upon the Prometheus exporter is based.
Documentation is available here.
- A kubernetes cluster
- Helm v3 or higher
- A prometheus cluster
- Add a new Helm repository
helm repo add helm-deprecated-exporter https://leraymy.github.io/helm-deprecated-exporter/
- Refresh the repository information
helm repo update
- Search for all available charts in this repository
helm search repo helm-deprecated-exporter --versions
Or list the latest development/unstable versions
helm search repo helm-deprecated-exporter --versions
The configuration is done via values.yaml
and for complete details, you should refer to the repository.
To install the helm-deprecated-exporter chart:
helm upgrade --install --namespace helm-deprecated --create-namespace helm-deprecated helm-deprecated-exporter/helm-deprecated-exporter -f values.yaml
To uninstall the chart:
helm uninstall --namespace helm-deprecated helm-deprecated
This gauge lets you know if the installed version of your helm chart is outdated (= 1.0
) or not (= 0.0
).
helm_outdated{chart_name="argo-cd",installed_version="4.5.4",latest_version="5.14.3",namespace="argocd",release="argo-cd"} 1.0
This gauge lets you know if the installed version of your helm chart is deprecated (= 1.0
) or not (= 0.0
).
helm_deprecated{chart_name="kube-prometheus-stack",installed_version="42.0.0",latest_version="42.1.0",namespace="monitoring-system",release="prometheus"} 0.0