This page describes methods for collecting Kubernetes logs and metrics. You can employ these methods in self-managed Kubernetes environments or those managed by container management services like AWS EKS and GCP GKE.
Support for logs and metrics
The following table summarizes what you can collect with each collection method.
|Kubernetes FluentD Plugin||X|
|Heapster and Sumo Collector||X|
The sections below describe methods for collecting Kubernetes logs and metrics.
Kubernetes FluentD plugin
In this method, you set up a Sumo hosted collector with an HTTP source, and install Sumo’s Kubernetes FluentD Plugin in each of your Kubernetes clusters. The plugin runs as a Daemonset inside the cluster; it sends Kubernetes orchestration logs and application logs from your containers to the HTTP source. You don’t have to install a collector on your Kubernetes hosts or reconfigure them in any way. The plugin is highly configurable, as described in Kubernetes FluentD Plugin.
If you use Helm, you can use the Sumo Logic FluentD Helm Chart to install the FluentD plugin.
Heapster and Sumo hosted collector
In this method, you set up Heapster and a Sumo hosted collector with an HTTP source, running as a pod with a Graphite source to collect metrics from your Kubernetes cluster. The procedure is described in the Collect Metrics for Kubernetes with Heapster section of the documentation for Sumo’s Kubernetes app. No changes are required to your Kubernetes hosts, as you run Heapster and the Sumo collector inside your Kubernetes cluster. This will deliver pod metrics from your Kubernetes cluster to Sumo Logic.
The following table describes the collection methods that are supported by different Kubernetes platforms.
|Platform||Kubernetes FluentD Plugin||Heapster + Sumo Collector|
|Kubernetes (not managed)||X||X|
* OpenShift requires additional configuration for FluentD, documented in Kubernetes FluentD Plugin. Note also that Heapster support varies by version of OpenShift.
If you use a managed service, note:
- If the managed service does not let you schedule pods on the Master, then you will not be able to collect data from the master, including orchestration logs. Each vendor may have a different approach for collecting orchestration, or may not offer such support.
- GCP GKE has some components that write to StackDriver. In addition to the collection methods for GCP GKE noted above, you can also collect from GCP GKE using Sumo’s Google Cloud Platform Source.
- AWS EKS does not currently expose the orchestration logs.
- Sumo offers several Kubernetes apps, listed in the section below. When installing an app, make sure that it supports the managed service you use. In some cases, the app may need to be altered, depending on the managed service provider.