Remix.run Logo
jeroenhd 13 hours ago

Kubernetes is so easy that you only need two or three dedicated full-time employees to keep the mountains of YAML from collapsing in on themselves before cutting costs and outsourcing your cluster management to someone else.

Sure, it can be easy, just pick one of the many cloud providers that fix all the complicated parts for you. Though, when you do that, expect to pay extra for the privilege, and maybe take a look at the much easier proprietary alternatives. In theory the entire thing is portable enough that you can just switch hosting providers, in practice you're never going to be able to do that without seriously rewriting part of your stack anyway.

The worst part is that the mountains of YAML were never supposed to be written by humans anyway, they're readable configuration your tooling is supposed to generate for you. You still need your bash scripts and your complicated deployment strategies, but rather than using them directly you're supposed to compile them into YAML first.

Kubernetes is nice and all but it's not worth the effort for the vast majority of websites and services. WordPress works just fine without automatic replication and end-to-end microservice TLS encryption.

j_heffe 4 minutes ago | parent | next [-]

IMO the human capital required to run Kubernetes is a wash. Having a dedicated platforms team is really no different than having dedicated sysadmins to on-prem. When you have a complex ecommerce platform with omnichannel, supply-chain, POS, rewards, and external vendor integrations, the case for running a few hundred orchestrated microservices in K8s becomes a bit easier to make, Until you have all those things, it really doesn't make sense.

It's definitely a shame that YAML/Helm is the default templating. A lot of the time you simply end up copy and pasting some complex template you found in a github repo with 2 stars with very little understanding of it because something is one fire and you have no time to dig into it.

hmottestad 10 hours ago | parent | prev | next [-]

I went down the Kubernetes path. The product I picked 4 years ago is no longer maintained :(

The biggest breaking change to docker compose since it was introduced was that the docker-compose command stopped working and I had to switch to «docker compose» with a space. Had I stuck with docker and docker-compose I could have trivially kept everything up to date and running smoothly.

maxdo 11 hours ago | parent | prev [-]

I ran small bootstrapped startup , I used GKE. Everything was templated.

each app has it's own template e.g. nodejs-worker, and you don't change the template unless you really needed.

i spent ~2% of my manger+eng leader+hiring manger+ god knows what else people do at startup on managing 100+ microservices because they were templates.

lmm 10 hours ago | parent [-]

That works great until you want to change something low-level and have to apply it to all those templates.

mkroman 2 hours ago | parent [-]

That's when you go a level deeper and have every template use another template (e.g. a Helm subchart or Helm library) only to realize scoping and templating is completely fucked in Helm.