:: Re: [DNG] Systemd as tragedy
Page principale
Supprimer ce message
Répondre à ce message
Auteur: Alessandro Selli
Date:  
À: dng
Sujet: Re: [DNG] Systemd as tragedy
On 31/01/19 at 03:38, Joel Roth via Dng wrote:
> On Thu, Jan 31, 2019 at 12:19:44AM +0100, Alessandro Selli wrote:
>> Might interest someone:
>>
>> https://lwn.net/Articles/777595/
>>
>> [Front] Posted Jan 28, 2019 20:05 UTC (Mon) by corbet
>>
>> His attempt to cast that story for the
>> pleasure of his audience resulted in a sympathetic and nuanced look at a
>> turbulent chapter in the history of the Linux system.
> Hard to believe I listened to the same talk Corbet
> is describing. What I heard was a propaganda piece,
> finding reasons to sell the systemd approach
> to BSD conference attendees.


  Not really.  He points out there were good reasons to want a new init,
that systemd was a try at innovating something that was old, and that
this is a different matter compared to *how* that change was implemented.

  Honestly, the anti-systemd front is never going to prevail pushing
technology dating from the 70's or steering the debate into an ad
hominem assault against Lennart Poettering.  It's only chance is
developing something better, an init system and daemon
management-and-monitoring tool that was simpler, more versatile,
customizable and stable than systemd.  That is, the only chance against
systemd is to come up with something technically better.  May I ask you
to please present technical arguments either against systemd or in favor
of alternatives rather than railing against LP or Benno Rice?  Because
reading what you wrote, I believe I heard a different talk than you have.

https://www.youtube.com/watch?v=o_AIw9bGogo

  Nowhere does he state that BSD should adopt systemd, but he does point
out that BSD is lagging behind Linux on many key fronts: automatic HW
and SW system reconfiguration, cgroups, message transport, service
lifecycle, automation API and containers, for instance.  But nowhere
does he peddle systemd to the BSD folks.  He instead stated that:

(30:26)

"systemd makes heavy use of dbus. I'm not a big fan of dbus but i am a
big fan of messages. [...] One of the things that I told the BSD people
was basically we should write our own message transport. My version, if
I were to write one, would be kernel resident rather than user space and
would allow a lot more of security and authentication and access control
elements on the actual bus endpoints".

(33:13)

"The barrier to entry for building something on top of it like an
appliance is massively reduced. But again systemd doesn't have to be the
only implementation of this. You should go and explore".

This is technical reasoning, this is pointing out what need to be done
to turn the tide on something different, on something better than
systemd.  He rightly states that better does not necessarily mean "the
way it was done before", change is part of life and resisting it just
out of aversion to change eventually proves futile.

There are points over which I disagree with him, when he states that
binary logs are a good idea for instance, but he is damn right that
bickering against Poetering's personality or that systemd goes against
the principles of Unix as they were laid out 40-50 years ago is a losing
proposition.  We're talking of software, technology and system services,
systemd is leading right now and sysv-init is worthless as a weapon
against it.  Linux is in need of something better, at least in terms of
simplicity and robustness, than systemd.  But I still can't see anything
capable of taking the lead and gaining back a significant share of the
installed base from systemd.  Which worries me, because this means that
systemd is going to become ever more entrenched in the Linux ecosystem,
to the point it might begin to dictate the future evolution of the OS,
from the kernel to userland.  And still what I hear the most is that
systemd stinks because LP is an assh*le or that it violates the Unix
philosophy.  When I hear people speak of philosophy on technology
matters I think they don't have a clue yet they're struggling to prevail
on a purely dialectical plane.

I've been waiting years for something better than systemd, modern and
simpler, more modular, customizable and easier to understand and
predict.  Years when systemd just got bigger, more tentacular and more
widely adopted.  And all I got was the same old, static, sclerotic
sysv-init.  Enough with calling people names when they don't share your
attitudes against Lennart Poettering or when they don't blame systemd
for the death of the neighbor's cat.  What can be used today to replace
systemd that was not devised 40 years ago when networks were as static
as motorways and external removable devices required a technician to
change them?  What can be used that will run virtualized, containerized
systems just as well, that is easier, more customizable and more reliable?

In my current job I manage the less than 10% of the infrastructure that
runs on non-Windows systems.  They are all systemd systems except two
old Sun Solaris boxes.  I know that pushing management away from systemd
would likely have the effect of pushing them away from Linux altogether,
turning the place into a Windows-only business, like most are in Italy. 
To have a chance I must show that running the Linux boxes without
systemd would improve the workflow, ease maintanership, make the boxes
more dependable and resilient, make them interact better with the VMWare
hosts.  I know I cannot.  It would take me a lot of time to let them run
on sysv-init, I doubt the CentOS boxes can be make run without systemd,
some proprietary packages only come with systemd unit files and I cannot
produce dbus-events sensitive scripts to replace unit files.  And even
if I could do it, I'd run the risk of seeing those servers miserably
fail a major upgrade in the future, putting Linux and myself in a bad
light withing the organization.  No way can I justify a switch away from
systemd saying that LP is a miserable jerk or that systemd doesn't rely
on hundreds of pipelined command-line tools that each does just one
simple thing and does it well.

I do run Devuan on my personal systems, but I do so because I don't like
living inside the monoculture systemd is pushing all the major Linux
distributions into, and I enjoy being capable of a deeper control of my
systems than systemd allows me.  But I know I'm relying on an old piece
of software junk that is running well because I'm not running a complex
*aaS infrastructure.  SysV suits me well for the same reasons ext4 does
compared to zfs and script/awk scripts do compared to Python or Go.

What is Devuan going to have in the future capable to replace sysv-init
and be a considerably more modern approach to system management and
services control?  I don't know.  What I do know is that learning to
master systemd is a must to retain my job and to be able to hold any
Linux professional certification.  And that to change this state of
matters will take far more than saying that LP is a jackass and that
Thomson and Ritchie would have loathed a systemd-like solution when they
developed Unics.


--
Alessandro Selli <alessandroselli@???>
VOIP SIP: dhatarattha@???
Chiave firma e cifratura PGP/GPG signing and encoding key:
BA651E4050DDFC31E17384BABCE7BD1A1B0DF2AE