←back to thread

176 points rgun | 3 comments | | HN request time: 0.636s | source
Show context
JohnMakin ◴[] No.46145088[source]
Having spent most of my career in kubernetes (usually managed by cloud), I always wonder when I see things like this, what is the use case or benefit of not having a control plane?

To me, the control plane is the primary feature of kubernetes and one I would not want to go without.

I know this describes operational overhead as a reason, but how it relates to the control plane is not clear to me. even managing a few hundred nodes and maybe 10,000 containers, relatively small - I update once a year and the managed cluster updates machine images and versions automatically. Are people trying to self host kubernetes for production cases, and that’s where this pain comes from?

Sorry if it is a rude question.

replies(5): >>46145152 #>>46145315 #>>46145389 #>>46145675 #>>46146251 #
psviderski ◴[] No.46145315[source]
Not rude at all. The benefit is a much simpler model where you simply connect machines in a network where every machine is equal. You can add more, remove some. No need to worry about an HA 3-node centralised “cluster brain”. There isn’t one.

It’s a similar experience when a cloud provider manages the control plane for you. But you have to worry about the availability when you host everything yourself. Losing etcd quorum results in an unusable cluster.

Many people want to avoid this, especially when running at a smaller scale like a handful of machines.

The cluster network can even partition and each partition continues to operate allowing to deploy/update apps individually.

That’s essentially what we all did in a pre-k8s era with chef and ansible but without the boilerplate and reinventing the wheel, and using the learnings from k8s and friends.

replies(2): >>46145401 #>>46146050 #
_joel ◴[] No.46145401[source]
k3s uses sqlite, so not etcd.
replies(1): >>46146352 #
1. davidgl ◴[] No.46146352[source]
It can use sqlite (single master), or for cluster it can use pg, or mysql, but etcd by default
replies(1): >>46146562 #
2. _joel ◴[] No.46146562[source]
No, it's not. Read the docs[1] - sqlite is the default.

"Lightweight datastore based on sqlite3 as the default storage backend. etcd3, MySQL, and Postgres are also available."

[1]https://docs.k3s.io/

replies(1): >>46146932 #
3. cobolcomesback ◴[] No.46146932[source]
This thread is about using multi-machine clusters, and sqlite cannot be used for multi-machine clusters in k3s. etcd is the default when starting k3s in cluster mode [1].

[1] https://docs.k3s.io/datastore