Healthcheck API
MinIO 暴露了用于探测节点运行时间和集群状态的未认证端点高可用性用于简单的健康检查。这些 端点返回一个HTTP状态码,指示底层 资源是否健康或满足读/写仲裁。MinIO通过这些端点 不暴露任何其他数据。
节点活跃度
使用以下端点测试 MinIO 服务器是否在线:
curl -I https://minio.example.net:9000/minio/health/live
替换https://minio.example.net:9000使用 MinIO 服务器的 DNS 主机名进行检查。
响应代码为200 OK表示MinIO服务器在线且功能正常。任何其他HTTP状态码均表示访问服务器时出现问题,例如瞬时网络故障或可能的服务中断。
健康检查探针本身无法确定 MinIO 服务器是否离线。
实际上,该探针用于判断当前主机是否能够访问该服务器。
建议配置 Prometheus警报使用minio_cluster_health_nodes_offline_countformetrics v3 or minio_cluster_nodes_offline_totalformetrics v2检测一个或多个 MinIO 节点是否离线。
集群写入仲裁
使用以下端点测试 MinIO 集群是否具有写入仲裁:
curl -I https://minio.example.net:9000/minio/health/cluster
替换https://minio.example.net:9000使用 MinIO 集群中节点的 DNS 主机名
进行检查。对于使用负载均衡器管理
传入连接的集群,请指定负载均衡器的主机名。
响应代码为200 OK表示 MinIO 集群有
足够的 MinIO 服务器在线以满足写入仲裁。响应码为503 Service Unavailable表示集群当前没有写入法定人数。
健康检查探针本身无法确定 MinIO 服务器是否离线或正常处理写入操作 - 它只能判断是否有足够的 MinIO 服务器在线以满足基于配置的写入仲裁要求。擦除码奇偶校验考虑配置 Prometheus警报使用以下指标之一来检测 MinIO 集群中的潜在问题或错误:
minio_cluster_nodes_offline_total如果有一个或多个 MinIO 节点离线则发出警报。minio_node_drive_free_bytes当集群可用驱动器空间不足时发出警报。
Cluster Read Quorum
使用以下端点测试 MinIO 集群是否具有读取仲裁:
curl -I https://minio.example.net:9000/minio/health/cluster/read
替换https://minio.example.net:9000使用 MinIO 集群中节点的 DNS 主机名
进行检查。对于使用负载均衡器管理
传入连接的集群,请指定负载均衡器的主机名。
响应代码为200 OK表示 MinIO 集群有
足够的 MinIO 服务器在线以满足读取仲裁。响应代码为503 Service Unavailable表示集群当前没有读取法定人数。
健康检查探针本身无法确定 MinIO 服务器是否离线或正在正常处理读取操作——它只能判断是否有足够数量的 MinIO 服务器在线以满足基于配置的读取仲裁要求。擦除码奇偶校验考虑配置 Prometheus警报使用minio_cluster_nodes_offline_total用于检测一个或多个
MinIO 节点是否离线的指标。
集群维护检查
使用以下端点测试MinIO集群是否能够同时维持读取和写如果指定的 MinIO 服务器因维护而停机:
curl -I https://minio.example.net:9000/minio/health/cluster?maintenance=true
替换https://minio.example.net:9000使用 MinIO 集群中节点的 DNS 主机名
进行检查。对于使用负载均衡器管理
传入连接的集群,请指定负载均衡器的主机名。
响应代码为200 OK表示 MinIO 集群有
足够的 MinIO 服务器在线以满足写入仲裁。响应码为412 Precondition Failed表示如果 MinIO 服务器离线,集群将失去仲裁。
健康检查探针本身无法确定 MinIO 服务器是否离线 - 它只能判断在将节点下线进行维护后,是否有足够的 MinIO 服务器保持在线以满足基于配置的读写仲裁要求。擦除码奇偶校验考虑配置 Prometheus警报使用minio_cluster_nodes_offline_total用于检测一个或多个
MinIO 节点是否离线的指标。