Slashdot Mirror


A Look at Facebook's Use of Systemd (phoronix.com)

At an event this month (you can find the video of it here), Davide Cavalca, a production engineer at Facebook, spoke about the growing adoption of systemd at the data centers of the company. From a report: Facebook continues making use of systemd's many features inside their data centers. Some of their highlights for systemd use in 2018 includes: Facebook's servers have been relying on systemd for about the past two years. Facebook is using CentOS 7 everywhere from hosts to containers. While relying on CentOS 7, Facebook backports a lot of packages including new systemd releases, Meson, other dependencies, and of course new Linux kernel releases. Facebook is working on "pystemd" as a Python (Cython) wrapper on top of SD-BUS.

4 of 84 comments (clear)

  1. Facebook's use? by jeff4747 · · Score: 4, Interesting

    I can't watch the video because work, but from the text this doesn't look much like Facebook is using systemd. Facebook is using an operating system that uses systemd. And may someday have a python api to do what everyone else does with bash.

  2. Re:systemd has logged your complaint by Anonymous Coward · · Score: 3, Interesting

    LOL. It is a pain to remember things like:

    systemctl restart openvpn@dev.service

    The command isn't named systemd, there's an @ sign in the name, and the dev invokes magic to find /etc/openvpn/dev.ovpn.

    But the logging issue is a bigger problem. I miss SysV scripts where even if something didn't get logged, you could at least see it on the console. Having to resort to using strace just sucks.

  3. Only one good use-case by DCFusor · · Score: 5, Interesting
    for systemd - tons of identical instances, usually virtual so they can really be the same. The moment you customize with shares mounted on other machines, use wifi instead of wired ethernet, need to run custom daemons and so on - all of which worked fine here for years - under systemd, you find out that nope, shares didn't mount because they tried and failed before there was an IP address (now fixed, which fix broke the workaround you needed at first) - things like conky get started in an endless timeout loop till the system dies from no memory (maybe fixed, so hard to get right I gave up on conky) and on and on for a long list of stuff that worked before systmd, and LP says "just don't do that, EWONTFIX". The whole list is too long for the margin here.
    .

    And his clan call us haters. They didn't have to make a ton of interlinked custom real hardware on prem systems work - broken time and time again by upgrades to that nasty piece of work...the web is full of workarounds that used to be the only things that worked, that are now broken as the systemd coders finally listened and fixed them but in such a way as to break the workaround, again, and again, and again.
    Shades of lost productivity, near windows-like. Which of course doesn't affect RedHat revenue as they support - tons of identical instances...llike farcebook. The simplest case, get it right once and it's right everywhere. No edge cases. Wow, I'm er, underwhelmed.
    In other words, this far fan-dancier init system doesn't (or didn't) handle anything complex, just added complexity to only handle the simplest stuff correctly. And was forced on us long before ready.
    It was really fun trying to figure out why a system with a failed mount wouldn't shut down clean without a hard power off - because it couldn't unmount what it had failed to mount. Glad it wasn't far away and I could just do that.
    Not a hater, exactly. Just gheez - it caused me a ton of unnecessary unpaid work and stress and was arrogant about how it was somehow my fault for using what had been the documented standard ways of doing things. Way to win friends and influence people.

    --
    Why guess when you can know? Measure!
  4. Re:systemd has logged your complaint by Xenolith0 · · Score: 2, Interesting

    So you're mad that you might have to read a manual to a highly complex system? I'm impressed that you do "real work" on a system that you have no idea how it works!

    If you don't want to bother reading manuals because you're too busy doing "real work". Why did you even bother upgrading to RHEL7? Stick with RHEL6, which is supported until 2024.

    And yes, systemd is incredibly well documented. Just the man pages alone on the system:
    $ man -k systemd | wc -l
    147

    But for online documentation: https://www.freedesktop.org/wiki/Software/systemd/

    In almost every way systemd is better than sysv, upstart or other init systems, and it fixes many long standing issues SysV had.