The Kubernetes Metrics Collector on GitHub enables monitoring Kubernetes clusters and sending metrics to VMware Aria Operations for Applications. Much of the doc for the project is in the docs folder on GitHub. This page has some special tips and tricks to help you create the user experience you’re after.
What Is the Kubernetes Metrics Collector?
The Collector is an agent that you deploy within a Kubernetes cluster as a DaemonSet. This agent collects metrics about a Kubernetes cluster and sends them to the Wavefront service. You can visualize these metrics using pre-built dashboards that help you monitor your Kubernetes clusters.
Do I Have to Deploy the Collector on Every Kubernetes Cluster?
Yes, deploy the Collector on each of your Kubernetes clusters.
How Can I Filter Metric Data?
You can filter metrics data during installation or later using proxy preprocessor rules.
Filter During Installation
During the Helm installation, you can pass in a
values.yaml as a parameter.
values.yaml you can:
Filter Using Proxy
Filter using a Wavefront proxy preprocessor rule. You can use point filtering/altering rules and span filtering/altering rules. The proxy deals with data coming from Kubernetes exactly the same way as with data from other data sources.
How Do I Monitor Prometheus Metric Endpoints?
Many Kubernetes components and applications expose metrics in the Prometheus format via HTTP endpoints. The Collector natively supports discovering such endpoints and collecting metrics from them. The Collector listens for the addition of pods within a Kubernetes cluster, and can automatically start collecting the Prometheus metrics from pods by:
- Adding specific annotations on a pod to inform the Collector to start collecting metrics from it.
- Configuring static discovery rules to identify pods by labels, namespaces or image names and information on how to collect metrics from the pods.
See the auto discovery documentation for details.
How Do I Monitor Popular Third-Party Applications?
The Collector supports monitoring over 20 popular applications such as Redis, Memcached, Postgres, MongoDB, etc. Use static discovery rules to monitor these applications.