Virtlet is a Kubernetes runtime server which allows you to run VM workloads on your cluster. It can run arbitrary QCOW2 images, while making the VMs appear as pod-like as possible. This means the possibility of using most of standard kubectl commands, building higher-level Kubernetes objects such as StatefulSets or Deployments out of the VMs and so on. On the other hand, it's also suitable for running the traditional long-lived "pet" VMs, too.

Virtlet has full support for Kubernetes networking and multiple CNI implementations, such as Calico, Weave and Flannel. In addition to this, more advanced CNI setups are supported, too, such as SR-IOV and using multiple CNI implementations at the same time.

You can a Virtlet usage demo by following this link.