Kubernetes has indeed become a defacto standard when developing containerized apps as it provides a vast set of functionalities out-of-the-box that helps developers build scalable and resilient systems.

Everything is beautiful if you are developing something from scratch, but we all know that’s not how it works for most companies! As time pass, a lot of legacy systems have become some sort of gigantic monolith monster that doesn’t run on containers, but on Virtual Machines. It’s really hard to refactor those systems for various reasons:

  • Technical reasons (e.g., depends on old operational systems or kernels)
  • Business reasons (e.g., time to market, cost of conversion)
  • Difficulties with vendors (e.g., vendor does not provide the solution in the container format)
  • Or, believe it or not, new applications can indeed still be designed to run on Virtual Machines instead of containers

This shouldn’t stop you from using Kubernetes, and KubeVirt is the right tool for bringing those VMs to the Kubernetes world. KubeVirt is a virtual machine management add-on for Kubernetes. The aim is to provide a common ground for virtualization solutions on top of Kubernetes. With KubeVirt, you can manage Virtual Machines as a Kubernetes resource, similar to pods. You can declare, start, stop, delete, scale, and…monitor them! The Kubernetes way.

In this particular blog post, I won’t be covering KubeVirt itself with too many details, but how to monitor your virtual machines similarly to how you monitor your containers inside k8s. KubeVirt has an awesome user-guide if you want to know more about it.

#monitoring #prometheus #kubernetes #kubevirt #virtual-machine

Monitoring Legacy Virtual Machines, and Its Applications — the “Kubernetes Way”
2.65 GEEK