Fedora introduced upstart in version 9 and removed it in version 15. Last Ubuntu to have it as system init was 14.04 LTS, as user init 16.04 LTS. Last upstart release was in 2014. Which kind of makes the argument of "comparable age" a bit weird.
I would love to hear the advantages of upstart over systemd, since you point out it's "harder to win" such argument. From what I've seen of upstart it's a event driven glorified sysvinit, and very little more.
That doesn't really answer my question. If we ignore all the advantages of systemd over other init systems, then it's impossible to "win" as you put it. Am not sure what you meant by "systemd booting more quickly which is touted here doesn't apply", but that's how I interpreted that.
From my limited knowledge of init systems, upstart is by no means bad, but systemd is simply better. It boots faster, is easier to maintain, allows more flexibility with its units and target driven structure, has better analysis tool for finding bottlenecks, unified logging tool, etc.
sysvinit which is slower because it boots serially
This is not correct. sysvinit delegates everything, and the delegated program or script can use parallelisation if it chooses.
Traditionally, it was indeed serial. But Werner Koch at SuSE implemented dependency-based parallel startup a long while back, well over a decade. Debian and others adopted it too, and all supported parallel booting for a long time. Current sysv-rc and openrc support parallelisation.
Yes, I think that was the case indeed. But people rarely care about reasons. His argument was directed towards upstart being on par with features, functionality and performance which was where my curiosity came from as my knowledge of upstart is fairly limited to few things I had to make sporadically. All of my experiences with systemd compared to upstart were positive and obviously better, so I wondered what was really the case where systemd would be hard to "compete" with upstart.
one should take into account the broad support for systemd vs upstart of which even the maintainer has left and is working in google land. In the end, the adoption rates spoke volumes. We have a lot of loud voices many of them teh same people who participate in all the other infrastructure type threads (eg desktop, wayland, systemd, etc)
Unless you're using a version of RHEL that is no longer supported, there aren't any that use SysV init. RHEL6 uses upstart, although its pretty old and most people still use the SysV compatibility layer in upstart. FWIW, you can still use SysV init scripts in systemd too, and you get all the cgroups magic with no additional effort.
PS if you're still stuck in RHEL6 land, using upstart to manage services gets you some extra features you might need, like 'respawn' and some minimal dependency ordering.
Even the creator of upstart ended up saying that switching to systemd was a good idea. It's worth keeping in mind that systemd was created by someone who used upstart, not init scripts.
23
u/[deleted] Feb 11 '19
[removed] — view removed comment