A Kubernetes Operator based on the Operator SDK to centralize the setup of 3rd party prometheus exporters on Kubernetes/OpenShift, with a collection of grafana dashboards.
By just providing a few parameters like dbHost or dbPort (operator manage the container image, port, argument, command, volumes... and also prometheus ServiceMonitor
and GrafanaDashboard
k8s objects), you can setup different prometheus exporters to monitor:
Current prometheus exporters types
supported, managed by same prometheus-exporter-operator:
The operator manages the lifecycle of the following objects:
NOTE >
Some exporters need some extra objects to be previously manually created in order to work (manual objects names need to be specified on required CR fields). This extra needed objects includes Secrets (credentials) or Configmaps (configuration files) on specific formats. Examples to help you create these extra objects are provided on examples directory for all exporter types.
>
If you modify the content of these extra needed objects (Secrets/Configmaps), exporters won't load them automatically, so you need to force a new pod creation by for example deleting the running pod.
Operator is available at OperatorHub.io (on both Kubernetes/OpenShift OLM catalogs)
GrafanaDashboards
management is included in the operator:
GrafanaDashboard
(optional, enabled by default grafanaDashboard.enabled: true
) is created, but actually operator manages a single dashboard type per Namespace (not per CR)CR_NAME
as the filter of all possible dashboards of every type (for example staging-system-memcached
)GrafanaDashboard
management get its own CRD separate from PrometheusExporter
CRD (so you could have N PrometheusExporter CRs, and also an additonal single Dashboard CR per exporter typePrometheusRules
management is NOT included in the operator (at least by the moment), because it depends on:
However, some examples of prometheus rules can be found at prometheus-rules directory.
You can contribute by:
All bugs, tasks or enhancements are tracked as GitHub issues.
Prometheus Exporter Operator is under Apache 2.0 license. See the LICENSE file for details.