MinIO监控指南

官方文档地址:http://docs.minio.org.cn/docs/master/minio-monitoring-guide

MinIO服务器通过端点公开监视数据。监视工具可以从这些端点中选择数据。

健康检查探针

MinIO服务器具有两个与运行状况检查相关的未经身份验证的端点,一个活动性探针(指示服务器是否工作正常),一个就绪性探针(指示服务器是否由于重负载而未接受连接)。

  • 活力探针: /minio/health/live
  • 就绪探针: /minio/health/ready

Prometheus 探测

MinIO服务器在单个端点上公开与Prometheus兼容的数据。默认情况下,对端点进行身份验证。

  • Prometheus 数据可在 /minio/prometheus/metrics

要使用此端点,请设置Prometheus以从该端点抓取数据。

使用Prometheus监控MinIO服务器

MinIO默认情况下将Prometheus兼容数据作为授权端点导出/minio/prometheus/metrics。希望监视其MinIO实例的用户可以指向Prometheus配置,以从该终结点抓取数据。

为Prometheus指标配置身份验证类型

MinIO支持Prometheus jwt或两种身份验证模式public,默认情况下,MinIO以jwt mode 运行。要允许对prometheus度量标准不进行身份验证就可以进行公共访问,请按如下所示设置环境。

export MINIO_PROMETHEUS_AUTH_TYPE="public"
minio server ~/test

经过身份验证的Prometheus配置

MinIO中的Prometheus端点默认需要身份验证。Prometheus支持使用承载令牌方法对Prometheus抓取请求进行身份验证,并使用mc生成的默认Prometheus配置覆盖默认的Prometheus配置。要为别名生成Prometheus配置,请使用mc,如下所示mc admin prometheus generate

该命令将生成scrape_configs prometheus.yml 的部分,如下所示:

scrape_configs:
- job_name: minio-job
  bearer_token: <secret>
  metrics_path: /minio/prometheus/metrics
  scheme: http
  static_configs:
  - targets: ['localhost:9000']

Public Prometheus配置

如果Prometheus端点身份验证类型设置为public。遵循prometheus的配置足以开始从MinIO抓取指标数据。

scrape_configs:
- job_name: minio-job
  metrics_path: /minio/prometheus/metrics
  scheme: http
  static_configs:
  - targets: ['localhost:9000']

scrape_configs 更新部分prometheus.yml

要授权每个刮取请求,请将生成的scrape_configs部分复制并粘贴到prometheus.yml中,然后重新启动Prometheus服务。

MinIO公开的指标列表

MinIO服务器在/ minio / prometheus / metrics端点上公开以下指标。 所有这些都可以通过Prometheus仪表板进行访问。 演示服务器的https://play.min.io:9000/minio/prometheus/metrics 中提供了暴露指标的完整列表及其定义。

这些是将在之后生效的新指标集RELEASE.2019-10-16*。下面列出了此更新中的一些关键更改。 -指标绑定到各个节点,并且不在群集范围内。集群中的每个节点都将公开自己的指标。 -添加了涵盖s3和节点间流量统计信息的其他指标。 -记录http统计信息和延迟的度量标准被标记为其各自的API(putobject,getobject等)。 -磁盘使用情况指标已分发并标记到相应的磁盘路径。

指标列表及其定义如下。(注意:这里的实例是一个MinIO节点)

  • 标准go运行时指标的前缀 go_
  • 流程级别指标以开头 process_
  • prometheus 抓取以开头的指标 promhttp_
  • disk_storage_used : 磁盘使用的磁盘空间。
  • disk_storage_available: 磁盘上剩余的可用磁盘空间。
  • disk_storage_total: 磁盘上的总磁盘空间。
  • minio_disks_offline: 当前MinIO实例中的脱机磁盘总数。
  • minio_disks_total: 当前MinIO实例中的磁盘总数。
  • s3_requests_total: 当前MinIO实例中s3请求的总数。
  • s3_errors_total: 当前MinIO实例中s3请求中的错误总数。
  • s3_requests_current: 当前MinIO实例中活动s3请求的总数。
  • internode_rx_bytes_total: 当前MinIO服务器实例接收到的节点间字节总数。
  • internode_tx_bytes_total: 当前MinIO服务器实例发送到其他节点的字节总数。
  • s3_rx_bytes_total: 当前MinIO服务器实例接收的s3字节总数。
  • s3_tx_bytes_total: 当前MinIO服务器实例发送的s3字节总数。
  • minio_version_info: 具有提交ID的当前MinIO版本。
  • s3_ttfb_seconds: 保存请求的延迟信息的直方图。

缓存特定指标

启用了磁盘缓存的MinIO Gateway实例公开了与缓存相关的指标。

  • cache_data_served:cache_data_served:从缓存提供的总字节数。
  • cache_hits_total:cache_hits_total:缓存命中总数。
  • cache_misses_total:cache_misses_total:缓存未命中总数。

MinIO自愈指标 - self_heal_*

MinIO 仅针对擦除代码部署公开与自我修复相关的指标。这些度量标准在网关或单节点单驱动器部署中不可用。请注意,只有在MinIO服务器上发生相关事件时,才会公开这些指标。

  • self_heal_time_since_last_activity:自上一次自我修复相关活动以来经过的时间。
  • self_heal_objects_scanned:在当前运行中由自愈线程扫描的对象数。重新开始自我修复运行时,它将重置。这用扫描的对象类型标记。
  • self_heal_objects_healed: 当前运行中通过自愈线程修复的对象数。重新开始自我修复运行时,它将重置。这用扫描的对象类型标记。
  • self_heal_objects_heal_failed:当前运行中自愈失败的对象数。重新开始自我修复运行时,它将重置。这被标记为磁盘状态及其端点。
posted @ 2022-03-09 17:54  哈喽哈喽111111  阅读(2279)  评论(0编辑  收藏  举报