mirror of
https://github.com/minio/minio.git
synced 2025-11-08 21:24:55 -05:00
Add top level metrics document to summarize monitoring endpoints (#5923)
Minio server supports healthcheck and prometheus related unauthenticated endpoints. This document summarizes this information in a single place and add links for more detailed documentation if needed.
This commit is contained in:
20
docs/metrics/README.md
Normal file
20
docs/metrics/README.md
Normal file
@@ -0,0 +1,20 @@
|
||||
## Minio Monitoring Guide
|
||||
|
||||
Minio server exposes monitoring data over un-authenticated endpoints so monitoring tools can pick the data without you having to share Minio server credentials. This document lists the monitoring endpoints and relevant documentation.
|
||||
|
||||
### Healthcheck Probe
|
||||
|
||||
Minio server has two healthcheck related endpoints, a liveness probe to indicate if server is working fine and a readiness probe to indicate if server is not accepting connections due to heavy load.
|
||||
|
||||
- Liveness probe available at `/minio/health/live`
|
||||
- Readiness probe available at `/minio/health/ready`
|
||||
|
||||
Read more on how to use these endpoints in [Minio healthcheck guide](./healthcheck/README.md).
|
||||
|
||||
### Prometheus Probe
|
||||
|
||||
Minio server exposes Prometheus compatible data on a single endpoint.
|
||||
|
||||
- Prometheus data available at `/minio/prometheus/metrics`
|
||||
|
||||
To use this endpoint, setup Prometheus to scrape data from this endpoint. Read more on how to use Prometheues to monitor Minio server in [How to monitor Minio server with Prometheus](https://github.com/minio/cookbook/blob/master/docs/how-to-monitor-minio-with-prometheus.md).
|
||||
23
docs/metrics/healthcheck/README.md
Normal file
23
docs/metrics/healthcheck/README.md
Normal file
@@ -0,0 +1,23 @@
|
||||
## Minio Healthcheck
|
||||
|
||||
Minio server exposes two un-authenticated, healthcheck endpoints - liveness probe and readiness probe at `/minio/health/live` and `/minio/health/ready` respectively.
|
||||
|
||||
### Liveness probe
|
||||
|
||||
This probe is used to identify situations where the server is running but may not behave optimally, i.e. sluggish response or corrupt back-end. Such problems can be *only* fixed by a restart.
|
||||
|
||||
Internally, Minio liveness probe handler does a ListBuckets call. If successful, the server returns 200 OK, otherwise 503 Service Unavailable.
|
||||
|
||||
When liveness probe fails, Kubernetes like platforms restart the container.
|
||||
|
||||
### Readiness probe
|
||||
|
||||
This probe is used to identify situations where the server is not ready to accept requests yet. In most cases, such conditions recover in some time.
|
||||
|
||||
Internally, Minio readiness probe handler checks for total go-routines. If the number of go-routines is less than 1000 (threshold), the server returns 200 OK, otherwise 503 Service Unavailable.
|
||||
|
||||
Platforms like Kubernetes *do not* forward traffic to a pod until its readiness probe is successful.
|
||||
|
||||
### Configuration example
|
||||
|
||||
Sample `liveness` and `readiness` probe configuration in a Kubernetes `yaml` file can be found [here](https://github.com/minio/minio/blob/master/docs/orchestration/kubernetes-yaml/minio-standalone-deployment.yaml).
|
||||
Reference in New Issue
Block a user