this post was submitted on 27 Jul 2023
56 points (100.0% liked)
Asklemmy
1454 readers
68 users here now
A loosely moderated place to ask open-ended questions
If your post meets the following criteria, it's welcome here!
- Open-ended question
- Not offensive: at this point, we do not have the bandwidth to moderate overtly political discussions. Assume best intent and be excellent to each other.
- Not regarding using or support for Lemmy: context, see the list of support communities and tools for finding communities below
- Not ad nauseam inducing: please make sure it is a question that would be new to most members
- An actual topic of discussion
Looking for support?
Looking for a community?
- Lemmyverse: community search
- sub.rehab: maps old subreddits to fediverse options, marks official as such
- !lemmy411@lemmy.ca: a community for finding communities
~Icon~ ~by~ ~@Double_A@discuss.tchncs.de~
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Over the last couple years, kubernetes. It completely changed the game and the ecosystem growing up around it is both exciting and refreshing compared with the old way of managing servers.
I’ve been surprised not to see this with any of the fediverse platforms I’ve browsed. Instead, they’re all using Docker Compose. Any idea why that is?
K8s is amazing for big, complicated services. For small things, it quite honestly can be overcomplicated. If you're running something massive, like, say, Spotify, then k8s will make things simpler (because the alternative for running such a massive and complicated service is... gross lol). That's not to say that k8s can't be used for something like Lemmy, just that it might not be worth the complexity.
For the fediverse, I think a lot of the development is written for small, mostly monolithic single servers. K8s is meant for when you have an entire cluster running some service. You wouldn't typically run a single server with k8s, but rather you'd have many "nodes" and you'd run many instances of your binary ("pods") across those nodes for the redundancy.
I'm not very familiar with the backends of fediverse servers nor Docker Compose, but I'm under the impression that's for single servers and I've seen many Lemmy instances talk about their hosting as if they only have one physical server. That's probably fine for a FOSS social media site that is run by hobbyists, but major commercial software would never want to have a single server. Heck, they wouldn't even want to run just servers in one location. The big cloud providers all offer ways to run k8s clusters that use nodes spread across multiple data centers, usually ones with isolated failure zones, all to maximize uptime. But that's also expensive. For a big business, downtime means millions of dollars lost, so it's a no brainer. For Lemmy? As annoying as downtime is, users will live.