The OpenTelemetry Collector, when configured with a Prometheus receiver, provides an integration with MinIO to scrape Prometheus metrics. The Collector uses the Prometheus Receiver to fetch metrics from the configured path in the MinIO configuration file. From there, the metrics are processed and exported to Cloud Observability.
To complete the integration, you will:
You’ve configured the Collector to export metric data to Cloud Observability.
You need to configure MinIO to use the Prometheus exporter.
Export the following environment variable:
1
export MINIO_PROMETHEUS_AUTH_TYPE=public
For more details about using MinIO with the Prometheus exporter, see the official MinIO documentation.
In the Collector configuration file, configure the Prometheus receiver to use the MinIO Prometheus endpoint as a scrape target.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
receivers:
prometheus:
config:
scrape_configs:
- job_name: 'minio-job'
scrape_interval: 5s
metrics_path: '/minio/v2/metrics/cluster'
params:
format: [ 'prometheus' ]
scheme: 'http'
tls_config:
insecure_skip_verify: true
static_configs:
# Define list of your servers here
- targets: [ 'minio:9000' ]
The OpenTelemetry repo’s README provides additional details about Prometheus receiver configuration.
More details about the Prometheus scrape configuration can be found here.
Once the MinIO receiver is configured, enable it by adding it to one or more pipelines as described in the Collector configuration documentation.
You can validate that the metrics are reporting to Cloud Observability from the Metric details section of the Settings page.
In Cloud Observability, click Settings > Metric details.
Search for MinIO metric names.
See the official MinIO docs for a complete list of emitted metrics.
If needed, click on the metric to edit the description and how the units are displayed in Cloud Observability.
You can create a pre-built dashboard for this integration from the Dashboard list view. Or use the Cloud Observability Terraform Provider to create a dashboard.
For a more complete example that’s ready to run, see the MinIO integration in Cloud Observability OpenTelemetry Examples.
Updated Dec 7, 2022