I have been researching k8s lately. I am a bit confused by the idea of self managing k8s cluster in the cloud. I have read about people doing it, but still I am not sure what are the price benefits if you are already running services on VMs in the cloud.

GKE makes you pay only for your nodes and it manages your master nodes out of the box.

Are there some hidden costs for the managed clusters that are not mentioned? Will you self manage your cluster if you are already running services in the cloud and you will most probably pay the same if you migrate them in k8s?

I know it really depends based on your services and needs but lets imagine the most basic CRUD application - 1 stateless backend running a few replicas, 1 stateful db running one replica for HA purposes, 1 message broker and a few worker instances for background processing. You do not have bare metal machines, you are already running in the cloud on basic VMs, without containers. Will there be any good reason to migrate to self managed k8s cluster price wise?


By using a Self-Managed Kubernetes Cluster you have many pros and cons.

As a pro, on a self-managed Kubernetes Cluster, you have control over the management layer. Fully managed Kubernetes services in the cloud don’t allow you to configure the cluster master, because that component is handled by the managed service. When you deploy your own cluster using kubeadm, kubespray or even doing it the hard way, you have full access to the cluster master all the other related management components.

This also adds flexibility of configuration where you can configure the cluster and the nodes the way you want, instead of wrestling with the configuration options supported by a managed service.

You also have more control over the deployment and management of your cluster. For example, you can deploy multiple node pools or choose to have different instance types for different nodes. These options aren’t available with many managed Kubernetes services.

On the other hand, you have the fact that deploying and maintain a self-managed cluster is time-consuming and requires deeper knowledge from the maintainer. Cloud providers have specific teams to take care of these solutions and in general, this adds more reliability to the solutions provided.

There are more pros and cons described in this article. It's from NetApp but part of the post is not specific to it and it worth reading it.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.