Wavefront provides a comprehensive solution for monitoring Kubernetes. This integration uses the Wavefront Collector for Kubernetes to collect detailed metrics from Kubernetes clusters.
The collector makes it easy for you to monitor and manage your Kubernetes environment:
- Collects real-time metrics from all layers of a Kubernetes environment (clusters, nodes, pods, containers and the Kubernetes control plane).
- Supports plugins such as Prometheus, Telegraf and Systemd enabling you to collect metrics from various workloads.
- Auto discovery of pods and services based on annotation and configuration.
- Daemonset mode for high scalability with leader election for monitoring cluster-level resources.
- Rich filtering support.
- Auto reload of configuration changes.
- Internal metrics for tracking the collector health and source of your Kubernetes metrics.
In addition to setting up the metrics flow, this integration also installs dashboards:
- Kubernetes: Detailed health of your infrastructure and workloads.
- Kubernetes Metrics by Namespace: Details of your pods/containers broken down by namespace.
- Kube-state metrics: State of Kubernetes objects such as pods, services, deployments and daemonsets.
- Kubernetes Collector Metrics: Internal stats of the Collector.
Here’s a preview of some of the pod charts in the Kubernetes dashboard:
Here’s a preview of some of the charts from kube-state-metrics dashboard:
Note: This integration provides updated setup instructions and dashboard for Kubernetes. For the previous setup instructions, see the Kubernetes (Archived) integration in the Archived section.
The collector supports monitoring of Openshift clusters:
- To monitor Openshift Origin 3.9 follow the steps in Installation and Configuration on OpenShift.
- To monitor Openshift Enterprise 3.11 follow the steps in Installation and Configuration of Wavefront Collector Operator on Openshift
Follow the instructions below to set up Kubernetes monitoring.
Step 1. Deploy a Wavefront Proxy in Kubernetes
- Download wavefront.yaml to your system.
- Edit the file and set
kubectl create -f </path/to>/wavefront.yamlto deploy the proxy.
The Wavefront proxy and a
wavefront-proxy service should now be running in Kubernetes.
Step 2. Deploy the kube-state-metrics Service
- Download kube-state.yaml to your system.
kubectl create -f </path/to>/kube-state.yaml.
kube-state-metrics service should now be running on your cluster.
Step 3. Deploy Wavefront Collector for Kubernetes
- Download the following deployment files to a directory named
wavefront-collector-diron your system:
clusterName=k8s-clusterto uniquely identify your Kubernetes cluster.
- If RBAC is disabled in your Kubernetes cluster, comment out
kubectl create -f </path/to/wavefront-collector-dir>/to deploy the collector on your cluster.
To verify the collector is deployed, run
kubectl get pods -n wavefront-collector.
If you do not see metrics in the Kubernetes dashboard, check the logs from the collector and proxy pods.
Horizontal Pod Autoscaling (HPA)
Wavefront provides a HPA adapter for autoscaling your pods based on any metrics in Wavefront. See wavefront-kubernetes-adapter for details.