Die Veröffentlichung von CRIU 4.1, einem System zur Speicherung und Wiederherstellung des Zustands von Prozessen unter Linux

Nach sechs Monaten Entwicklung wurde die Version 4.1 des Tools CRIU (Checkpoint and Restore In Userspace) veröffentlicht, das fĂŒr das Speichern und Wiederherstellen von Prozessen im Benutzermodus konzipiert ist. Das Tool ermöglicht es, den Zustand eines oder mehrerer Prozesse zu speichern und dann von der gespeicherten Position aus fortzufahren, auch nach einem Neustart des Systems oder auf einem anderen Server, ohne bestehende Netzwerkverbindungen zu unterbrechen. Der Code des Projekts ist in C geschrieben und wird unter der GPLv2-Lizenz verbreitet. CRIU wird in Container-Orchestrierungssystemen wie OpenVZ, LXC/LXD und Docker eingesetzt. Die erforderlichen Änderungen fĂŒr CRIU sind in den Hauptkernel von Linux integriert.

Zu den Anwendungsbereichen der CRIU-Technologie zĂ€hlt die Bereitstellung eines Systemneustarts ohne Unterbrechung der AusfĂŒhrung langlaufender Prozesse, Live-Migration isolierter Container, Beschleunigung des Starts langsamer Prozesse (es kann mit einem Zustand begonnen werden, der nach der Initialisierung gespeichert wurde), DurchfĂŒhrung von Kernel-Updates ohne Neustart der Dienste, regelmĂ€ĂŸige Speicherung des Zustands langlaufender Berechnungsaufgaben zur Wiederaufnahme der Arbeit bei einem Absturz, Lastverteilung auf Knoten in Clustern, Duplizieren von Prozessen auf ein anderes GerĂ€t (Fork auf ein entferntes System), und das Erstellen von Snapshots von Benutzeranwendungen wĂ€hrend des Betriebs zur Analyse auf einem anderen System oder fĂŒr den Fall, dass weitere Aktionen im Programm zurĂŒckgezogen werden mĂŒssen.

In der neuen Version:

  • UnterstĂŒtzung fĂŒr die RISC-V-Architektur hinzugefĂŒgt.
  • Die UnterstĂŒtzung des PIDFD-Mechanismus wurde hinzugefĂŒgt, der die Verwendung von unverĂ€nderlichen Identifikatoren ermöglicht, die an ursprĂŒngliche Prozesse gebunden sind (eine normale PID kann einem anderen Prozess zugewiesen werden, nachdem der aktuelle Prozess, der mit dieser PID assoziiert ist, beendet wurde).
  • FĂŒr die ARM64-Plattform wurde die UnterstĂŒtzung fĂŒr Pointer Authentication Code (PAC) erweitert, die die ÜberprĂŒfung von RĂŒckgabepunkten mit digitalen Signaturen ermöglicht, die in den nicht verwendeten oberen Bits des Zeigers gespeichert sind.
  • Die Möglichkeiten zum Speichern und Wiederherstellen des Zustands von Anwendungen, die die NVIDIA CUDA-Technologie verwenden, wurden erweitert.
  • Es wurde die Möglichkeit hinzugefĂŒgt, das Netzwerk-Lock-Backend beim Build-Prozess auszuwĂ€hlen, ohne den Code Ă€ndern zu mĂŒssen. Das Backend kann durch Übertragung des Parameters NETWORK_LOCK_DEFAULT an das Make-Tool geĂ€ndert werden, der die Werte „NETWORK_LOCK_IPTABLES“, „NETWORK_LOCK_NFTABLES“ und „NETWORK_LOCK_SKIP“ zulĂ€sst.
  • Die UnterstĂŒtzung fĂŒr die Generierung von Coredump-Dateien fĂŒr die Architekturen Aarch64 und ARM wurde aktiviert.

Quelle: opennet.ru

60GB SSD 8Gb DDR4