Virtual Kubernetes clusters (vClusters) have the potential to bring Kubernetes adoption to the next level. They run in a physical Kubernetes cluster and can be used in the same way as normal clusters, but they are still just a virtual construct. For a detailed definition and description of virtual Kubernetes clusters, take a look at this article.

Similarly to virtual machines that revolutionized the use of physical servers, virtual Kubernetes clusters have some benefits compared to physical clusters that make them particularly useful for some scenarios.

In this article, I will describe the benefits of virtual Kubernetes clusters and provide some use cases in which vClusters are more advantageous than other solutions such as many individual clusters or namespace-based multi-tenancy.


Benefits of Virtual Kubernetes Clusters

The benefits of virtual clusters for Kubernetes are mainly based on two characteristics:

  1. Sharing of a physical cluster
  2. Isolation

Cluster sharing/multi-tenancy

Since vClusters are a virtual abstraction within Kubernetes, it is possible to run many vClusters on just a single physical cluster, which has the following advantages:

  • Reduced management effort. Since there is only one physical cluster to maintain, the administrative effort is significantly reduced by virtual clusters. This becomes especially clear when comparing it to another alternative that would lead to a similar outcome from a user perspective: Instead of running virtual clusters in one physical cluster, it is possible to run many physical clusters that all have to be maintained, which can become infeasible pretty fast even in only mid-sized teams. Additionally, the physical cluster can be configured in a pretty “basic” way without extensive additional installations, as most of this will happen on the level of the vCluster.
  • Reduced cost. Besides the reduced management effort that also results in cost reductions, virtual clusters are also more efficient in utilizing computing resources because the resources are shared by the tenants. Again, similar efficiency improvements were gained by introducing virtual machines to a physical server infrastructure. This cost efficiency is further increased by the disposable nature of virtual clusters. They can be “thrown away” (shut off) when they are not needed. Alternatively, they can be “put to sleep” (scaled down), a process that can even be automized (e.g. with a sleep mode).

#kubernetes #programming #containers #devops #kubernetes-cluster

Virtual Clusters for Kubernetes — Benefits and Use Cases
3.05 GEEK