Choosing Kubernetes For Your New SaaS Is The Wrong Choice

Choosing Kubernetes For Your New SaaS Is The Wrong Choice

Many of us are looking to build the next big business. We design our system to be able to handle large scale traffic from the start and build our infrastructure to scale with our load to the moon. Is this the right path forward? Let’s see if Kubernetes and large scale infra design is worth it.

Why Choose Kubernetes?

Kubernetes is a container orchestration tool designed to run a variety of workloads at scale. If you are a larger company that needs to be able to handle running large scale applications such as APIs, ELT pipelines, maching learning, etc then Kubernetes (k8s) might be a useful tool for you. The primary benefits of Kubernetes for large companies is that you can cheaply run many applications on the same hardware resulting in less maintenance and cloud spend. Auto-scaling quickly is another major advantage of Kubernetes. If your workload/traffic is very uneven or spikes often then Kubernetes can help you with that by scaling up to meet demand or by pre-emptively scaling up to handle the demand right before it happens.

Why Kubernetes Might Not Be Right

With the advantages of Kubernetes you do have a long list of disadvantages. The primary two being the cost to run and the operational overhead. When you want to run a managed Kubernetes such as AWS EKS or GCP GKE to reduce your operational overhead you will find the cost per cluster to be around $70 USD. 

Assuming you are planning to run the standard 3 cluster configuration most companies do – infrastructure, non production and production – then you are looking at a bill of $210 USD for the managed cluster control plane alone. Once you include a basic set of nodes you will add up to around $300 per cluster for a total of $900 a month for a base configuration. This configuration will enable you to serve a large amount of traffic and run things such as your CI/CD pipelines and data management tooling. However it also means your total cloud spend will be close to $1500 for a new SaaS application.

The next major disadvantage of Kubernetes for a new SaaS business is going to be the operational overhead. Maintaining Kubernetes with the varies components – cert management, secrets, pipelines, monitoring, DNS, ingress, cluster versions – can be a very time consuming task. If you want to manage your own cluster and have a fairly standard way of doing it then you can expect to spend about 15-20 hours a month managing the baisic cluster configuration mentioned previously. When you are a new company focused on new features for your customers it can be a difficult task to keep up on it all. If you choose to get too far our of date you risk a tech debt mountain or a security incident. 

There has to be a cheaper and less time intensive solution!

The Solution

The easiest solution available is managed containers such as ECS or Google App Engine. The next best for ease of use but gaining some cost benefits is a cloud VPS such as Digital Ocean. If you decide that running containers is your best option still (IMO it is) then running a Docker Compose on your VPS server can be an extremely cheap and optimial way to reduce both your cost and operational overhead of your system until you hit a limt of where running 2-3 replicas behind a load balancer with a decent amount of resources per replica is not performing well or scaling how you need it to. Once you hit that point you should look at deploying a set of managed Kubernetes clusters since you will have reached the point of an operational need. There will still be better solutions than Kubernetes at that point however the ecosystem and growth potenital that Kubernetes allows you to tap into will make it worth the additional costs.

Conclusion

Kubernetes can be an extremely powerful tool but also a very dangerous one. It can enable you to scale to millions of customers but also ensure you are too broke or busy to go get those new customers. This is something that I have learned over multiple businesses. Kubernetes while awesome is not a one size fits all tool and for the vast majority of startups it is not the correct tool to start out with. It is more reasonable once you hit your series A and beyond. 

Subscribe To My Mailing List

Sign up to get emails when I release a new blog post personally or for one of my businesses.