4 ms·
> All most people need to do is run a couple processes on a couple hosts … You can have all of that with, say, systemd (ugh) Why ugh? I do have all of that wit
by sjy 6y ago
> All most people need to do is run a couple processes on a couple hosts … You can have all of that with, say, systemd (ugh)
Why ugh? I do have all of that with systemd, and it’s great. Rather than running each service in a separate filesystem and requiring them to communicate over a virtual network, I use ProtectSystem and ProtectHome to keep services as isolated as they need to be. Rather than creating a network bridge and doing NAT inside my server, if services require network isolation, I use NetworkNamespacePath to assign them to namespaces that contain different VLAN interfaces, which are configured in my router just like physical interfaces. Rather than building a huge container image for every application, I use my OS’s package manager to install apps and manage their dependencies. The skills required to do this can be applied to any systemd-based Linux distribution, and are needed to properly understand and troubleshoot systemd-based Linux distributions running in containers anyway. I’d need some new tools (eg. Ansible) to scale this setup past one or two hosts, but I’m baffled by the people setting up complex Docker/Kubernetes systems just to self-host a few web apps.
- ColanR 6y agoI'd render a guess that the 'ugh' has to do with the general assessment that systemd falls prey to the same flaws that GP identified in the onion layers of orchestration and containerization systems: it's unnecessarily complicated.
- peterwwillis 6y agoSystemd is basically another Kubernetes. The Unix way does not require a patriarchal set of daemons and a proprietary framework to manage the interoperability of everything else in a way that's incompatible with anything else. That said, it's still several layers less than K8s and its dependencies are today.