Pivotal Container Service Cloud Application Management Containers Kubernetes Metric Analytics vCenter Operations Virtualization Vmware vRealize Operations vRealize Operations Insight Wavefront

A comparative analysis on heath monitoring of Pivotal Container Service(PKS) using VMware Wavefront and vRealize Operations

Contributions from Alka Gupta and Dinesha Sharma

 

VMware Pivotal Container Service (PKS) comes with out-of-the-box integration with VMware Wavefront for real time health monitoring and analytics of your cloud native applications and platform. Pivotal Container Service also readily integrates with VMware vRealize Operations Manager. In this blog, we call out a comparative study on metrics and analytic details provided by vRealize Operations vs Wavefront so developers and platform reliability engineers (PREs) can make the best and appropriate use of both products in their data centers.

Both vRealize Operations and Wavefront are quite distinct in their value proposition for monitoring Pivotal Container Service. vRealize Operations is primarily designed for infrastructure monitoring. With Kubernetes management pack, it provides health status of nodes, namespaces, pods, containers and services.  Wavefront provides complete visibility in real time into each level of Pivotal Container Service clusters, upto the application level, using Heapster and kube-state-metrics.

vRealize Operations 6.7 has introduced  Application monitoring with Wavefront, which is a new capability that allows customers using vRealize Operations 6.7 to begin exploring Wavefront and offer consistent monitoring tools for DevOps – while maintaining visibility and control for the cloud administrator.. With Wavefront and vRealize Operations integration, one can extend vRealize Operations to monitor application specific services.

Table 1.0 below gives a summary of how Wavefront and vRealize Operations complement each other:

 

Wavefront vRealize Operations
Target Users DevOps, Developers, Platform Reliability Engineers Infrastructure Admins, Cloud Admins, Platform Reliability Engineers
Value Proposition Wavefront is specifically built to provide container monitoring at scale with following features:

  • Find leading problem indicators of containerized applications – at any scale – using real-time analytics
  • Improve developers’ and DevOps teams’ productivity with self-serve, customizable, Kubernetes, container and applications dashboards and metrics
  • Proactively detect containerized cloud service resource bottlenecks with intelligent, query-driven alerts
  • Correlate top level application metrics with Kubernetes orchestration metrics, down to the container and resource level
vRealize Operations is an infrastructure operations and monitoring tool for a software defined data center. With VMware vRealize Operations Management Pack for Container Monitoring, it provides the following benefits to virtual administrators:

  • Get complete Kubernetes topology of Namespaces, Clusters, Replica Sets, Nodes, Pods, and Containers for monitoring Kubernetes clusters.
  • The OOTB dashboard  provides troubleshooting insights by highlighting the Key Performance Index and alerts for various objects pertaining to Kubernetes clusters that are monitored.
Deployment Available only as a Software as a Software (SaaS)

 

Deployed as an on premise Software and also available as a SaaS offering.
How does it work? Wavefront’s out-of-the-box integration with Heapster allows metrics to be viewed for all clusters in Kubernetes inclusive of Pivotal Container Service. vRealize Operations requires container monitoring management pack. Further Kubernetes adapter needs to be configured for each cluster instance, to view all the clusters in vRealize Operations dashboard.

Table 1.0

 

Further comparative features analysis summary on Wavefront and vRealize Operations for Kubernetes health monitoring

  • Comprehensive Visibility into Kubernetes platform using Wavefront
    • The Wavefront platform provides Kubernetes and container dashboards, delivering visibility into high-level services and applications as well as granular container metrics. These include
    • Nodes: CPU and memory usage rate per node, bytes received and transfer rate per node, uptime of a nodes and networking errors per node.
    • Namespaces: Pod and container count by namespace, memory usage by namespace.
    • Cluster: Number of nodes, namespace, pods and pod containers && average node CPU and memory usage, cluster memory usage and average node storage usage.
    • Pods: Memory and CPU usage rate by pod, bytes received and transferred rate by pod, memory page faults by pod and networking errors by pod.
    • File system usage for all pod_name against its namespace, nodename and resource_Id can also be viewed.
    • Pod_Containers : Memory and CPU usage by container, memory page faults rate by container, file system usage by container and uptime of containers.
  • Kubernetes dashboard in vRealize Operations:
    • In vRealize Operations Kubernetes dashboard provides view of Kubernetes clusters and its objects, total metrics, alerts and health score.
    • View of node and pod performance, healthy nodes/pods and its properties, view of trend metrics of nodes/pods with respect to CPU and memory usage and disk IO read and write.
    • Toplogy view of a pod associated with other components in a cluster.
    • Topology view of health status of all cluster members with alerts

Detailed Comparative analysis of metrics with Wavefront and vRealize Operations:

 

1. Kubernetes cluster overview(summary)

Kubernetes dashboard lists number of pods, namespaces, nodes, pod containers for the selected cluster. It also displays an overview of memory/CPU/Storage utilization of node and memory usage of the cluster as shown in figure 1, users can click on individual tiles and modify/add Wavefront Query Language to narrow down search against a metric.

 

Figure 1

In contrast to Wavefront, cluster details in vRealize Operations are limited to only the health status summary of the cluster components such as nodes, namespaces, pods, containers and services as shown in Figure 2

Figure 2

 

2. Topological overview of cluster and its components in vRealize Operations

The topological view of cluster and its components can be viewed only in vRealize Operations Kubernetes dashboard. Further alerts and health details of cluster and its components can be viewed by clicking on the respective components as shown in Figure 3. Any failure at the node level can be detected via this feature.

Figure 3

 

3. Node Metrics

Wavefront displays node metrics for all the nodes of a Kubernetes cluster in a single graph as shown in Figure 4. nodes are distinguished by unique colors in the graph. Kubernetes Dashboard in Wavefront displays the following different node metrics: CPU and memory usage rate per node, bytes received and transfer rate per node, uptime of a nodes and networking errors per node. This graphical feature is unique to Wavefront and helps to do comparative analysis of all in the nodes with in a single graph.

Figure 4

Further, Wavefront Kubernetes dashboard has a unique feature called Go Live, where point in time data can be viewed for a given metric as shown in Figure 5.

Figure 5

Further granular view of the nodes can be viewed by hovering over the metrics which is also unique in Wavefront as shown in Figure 6

Figure 6

In vRealize Operations Kubernetes dashboard, after selecting a specific node, only Key node metrics can be viewed.  These metrics include Memory/CPU usage, Disk IO – Read/Write, Availability for the selected Node as shown in figure 7 and figure 8

Figure 7

Figure 8

In contrast to Wavefront, only single node graphical representation can be viewed in vRealize Operations by double clicking on the metrics of Figure 8.

Metric details per node are shown in figure 9

Figure 9

 

4. Pod Metrics

Wavefront displays Kubernetes pod metrics for all the pods of a cluster in a single graph as shown in figure 10, pods are distinguished by unique colors in the graph. Kubernetes Dashboard in Wavefront displays the following different pods metrics: memory and CPU usage rate by pod, bytes received and transferred rate by pod, memory page faults by pod and networking errors by pod; which helps to do comparative analysis of all in the pods in a single graph.  This graphical feature is unique in Wavefront.

Figure 10

Further granular view of pods can be viewed by hovering over the metrics which is also a unique feature in Wavefront as shown in figure 11

Figure 11

On the other hand, only Key node metrics (Memory/CPU usage, Availability, Number of containers) for the selected pod in vRealize Operations can be viewed by selecting the desired node as shown in figure 12 and figure 13.

Figure 12

Figure 13

In contrast to Wavefront , only single pod graphical representation can be viewed in vRealize Operations  by double clicking on the metrics as shown in figure 14

Figure 14

 

5. Namespace Metrics

Kubernetes dashboard in Wavefront displays number of pod/pod containers in a namespace, it also displays the CPU and memory usage of pod/pod containers in a namespace, each namespace is distinguished by unique color as displayed as shown in figure 15, this vibrant display of namespaces is available only in Wavefront.

Figure 15

Further granular metrics for the namespaces is displayed when mouse hovered over the graph as shown in Figure 16.

Figure 16

 

6. Pod Container Metrics

Pod container metrics can only be viewed in Wavefront Kubernetes dashboard as shown in figure 17.

Figure 17

Further Granular metrics of the pod containers is displayed when mouse hovered over the graph as shown in figure 18.

Figure 18

 

The Wavefront features listed so far are available for open source Kubernetes distribution. Specifically, for VMware Pivotal Container Service, Wavefront provides a custom dashboard with additional metrics as detailed below. Summary here

 

1. Overview:

VMware Pivotal Container Service dashboard in Wavefront lists number of pods (pods running, pods pending, pods failed), namespaces, nodes, pod containers (containers running, containers terminated, containers waiting, restarts of containers), deployments and Services. It also displays an overview of memory/CPU/Storage utilization of node and memory usage of the cluster as shown in figure 19, users can click on individual tiles and modify/add Wavefront Query Language to narrow down search against a metric.

Figure 19

 

2. Deployments:

VMware PKS dashboard in Wavefront provides following Kubernetes deployment details:

List of all deployments and their namespaces.

The number of available, unavailable and updated replicas per deployment.

Total number of deployments in each namespace, here each namespace is distinguished by unique color as displayed in figure 20.

Figure 20

 

3. Services:

VMware PKS dashboard in Wavefront provides following details of Services, the same is displayed in figure 21:

Information about service and its namespace with cluster IP.

Information about service and its namespace and type

Figure 21

 

4. Replicaset

VMware PKS dashboard in Wavefront provides following details of replica sets, the same is displayed in figure 22:

The number of replicas per replica set.

The number of desired pods per replica set.

Figure 22

 

Summary

  1. Wavefront provides detailed and granular visibility for containerized applications running in both Kubernetes and Pivotal Container Service. Wavefront focuses on DevOps and Developer centric monitoring of cloud native applications. It helps with co-relation across cloud native environments, analyze performance impact and prioritize new release features.
  2. vRealize Operations helps to plan, manage and scale SDDC, while giving flexibility to cloud admins to monitor, troubleshoot, balance workloads and plan their cost and capacity consumption.
  3. vRealize Operations 6.7 and higher adds more visibility into application monitoring with the Wavefront integration , both vRealize Operations and Wavefront combined gives cloud admins and DevOps a perfect blend for Cloud Native and vSphere Infrastructure monitoring.