Should we use Kubernetes for our MVP?
If you answer "no" any of these questions, strongly consider alternatives to Kubernetes for the time being.I was recently posed an interesting question, which I think is worth answering here:
Should we use Kubernetes for our SaaS MVP?
Right off the bat, if we’re using Eric Ries’ definition of MVP (which I’ve talked about before), the answer is almost certainly a big fat NO. The only reasons I can imagine to use Kubernetes for a Ries-style MVP are:
- You already have Kubernetes configured and your engineers are already familiar with it, so Kubernetes is literally the quickest way to test your idea’s viability.
- Your product is intimitely related to Kubernetes.
Even if you meet both of those criteria, it’s likely that your MVP should not use Kubernetes, since an MVP could just be a landing page with a CTA button. But I digress.
Let’s suppose what you really mean is “Should we use Kubernetes for a beta version of our application?”
Now things are a lot less black-and-white. So here’s my check list to consider when deciding whether to use Kubernetes. If you answer “no” any of these questions, strongly consider alternatives for the time being. If you architect your system well, switching to Kubernetes later won’t be difficult.
- Have you already done an Eric Ries style MVP to validate your business concept, or do you have other solid proof that your business concept is viable? (If not, read The Lean Startup right now!)
- Do you have engineers who are already comfortable working with Kubernetes?
- Is your service built (or will it be built) primarily of stateless services?
- Are your developers comfortable building software that conforms to most of the concepts in the twelve-factor app?
- Can you afford the cloud or hardware bill for the extra resources required for a minimal Kubernetes cluster? (Consider that a minimal useful Kubernetes cluster requires 3 servers or VMs)
- Can you articulate your reasons for wanting to use Kubernetes? (There are many, but they don’t all apply to everyone. If you can’t articulate your reasons, you aren’t ready for Kuberentes.)
This is by no means an exhaustive check list, but should help get you thinking critically about the decision whether to use Kubernetes or not.