Veröffentlichung des Container-Management-Systems Incus 0.3

Die dritte Ausgabe des Projekts Incus wurde vorgestellt, im Rahmen dessen die Community von Linux Containers einen Fork des Container-Management-Systems LXD entwickelt, das von dem ursprünglichen Entwicklerteam, das einst LXD erstellt hat, initiiert wurde. Der Code von Incus ist in der Programmiersprache Go geschrieben und wird unter der Apache 2.0-Lizenz veröffentlicht.

Wir erinnern daran, dass die Community der Linux-Container die Entwicklung von LXD beaufsichtigte, bevor Canonical beschloss, LXD als eigenes Unternehmensprojekt weiterzuentwickeln. Das Ziel des Forks ist es, eine verwaltete, von der Community unabhängige Alternative zu dem von Canonical kontrollierten Projekt LXD bereitzustellen. Im Rahmen des Projekts Incus ist auch geplant, einige konzeptionelle Fehler zu beheben, die bei der Entwicklung von LXD gemacht wurden und die zuvor ohne Kompromittierung der Abwärtskompatibilität nicht behoben werden konnten.

Incus bietet Mittel zur zentralen Verwaltung von Containern und virtuellen Maschinen, die sowohl auf einem einzelnen Host als auch in einem Cluster von mehreren bereitgestellt werden. Server. Das Projekt wird als Hintergrundprozess umgesetzt, der über das Netzwerk Anfragen über die REST-API entgegennimmt und verschiedene Backend-Speicher unterstützt (Verzeichnisbaum, ZFS, Btrfs, LVM). Es ermöglicht Snapshots mit Zustandsausschnitten, Live-Migration laufender Container von einer Maschine zur anderen sowie Tools zur Speicherung von Container-Images. Als Runtime zum Starten von Containern wird das LXC-Toolset verwendet, das die Bibliothek liblxc, eine Reihe von Dienstprogrammen (lxc-create, lxc-start, lxc-stop, lxc-ls usw.), Vorlagen zum Erstellen von Containern und eine Sammlung von Bindungen für verschiedene Programmiersprachen umfasst. Die Isolation erfolgt mithilfe der Standardmechanismen des Linux-Kernels (Namespaces, cgroups, AppArmor, SELinux, Seccomp).

Die auffälligsten Änderungen:

  • Die Unterstützung für die Benutzerautorisierung basierend auf dem Modell des Relationship-Based Access Control wurde hinzugefügt, das durch einen Hintergrundprozess von OpenFGA umgesetzt wird, der für die Entscheidungsfindung zur Vergabe von Berechtigungen an Benutzer verantwortlich ist. In Kombination mit dem Anbieter OpenID Connect ermöglicht die Unterstützung von OpenFGA die Schaffung eines offenen Identitäts- und Autorisierungsstacks, mit dem Incus als vollständiger Ersatz für die LXD-Konfigurationen mit Canonical RBAC verwendet werden kann. Zur Konfiguration des Zugriffs auf OpenFGA werden die Parameter openfga.api.token, openfga.api.url, openfga.store.id und openfga.store.model_id angeboten.
  • Das Tool lxd-to-incus wurde verbessert, um die Migration von LXD zu Incus zu automatisieren. In der neuen Version wurde die Unterstützung für Distributionen mit dem Initialisierungssystem OpenRC hinzugefügt, die Möglichkeit, Ceph-Speicher und OVN-Netzwerke zu migrieren, sowie die Protokollierung der Migration und die Erstellung von Backups realisiert.
  • In virtuellen Maschinen wurde vereinfacht. Die Unterstützung für dasheiße Anschließen und Entfernen (hot-plug/hot-remove) von Dateipfaden oder einzelnen Partitionen aus der Host-Umgebung wurde hinzugefügt. Bisher erforderte ein solcher Durchgang über den virtio-fs-Treiber oder das 9p-Dateisystem das Stoppen der virtuellen Maschine. Um diese Einschränkung zu umgehen, wurde die Fähigkeit von QEMU zur heißen Anbindung von PCI-Geräten und zur Einbindung von Pfaden innerhalb des Gastsystems über den incus-agent genutzt.

Quelle: opennet.ru

Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Servern 🔥 Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Servern | ProHoster