文档

使用 InfluxDB 进行监控和警报

MinIO 使用 Prometheus 数据模型 发布集群和节点指标。 InfluxDB 支持抓取 MinIO 指标数据以进行监控和警报。

本页面的流程记录以下内容

  • 配置 InfluxDB 服务以抓取和显示来自 MinIO 部署的指标

  • 配置 MinIO 指标的警报

先决条件

此流程需要以下内容

  • 已配置一个或多个 通知端点 的现有 InfluxDB 部署

  • 与 InfluxDB 部署具有网络访问权限的现有 MinIO 部署

  • 您本地主机上的 mc 安装,已配置为 访问 MinIO 部署

配置 InfluxDB 以使用 MinIO 指标进行收集和警报

重要

此流程专门使用 InfluxDB UI 创建抓取端点。

InfluxDB UI 不提供与使用 Telegraf 和相应的 Prometheus 插件 相同级别的配置。具体来说

  • 您无法通过 InfluxDB UI 启用对 MinIO 指标端点的身份验证访问

  • 您无法为收集的指标设置标签(例如 url_tag),用于唯一标识给定 MinIO 部署的指标

配置 Telegraf 不在此流程范围内。您可以使用此流程作为配置 Telegraf 以抓取 MinIO 指标的一般指导。

  1. 配置对 MinIO 指标的公用访问

    将 MinIO 部署中所有节点的 MINIO_PROMETHEUS_AUTH_TYPE 环境变量设置为 "public"。然后,您可以重新启动部署以允许公开访问 MinIO 指标。

    您可以通过尝试 curl 度量指标端点来验证更改。

    curl https://HOSTNAME/minio/v2/metrics/cluster
    

    用您访问 MinIO 部署的负载均衡器或反向代理的 URL 替换 HOSTNAME。您也可以将任何单个节点指定为 HOSTNAME:PORT,除了节点主机名之外,还指定 MinIO 服务器 API 端口。

    响应主体应包含收集的 MinIO 度量指标列表。

  2. 登录 InfluxDB UI 并创建存储桶

    选择您要存储 MinIO 度量指标的 组织

    创建一个 新的存储桶,用于存储 MinIO 部署的度量指标。

  3. 创建新的抓取来源

    创建一个 新的 InfluxDB 抓取器

    指定 MinIO 部署的完整 URL,包括度量指标端点

    https://HOSTNAME/minio/v2/metrics/cluster
    

    用您访问 MinIO 部署的负载均衡器或反向代理的 URL 替换 HOSTNAME。您也可以将任何单个节点指定为 HOSTNAME:PORT,除了节点主机名之外,还指定 MinIO 服务器 API 端口。

  4. 验证数据

    使用 DataExplorer 可视化收集的 MinIO 数据。

    例如,您可以对 minio_cluster_capacity_usable_total_bytesminio_cluster_capacity_usable_free_bytes 设置过滤器,以比较 MinIO 部署上的总可用空间和总空闲空间。

  5. 配置检查

    在 MinIO 度量指标上创建一个 新的检查

    以下示例检查规则提供了 MinIO 部署的警报基线。您可以修改或以其他方式使用这些示例作为构建自己的检查的指导。

    • 创建一个名为 MINIO_NODE_DOWN阈值检查

      minio_cluster_nodes_offline_total 键设置过滤器。

      阈值 设置为当值大于 1 时发出 警告

    • 创建一个名为 MINIO_QUORUM_WARNING阈值检查

      minio_cluster_drive_offline_total 键设置过滤器。

      阈值 设置为当值小于您配置的 擦除码奇偶校验 设置值时发出 严重

      例如,使用 EC:4 的部署应将此值设置为 3

    配置您的 通知端点通知规则,以便每种类型的检查都会触发相应的响应。