Выпуск CRIU 3.19, систСмы для сохранСния ΠΈ восстановлСния состояния процСссов Π² Linux

ΠžΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ выпуск инструмСнтария CRIU 3.19 (Checkpoint and Restore In Userspace), ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½ΠΎΠ³ΠΎ для сохранСния ΠΈ восстановлСния процСссов Π² пространствС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ позволяСт ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ состояниС ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ»ΠΈ Π³Ρ€ΡƒΠΏΠΏΡ‹ процСссов, Π° Π·Π°Ρ‚Π΅ΠΌ Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ с сохранённой ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ, Π² Ρ‚ΠΎΠΌ числС послС ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ систСмы ΠΈΠ»ΠΈ Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΌ сСрвСрС Π±Π΅Π· Ρ€Π°Π·Ρ€Ρ‹Π²Π° ΡƒΠΆΠ΅ установлСнных сСтСвых соСдинСний. Код ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° распространяСтся ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ GPLv2.

Из областСй примСнСния Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ CRIU отмСчаСтся обСспСчСниС ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ОБ Π±Π΅Π· Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΡ нСпрСрывности выполнСния Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ выполняСмых процСссов, Live-миграция ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ², ускорСниС запуска ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹Ρ… процСссов (ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Ρ‡Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ с состояния, сохранённого послС ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ), ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ ядра Π±Π΅Π· пСрСзапуска сСрвисов, пСриодичСскоС сохранСниС состояния долговыполняСмых Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡ для возобновлСния Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π² случаС ΠΊΡ€Π°Ρ…Π°, балансировка Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π½Π° ΡƒΠ·Π»Ρ‹ Π² кластСрах, Π΄ΡƒΠ±Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ процСссов Π½Π° Π΄Ρ€ΡƒΠ³ΡƒΡŽ ΠΌΠ°ΡˆΠΈΠ½Ρƒ (fork Π½Π° ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΡƒΡŽ систСму), созданиС ΡΠ½Π°ΠΏΡˆΠΎΡ‚ΠΎΠ² ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² процСссС Ρ€Π°Π±ΠΎΡ‚Ρ‹ для ΠΈΡ… Π°Π½Π°Π»ΠΈΠ·Π° Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ систСмС ΠΈΠ»ΠΈ Π½Π° случай Ссли потрСбуСтся ΠΎΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ дальнСйшиС дСйствия Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅. CRIU примСняСтся Π² Ρ‚Π°ΠΊΠΈΡ… систСмах управлСния ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°ΠΌΠΈ, ΠΊΠ°ΠΊ OpenVZ, LXC/LXD ΠΈ Docker. НСобходимыС для Ρ€Π°Π±ΠΎΡ‚Ρ‹ CRIU измСнСния Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π² основной состав ядра Linux.

Π’ Π½ΠΎΠ²ΠΎΠΌ выпускС Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ Π½Π°Π±ΠΎΡ€Π° ΠΊΠΎΠΌΠ°Π½Π΄ LoongArch64, примСняСмой Π² китайских процСссорах Loongson 3A5000/3B5000/3C5000 ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰Π΅ΠΉ RISC ISA, ΠΏΠΎΡ…ΠΎΠΆΠΈΠΉ Π½Π° MIPS ΠΈ RISC-V. Для Π½ΠΎΠ²Ρ‹Ρ… процСссоров Intel Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° инструкции XSAVE. Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΌΠΈΠ³Ρ€Π°Ρ†ΠΈΠΈ настройки prctl(NO_NEW_PRIVS) ΠΈ обСспСчСно восстановлСниС настройки prctl(THP_DISABLE). ΠŸΡ€Π΅ΠΊΡ€Π°Ρ‰Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Python 2.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru