Hacker News new | ask | show | jobs
by the_other_b 2297 days ago

  If you're not going to build the next Facebook, why would you need so much complexity?
You don't. I think this is a recent point people are trying to make. Kubernetes makes sense at a certain scale, but for smaller startups it maybe shouldn't be the go to.
2 comments

So if Kubernetes is too complex, then terraform is a Nono too?

I don't find them complex at all. You just tell the tools to be in a specific state and the tool applies the necessary changes. Server templates. Provisioning. Orchestration. etc.

I don't think theres a comparison there (or I'm just unsure of the point you're making with that statement). I agree, they aren't conceptually complex, but Kubernetes is a large scheduler that _definitely_ benefits from having a dedicated team managing it.

That being said, I always recommend using a tool like Terraform to back up infrastructure and the likes.

Maybe I didn't do enough with Kubernetes to need a dedicated team hmm.

The point I wanted to make is that my opinion is a bit different. Being able to declare how state should be instead of doing it imperatively/with configuration management is just something I enjoy and which I think does not cost much more in comparison.

That is why I wondered why not use it as a small startup?

You definitely still could if you feel the maintenance is manageable. This was just my experience :) I chose to go with something like Cloud Run.
Terraform and Ansible are not nonos! I use them for my small product and they are reliably good! Kubernetes has much more complexity and a steeper learning curve compared to those tools! But it has its own benefits. Apply what is necessary than what is fancy!
Can you educate on at what point Kubernetes actually makes sense? Is there a rule of thumb?
When you need to run more than 1-2 applications, especially in HA, and you're cost-conscious so just throwing tons of machines in autoscaling groups doesn't work for you.

Said applications don't have to be applications that you're writing as part of your startup. It can be ElasticSearch cluster, Redis, tooling to run some kind of ETL that happens to be able to reuse your k8s cluster for task execution, CI/CD, etc. etc.

I don't think I'm in a position to answer this (heavily experienced outside the control plane, but not in), but if I had to answer I'd say:

Once you don't personally have your hand in every application your company is running (in addition to the points the other comments have brought up).