3scale-ops / prometheus-exporter-operator

Operator to centralize the setup of 3rd party prometheus exporters on Kubernetes/OpenShift, with a collection of grafana dashboards
Apache License 2.0
43 stars 15 forks source link
blackbox cloudwatch elasticsearch exporters grafana kubernetes manticore memcached monitoring mysql openshift operator postgresql prometheus redis sendgrid sphinx

Prometheus Exporter Operator

Prometheus Exporter Operator

test build catalog release license

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.

Current status

Operator is available at OperatorHub.io (on both Kubernetes/OpenShift OLM catalogs)

Requirements

Documentation

GrafanaDashboards

GrafanaDashboards management is included in the operator:

Memcached example dashboard

Example Memcached Dashboard

Redis example dashboard

Example Redis Dashboard

MySQL example dashboard

Example MySQL Dashboard

PostgreSQL example dashboard

Example PostgreSQL Dashboard

Sphinx example dashboard

Example Sphinx Dashboard

Manticore example dashboard

Example Manticore Dashboard

Elasticsearch example dashboard

Example Elasticsearch Dashboard

AWS CloudWatch example dashboard

Example AWS Cloudwatch Dashboard

Blackbox probe example dashboard

Example Blackbox Probe Dashboard

Sendgrid example dashboard

Example Sendgrid Dashboard

PrometheusRules

PrometheusRules 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.

Contributing

You can contribute by:

All bugs, tasks or enhancements are tracked as GitHub issues.

License

Prometheus Exporter Operator is under Apache 2.0 license. See the LICENSE file for details.