etcd-version-monitor
This is a tool for exporting etcd metrics and supplementing them with etcd
server binary version and cluster version. These metrics are in
prometheus format and can be scraped by a prometheus server.
The metrics are exposed at the http://localhost:9101/metrics endpoint.
For etcd 3.1+, the
go-grpc-prometheus
metrics format, which backward incompatibly replaces the 3.0 legacy grpc metric
format, is exposed in both the 3.1 format and in the 3.0. This preserves
backward compatibility.
For etcd 3.1+, the --metrics=extensive
must be set on etcd for grpc request
latency metrics (etcd_grpc_unary_requests_duration_seconds
) to be exposed.
RUNNING THE TOOL
To run this tool as a docker container:
- make build
- docker run --net=host -i -t staging-k8s.gcr.io/etcd-version-monitor:0.1.3 /etcd-version-monitor
To run this as a pod on the kubernetes cluster:
- Place the 'etcd-version-monitor.yaml' in the manifests directory of
kubelet on the master machine.
Note: This tool has to run on the same machine as etcd, as communication
with etcd is over localhost.
VERIFYING THE TOOL