Btrfs, Systemd und Cgroups für Container

Container-Images baut Facebook mit dem eigenen Build-Tool Buck, das als Open Source Software bereit steht. Verteilt werden diese Images in den Facebook-Rechenzentren über eine interne Paketverwaltung.

Die Images selbst werden wie bei anderen Container-Systemen auch in Schichten zusammengesetzt. Facebook nutzt hier als Basis die Distribution Centos, eine eigene Schicht mit Konfigurationen für SSH und Zertifikate sowie eine Schicht für Anwendungen und deren einzelne Binärbestandteile.

Statt der sonst üblichen virtuellen Union-Dateisysteme wie OverlayFS 2 nutzt Facebook jedoch das native Linux-Dateisystem Btrfs und hier insbesondere die Copy-on-Write-Funktion, um lediglich Unterschiede (Binary Diffs) zwischen den Images verteilen zu müssen.

Weitere Vorteile von Btrfs in diesem Kontext sind laut Facebook, dass weniger Festplattenplatz benötigt wird, die I/O-Zugriffe auf die Platten verringert werden und die Layer mit Hilfe der Btrfs-Snapshots unabhängig voneinander versioniert werden können. Letzteres ermöglicht wiederum auch unterschiedliche Update-Zyklen für die Layer. Außer Facebook setzt sonst wohl nur Suse mit seinen kommerziellen Container-Angeboten derart massiv auf Btrfs.

Systemd als Container-Dienst

Anders als Docker, das einen eigenen zentralen Daemon zum Starten der Container verwendet, setzt Facebook analog zu der Rkt-Containerengine von CoreOS auf Systemd. Facebook reduziert hier im Vergleich zu Rkt aber das Einsatzszenario auf das allernötigste und beschränkt sich ausschließlich auf die Verwendung von Systemd-Nspawn, das den Container in einem Namespace startet. Das sei extrem schnell, so Puskas.

In den Containern selbst wird der Init-Daemon von Systemd zum Starten und Verwalten der Anwendungen genutzt. Die Integration der sogenannten Control Groups (Cgroups) in Systemd ermöglicht Facebook zudem eine einfache Kontrollmöglichkeit der zur Verfügung stehenden Systemressourcen für die Anwendungen. Systemd ermögliche es hier außerdem, einfach Log-Dateien aus dem Container heraus zu verteilen.

Der beschriebene Ansatz von Facebook ist im Vergleich zu anderen Container-Systemen sehr minimal, hat laut Puskas aber den klaren Vorteil, das nur Werkzeuge Anwendung finden, die in einer Linux-Distribution sowieso verwendet werden.

Für interessierte Nutzer macht es das zumindest theoretisch sehr einfach, das Container-System von Facebook zu übernehmen. Das Unternehmen plant aber derzeit wohl nicht, daraus ein Open-Source-Projekt zu erstellen. Das gelte insbesondere für den eng an Facebook gebundenen Tupperware-Stack. Ob Facebook dieses als Open Source bereitstellen wird, wollte oder konnte Puskas auf Nachfrage nicht beantworten, die Zukunft vorhersehen könne er aber auch nicht.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed
 Statt Docker und Kubernetes: Facebook braucht Tupperware für seine Container
  1.  
  2. 1
  3. 2


Aktuell auf der Startseite von Golem.de
JPEG XL
Die Browserhersteller sagen nein zum Bildformat

JPEG XL ist das überlegene Bildformat. Aber Chrome und Firefox brechen die Implementierung ab. Wir erklären das Format und schauen auf die Gründe für die Ablehnung.
Eine Analyse von Boris Mayer

JPEG XL: Die Browserhersteller sagen nein zum Bildformat
Artikel
  1. Walking Simulator: Gameplay von The Day Before erntet Spott
    Walking Simulator
    Gameplay von The Day Before erntet Spott

    Nach Betrugsvorwürfen haben die Entwickler von The Day Before nun Gameplay veröffentlicht - das nicht besonders gut ankommt.

  2. Lasertechnik: Hoffnung auf Femtosekundenlaser für die Hosentasche
    Lasertechnik
    Hoffnung auf Femtosekundenlaser für die Hosentasche

    An der Universität Yale wurde ein Titan-Saphir-Laser auf einem Chip erzeugt und fortgeschrittene Lasertechnik auf Millimetergröße geschrumpft.

  3. Knockout City: Drei Games-as-a-Service weniger in einer Woche
    Knockout City
    Drei Games-as-a-Service weniger in einer Woche

    Rumbleverse, Apex Legends Mobile und Knockout City: Innerhalb weniger Tage heißt es Game Over für drei bekannte Multiplayerspiele.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • Mindfactory DAMN-Deals: Grakas, CPUs & Co. • HTC Vice 2 Pro Full Kit 899€ • RAM-Tiefstpreise • Amazon-Geräte bis -50% • Samsung TVs bis 1.000€ Cashback • Corsair HS80 7.1-Headset -42% • PCGH Cyber Week • Samsung Curved 27" WQHD 267,89€ • Samsung Galaxy S23 vorbestellbar [Werbung]
    •  /