Release of CRIU 3.18, a system for saving and restoring the state of processes in Linux

The release of CRIU 3.18 (Checkpoint and Restore In Userspace) toolkit, designed to save and restore processes in user space, has been published. The toolkit allows you to save the state of one or a group of processes, and then resume work from the saved position, including after rebooting the system or on another server without breaking the already established network connections. The project code is distributed under the GPLv2 license.

Among the areas of application of CRIU technology, it is noted that the OS is rebooted without disrupting the continuity of the execution of long-running processes, Live-migration of isolated containers, accelerating the launch of slow processes (you can start working from the state saved after initialization), updating the kernel without restarting services, periodically saving the state of long-running computing tasks to resume work in the event of a crash, balancing the load on nodes in clusters, duplicating processes on another machine (fork to a remote system), creating snapshots of user applications in the process for analyzing them on another system or in case you need to cancel further actions in program. CRIU is used in container management systems such as OpenVZ, LXC/LXD, and Docker. The changes necessary for CRIU to work are included in the main composition of the Linux kernel.

In the new release:

  • Provided the ability to use CRIU without root rights.
  • Added support for the SIGTSTP signal (interactive pause signal, which, unlike SIGSTOP, can be handled and ignored).
  • Added parameter "--skip-file-rwx-check" to skip checking file permissions (r/w/x) when restoring.
  • Added support for IP_PKTINFO and IPV6_RECVPKTINFO options.
  • Support for hardware breakpoints has been implemented for ARM platforms.
  • Added savepoint optimization for highly sparse ghost files (--ghost-fiemap).

Source: opennet.ru

Add a comment