Release von CRIU 3.16, einem System zur Speicherung und Wiederherstellung des Zustands von Prozessen in Linux

Die Veröffentlichung des CRIU-Tools 3.16 (Checkpoint and Restore In Userspace) steht zur Verfügung und dient der Speicherung und Wiederherstellung von Prozessen im Benutzerspeicher. Das Tool ermöglicht es, den Zustand eines oder mehrerer Prozesse zu speichern und dann die Arbeit von diesem gespeicherten Punkt aus fortzusetzen, auch nach einem Neustart des Systems oder auf einem anderen Server, ohne bestehende Netzwerkverbindungen zu unterbrechen. Der Projektcode wird unter der GPLv2-Lizenz vertrieben.

Zu den Anwendungsbereichen der CRIU-Technologie zählt die Gewährleistung eines OS-Neustarts ohne Unterbrechung der Ausführung von lang laufenden Prozessen, Live-Migration von isolierten Containern, Beschleunigung des Starts langsamer Prozesse (man kann die Arbeit ab einem nach der Initialisierung gespeicherten Zustand beginnen), Durchführung von Kernel-Updates ohne Dienstneustart, regelmäßiges Speichern des Status lang laufender Berechnungsaufgaben zur Wiederaufnahme der Arbeit im Falle eines Absturzes, Lastenverteilung auf Knoten in Clustern, Duplizierung von Prozessen auf ein anderes System (Fork auf ein entferntes System), sowie das Erstellen von Snapshots von Benutzeranwendungen während ihres Betriebs zur Analyse auf einem anderen System oder für den Fall, dass weitere Aktionen im Programm zurückgenommen werden müssen. CRIU wird in Containerverwaltungssystemen wie OpenVZ, LXC/LXD und Docker verwendet. Die für die Funktion von CRIU erforderlichen Änderungen sind im Hauptkern des Linux-Kernels enthalten.

In der neuen Version:

  • Das Kommando criu-ns wurde hinzugefügt, das die Wiederherstellung einer gespeicherten Prozessabbildung mit einer neuen PID und in einem separaten Mount-Namespace ermöglicht. Der Start mit einer anderen PID kann erforderlich sein, wenn die alte PID bereits im System verwendet wird.
  • Die Möglichkeit zur Speicherung und Wiederherstellung von Snapshots des Zustands von verschachtelten AppArmor-Profilen wurde realisiert.
  • Die Sperrung und Entsperrung von Netzwerkressourcen auf Basis von nftables wurde implementiert.
  • Die Unterstützung für die Wiederherstellung zuvor erstellter veth-Geräte wurde hinzugefügt.
  • Die Unterstützung für die Wiederherstellung von Containern in bestehende Pods wurde verbessert.
  • Für RPC-Kunden wurde die Möglichkeit zur Bestimmung der Wiederverwendung von PIDs hinzugefügt, die durch das pidfd-Mechanismus implementiert wurde.
  • Die Lizenz für alle Proto-Dateien im Verzeichnis images/ wurde auf MIT geändert.

Quelle: opennet.ru

60GB SSD 8Gb DDR4