Veröffentlichung von CRIU 3.16, einem System zum Speichern und Wiederherstellen des Status von Prozessen unter Linux

Die Veröffentlichung des Toolkits CRIU 3.16 (Checkpoint and Restore In Userspace) wurde veröffentlicht, das zum Speichern und Wiederherstellen von Prozessen im Userspace entwickelt wurde. Mit dem Toolkit können Sie den Status eines Prozesses oder einer Gruppe von Prozessen speichern und dann die Arbeit an der gespeicherten Position fortsetzen, auch nach einem Systemneustart oder auf einem anderen Server, ohne bereits bestehende Netzwerkverbindungen zu unterbrechen. Der Projektcode wird unter der GPLv2-Lizenz vertrieben.

Zu den Anwendungsbereichen der CRIU-Technologie gehören die Sicherstellung von Betriebssystem-Neustarts ohne Unterbrechung der Kontinuität der Ausführung lang laufender Prozesse, die Live-Migration isolierter Container, die Beschleunigung des Starts langsamer Prozesse (Sie können mit der Arbeit aus dem nach der Initialisierung gespeicherten Zustand beginnen) und die Kernel-Ausführung Aktualisierungen ohne Neustart von Diensten, regelmäßiges Speichern des Status lang laufender Prozesse. Rechenaufgaben zur Wiederaufnahme der Arbeit im Falle eines Absturzes, Ausgleich der Last auf Knoten in Clustern, Duplizieren von Prozessen auf einer anderen Maschine (Fork zu einem Remote-System), 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 abgebrochen werden müssen. CRIU wird in Container-Management-Systemen wie OpenVZ, LXC/LXD und Docker verwendet. Die für die Funktionsfähigkeit von CRIU erforderlichen Änderungen sind im Haupt-Linux-Kernel enthalten.

In der neuen Version:

  • Добавлена команда criu-ns, позволяющая восстановить сохранённый слепок процесса с новым идентификатором PID и в отдельном пространстве имён точек монтирования (mount namespace). Запуск с другим PID может потребоваться, например, в случае, если старый PID уже используется в системе.
  • Реализована возможность сохранения и восстановления слепков состояния вложенных профилей apparmor.
  • Реализована блокировка и разблокировка сетевых ресурсов на базе nftables.
  • Добавлена поддержка восстановления предварительно созданных устройств veth.
  • Улучшена поддержка восстановления контейнеров в существующие pod-ы.
  • Для RPC-клиентов добавлена возможность определения повторного использования PID, реализованная при помощи механизма pidfd.
  • Лицензия на все proto-файлы в каталоге images/ изменена на MIT.

Source: opennet.ru

Kommentar hinzufügen