Публикувана е версия на инструмента CRIU 3.16 (Checkpoint and Restore In Userspace), предназначен за запазване и възстановяване на процеси в потребителското пространство. Инструментът позволява да се запази състоянието на един или група процеси, след което да се възобнови работа от запазената позиция, включително след рестартиране на системата или на друг сървър без прекъсване на вече установените мрежови връзки. Кодът на проекта се разпространява под лиценза GPLv2.
От областите на приложение на технологията CRIU се откроява осигуряването на рестартиране на ОС без нарушаване на непрекъснатостта на изпълнението на продължителни процеси, Live миграция на изолирани контейнери, ускорение на стартиране на бавни процеси (може да започнете работа от състояние, запазено след инициализация), извършване на обновления на ядрото без перезапускане на услугите, периодично запазване на състоянието на дългосрочни изчислителни задачи за възобновяване на работа в случай на срив, балансиране на натоварването на възлите в клъстери, дублиране на процеси на друга машина (fork на отдалечена система), създаване на снимки на потребителски приложения в процеса на работа за анализ на друга система или в случай, че се наложи да отмените по-нататъшните действия в програмата. CRIU се прилага в системи за управление на контейнери като OpenVZ, LXC/LXD и Docker. Необходимите за работа с CRIU промени са включени в основния състав на ядрото на Linux.
В новото издание:
- Добавена е команда criu-ns, която позволява възстановяване на запазена снимка на процеса с нов идентификатор PID и в отделно пространство на имената на точки за монтиране (mount namespace). Стартирането с друг PID може да е необходимо, например, ако старият PID вече се използва в системата.
- Реализирана е възможност за запазване и възстановяване на снимки на състоянието на вложени профили apparmor.
- Реализирана е блокировка и разблокировка на мрежови ресурси на база nftables.
- Добавена е поддръжка за възстановяване на предварително създадени устройства veth.
- Подобрена е поддръжката за възстановяване на контейнери в съществуващи pod-ове.
- За RPC-клиентите е добавена възможност за определяне на повторно използване на PID, реализирана чрез механизма pidfd.
- Лицензът на всички proto-файлове в директорията images/ е променен на MIT.
Източник: opennet.ru
