4 ms·
As an end user, meaning a web app developer, I actually like systemd a lot. I perceive the software quality to be good enough. I've used it in production since
by ses1984 7y ago
As an end user, meaning a web app developer, I actually like systemd a lot. I perceive the software quality to be good enough. I've used it in production since 2014 and encountered zero bugs. It does seem to me to be vastly simpler compared to the old way of doing things.
I don't really feel strongly either way. I'll be pretty sad if Debian and redhat diverge.
- tannhaeuser 7y agoI don't know what you're doing to start your web/app server, but for eg. apache httpd it's a matter of sudo apachectl start (and likewise for all SysV-like startup scripts). For node, it's node <yourapp.js> (or rather using node-forever or node-cluster in prod). If you want to have it started on boot automatically, you put that line into your startup script. It doesn't get any more simple and transparent than that. Why would you be sad if Debian and RH diverge? Linux started as a one-man show and became a huge community effort because it could run a wealth of F/OSS software. If you want a single-vendor OS, there's Windows, Mac OS, the BSDs, and others. Or maybe IBM RHEL in the future.
- ses1984 7y agoIf you do `sudo apache start` in production, how do you do it? Log in to the server and type it in? What about log and metrics agents, how do you start and configure those? Also why are you so judgemental? I don't want Debian and rhel to diverge because I have clients who use both and I don't want to have to do more work to support both.
- tannhaeuser 7y agoSorry I didn't want to sound judgemental. My point was that your argument, taken to the extreme, undermines having multiple Linux distributions in the first place. Which is exactly the embrace-extend-extinguish aspect being talked about elsewhere in this thread.
- ses1984 7y agoI just can't conceive of how init could be extinguished, or how life would be worse in any way for me if I was never forced to deal with init again. What's the bad angle? Do I actually have skin in this game I didn't realize? Edit: I am super duper cool with having multiple Linux distributions. I am just not really excited about being forced to interact with vastly different distros specifically in the course of doing my job.
- znpy 7y agoyup, sudo apachectl start. But... how do you make sure it's done at boot? what if the machines boots up unattended, maybe after a power loss? and where do you put the apachectl binary? And what would happen if for any reason apache crashes? will it stay crashed? will something restart it? if so, what thing will? and what if you need to run it in a restricted environment (let's say something easy, let's say a chroot) ? and what if you want to have upper limits to the resources that it's supposed to use? how do you check if it's running, and how much resources is it consuming ? Systemd units make all of those things trivial, or at least not that hard.
- ldng 7y agoAnd that is exactly the marketing card that have been played. The dev out numbers the sysadmin and ask for SystemD. Then it's to the sysadmin to live with the numerous bugs and non-standard and hardly documented ways of the Beast.
- ses1984 7y agoHonestly there have been zero angry sysadmins in the picture. Actually very few if any sysadmins in the picture since 2016. Anything I touch that requires sysadmins is outsourced one way or another, either via managed services like rds or in house dbas. If aws or in house dbas have strong opinions about systemd it doesn't impact me.
- delfinom 7y agoYea, sysadmin is a shrinking job field. Dev ops is eating heavily with what they used to do with config driven management of servers be it kubernetes, docker, terraform, puppet, etc.
- ldng 7y agoSome one is administering the system. Whatever its title. The grip I hear from those who _do_ (and I agree with them) administer SystemD servers (note I did not say desktop here) is that when it fails, it is often very hard to debug because of too much implicit and hardly documented.
- ses1984 7y ago"the system" is shrinking. Our ci/cd, logging, monitoring, and alerting infrastructure is outsourced, our databases our outsourced, and our apps are deployed on stateless vms, a couple steps away from a managed container platform as a service. The only reason we aren't all in on container platform as a service, is because we support clients who deploy on vms.
- znpy 7y ago> non-standard I mean, this is a laughable point. Like, seriously ? Before systemd every branch of the linux distro tree had its own way of managing stuff at startup, and distros in the same subtreee made things different enough that things like inits-cripts were not portable. Heck, even with the same init system, some distros arranged runlevels differently. Do people even remember runlevel? Those were another complete way of mess things up. Are you really playing the "non standard" card? Like, for real? And seriously, what would be the standard? The Single Unix Specification? According to that spec even bash is not standard, and yet it's the de-facto standard for shell scripts across basically all the major distributions.
- Data_Junkie 7y agoSimpler for simple things, which is great when it works, but more complicated for more complicated work, which is simply unacceptable when it prevents you from controlling the system. Good old bad design that matters more as you scale up. It isn't the point of systemd that is the problem, it is this particular case of horrible design.
- ses1984 7y agoCan you give an example of something more complicated in systemd? If I ever had to do anything like that, I would just do it in a different layer, like have a simple systemd unit pointing to a complicated init script that contains the logic.
- Data_Junkie 7y agoWell yeah, you would have to. Might as well use initv then. That's the point. At least then you can debug and not have a black box you can't really see into. It is horrid design. Hacker News is getting worse, same thing horrid design . Horrid design is caused by the goals and abilities of the designer clashing with the goals and abilities of the user, and when designers are selfish and want ALL the control the product if useful to less and less people over time. Happens a lot because often the design goal is a hidden desire to wall off functionality to reserve it's usefulness to a select group deemed worthy.
- ses1984 7y agoExcept when would you have to? Please describe something you did that was complicated and hard to debug in systemd.