2023-12-13    2023-12-13    643 字  2 分钟

MinIO配置

minio自身提供了Prometheus监控的指标数据,分为两种形式获取:

  • 开放形式获取(不需要任何认证)
  • 需要通过认证获取

通常我们会采用通过认证的方式获取监控数据。

查看目前的别名信息,mc命令为minio的客户端,若没有此命令,请自行安装。

1
mc alias list

增加一个prometheus别名,http://minio.snoopyops.osaminio9000端口所对应的地址,请根据自己的环境进行修改。

1
2
3
4
mc alias set prometheus http://minio.snoopyops.osa
Enter Access Key: minio用户名
Enter Secret Key: minio密码
Added `prometheus` successfully.

再次查看别名信息,已经添加了名为prometheus的别名。

1
2
3
4
5
6
7
8
mc alias list

prometheus
  URL       : http://minio.snoopyops.osa
  AccessKey : xxxx
  SecretKey : 29xxxxxx
  API       : s3v4
  Path      : auto

prometheus别名生产prometheus配置文件。后面的prometheus为别名,与上文是对应的。

1
2
3
4
5
6
7
8
9
mc admin prometheus generate prometheus

scrape_configs:
- job_name: minio-job
  bearer_token: eyJhbGxxxx.eyxxxx.xxx-xx
  metrics_path: /minio/v2/metrics/cluster
  scheme: http
  static_configs:
  - targets: [minio.snoopyops.osa]

验证生成的token,看是否可以获取到监控指标。

1
2
3
curl -v -sSL -H 'Authorization: Bearer 你上面申请的token' http://minio.snoopyops.osa/minio/v2/metrics/cluster
示例:
curl -v -sSL -H 'Authorization: Bearer eyJhbGxxxx.eyxxxx.xxx-xx' http://minio.snoopyops.osa/minio/v2/metrics/cluster

Prometheus

Prometheus配置直接复制上文生成的配置即可。

1
2
3
4
5
6
- job_name: minio-job
  bearer_token: eyJhbGxxxx.eyxxxx.xxx-xx
  metrics_path: /minio/v2/metrics/cluster
  scheme: http
  static_configs:
  - targets: [minio.snoopyops.osa]

告警规则配置。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
- alert: MinIONodesOffline
  expr: avg_over_time(minio_cluster_nodes_offline_total{job="minio"}[5m]) > 0
  for: 10m
  labels:
    severity: critical
  annotations:
    summary: "Node down in MinIO deployment"
    description: "Node(s) in cluster {{ $labels.instance }} offline for more than 5 minutes"
- alert: MinIODisksOffline
  expr: avg_over_time(minio_node_drive_offline_total{job="minio"}[5m]) > 0
  for: 10m
  labels:
    severity: critical
  annotations:
    summary: "Disks down in MinIO deployment"
    description: "Disks(s) in cluster {{ $labels.instance }} offline for more than 5 minutes"

重载Prometheus

1
curl -XPOST https://prometheus地址/-/reload

Grafana

Grafana模版ID13502

最终效果如图:

image-20231211181302364


image-20231028232834657