เบเบฒเบ™เบ›เปˆเบญเบ CRIU 3.16, เบฅเบฐเบšเบปเบšเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เบฐเบซเบเบฑเบ”เปเบฅเบฐเบเบฒเบ™เบŸเบทเป‰เบ™เบŸเบนเบชเบฐเบ–เบฒเบ™เบฐเบ‚เบญเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เปƒเบ™ Linux

เบเบฒเบ™เบ›เปˆเบญเบเบŠเบธเบ”เป€เบ„เบทเปˆเบญเบ‡เบกเบท CRIU 3.16 (Checkpoint and Restore In Userspace) เป„เบ”เป‰เบ–เบทเบเป€เบœเบตเบเปเบœเปˆ, เบญเบญเบเปเบšเบšเบกเบฒเป€เบžเบทเปˆเบญเบšเบฑเบ™เบ—เบถเบ เปเบฅเบฐเบŸเบทเป‰เบ™เบŸเบนเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ•เปˆเบฒเบ‡เป†เปƒเบ™เบžเบทเป‰เบ™เบ—เบตเปˆเบœเบนเป‰เปƒเบŠเป‰. เบŠเบธเบ”เป€เบ„เบทเปˆเบญเบ‡เบกเบทเบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบšเบฑเบ™เบ—เบถเบเบชเบฐเบ–เบฒเบ™เบฐเบ‚เบญเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบซเบ™เบถเปˆเบ‡เบซเบผเบทเบเบธเปˆเบก, เปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบชเบทเบšเบ•เปเปˆเป€เบฎเบฑเบ”เบงเบฝเบเบˆเบฒเบเบ•เปเบฒเปเบซเบ™เปˆเบ‡เบ—เบตเปˆเบšเบฑเบ™เบ—เบถเบเป„เบงเป‰, เบฅเบงเบกเบ—เบฑเบ‡เบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เบ›เบดเบ”เบฅเบฐเบšเบปเบšเบซเบผเบทเปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบญเบทเปˆเบ™, เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เบ—เปเบฒเบฅเบฒเบเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเป€เบ„เบทเบญเบ‚เปˆเบฒเบเบ—เบตเปˆเบ•เบฑเป‰เบ‡เป„เบงเป‰เปเบฅเป‰เบง. เบฅเบฐเบซเบฑเบ”เป‚เบ„เบ‡เบเบฒเบ™เปเบกเปˆเบ™เปเบˆเบเบขเบฒเบเบžเบฒเบเปƒเบ•เป‰เปƒเบšเบญเบฐเบ™เบธเบเบฒเบ” GPLv2.

เบžเบทเป‰เบ™เบ—เบตเปˆเบ‚เบญเบ‡เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เป€เบ•เบฑเบเป‚เบ™เป‚เบฅเบขเบต CRIU เบ›เบฐเบเบญเบšเบกเบตเบเบฒเบ™เบฎเบฑเบšเบ›เบฐเบเบฑเบ™ OS reboots เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เบฅเบปเบšเบเบงเบ™เบเบฒเบ™เบชเบทเบšเบ•เปเปˆเบ‚เบญเบ‡เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ—เบตเปˆเบเบฒเบงเบ™เบฒเบ™, เบเบฒเบ™เป€เบ„เบทเปˆเบญเบ™เบเป‰เบฒเบเปเบšเบšเบชเบปเบ”เป†เบ‚เบญเบ‡เบ•เบนเป‰เบ„เบญเบ™เป€เบ—เบ™เป€เบ™เบตเบ—เบตเปˆเป‚เบ”เบ”เบ”เปˆเบฝเบง, เป€เบฅเบฑเปˆเบ‡เบเบฒเบ™เป€เบ›เบตเบ”เบ•เบปเบงเบ‚เบญเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบŠเป‰เบฒ (เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบˆเบฒเบเบฅเบฑเบ”เบ—เบตเปˆเบšเบฑเบ™เบ—เบถเบเป„เบงเป‰เบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™), เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™ kernel. เบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™ restart เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™, เป€เบ›เบฑเบ™เป„เบฅเบเบฐเป€เบงเบฅเบฒเบเบฒเบ™เบ›เบฐเบซเบเบฑเบ”เบชเบฐเบ–เบฒเบ™เบฐเบ‚เบญเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เปเบฅเปˆเบ™เบเบฒเบง. เบงเบฝเบเบ‡เบฒเบ™เบ„เบญเบกเบžเบดเบงเป€เบ•เบตเป€เบžเบทเปˆเบญเบชเบทเบšเบ•เปเปˆเป€เบฎเบฑเบ”เบงเบฝเบเปƒเบ™เบเปเบฅเบฐเบ™เบตเบ‚เบญเบ‡เบญเบธเบ›เบฐเบ•เบดเป€เบซเบ”, เบเบฒเบ™เบ”เบธเปˆเบ™เบ”เปˆเบฝเบ‡เบเบฒเบ™เป‚เบซเบผเบ”เปƒเบ™ nodes เปƒเบ™ clusters, duplicating เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เบญเบทเปˆเบ™ (เบชเป‰เบญเบกเบเบฑเบšเบฅเบฐเบšเบปเบšเบซเปˆเบฒเบ‡เป„เบเบชเบญเบเบซเบผเบตเบ), เบชเป‰เบฒเบ‡ snapshots เบ‚เบญเบ‡. เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบ‚เบญเบ‡เบœเบนเป‰เปƒเบŠเป‰เปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‡เบฒเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบงเบดเป€เบ„เบฒเบฐเปƒเบ™เบฅเบฐเบšเบปเบšเบญเบทเปˆเบ™เบซเบผเบทเปƒเบ™เบเปเบฅเบฐเบ™เบตเบ—เบตเปˆเบกเบตเบ„เบงเบฒเบกเบˆเปเบฒเป€เบ›เบฑเบ™เบ—เบตเปˆเบˆเบฐเบเบปเบเป€เบฅเบตเบเบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเปƒเบ™เป‚เบ„เบ‡เบเบฒเบ™. CRIU เบ–เบทเบเปƒเบŠเป‰เปƒเบ™เบฅเบฐเบšเบปเบšเบเบฒเบ™เบˆเบฑเบ”เบเบฒเบ™เบšเบฑเบ™เบˆเบธเป€เบŠเบฑเปˆเบ™ OpenVZ, LXC/LXD เปเบฅเบฐ Docker. เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ—เบตเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบชเปเบฒเบฅเบฑเบš CRIU เป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เบงเบฝเบเปเบกเปˆเบ™เบฅเบงเบกเบขเบนเปˆเปƒเบ™เปเบเปˆเบ™ Linux เบ•เบปเป‰เบ™เบ•เป.

เปƒเบ™เบเบฒเบ™เบ›เปˆเบญเบเปƒเบซเบกเปˆ:

  • เป€เบžเบตเปˆเบกเบ„เปเบฒเบชเบฑเปˆเบ‡ criu-ns เป€เบžเบทเปˆเบญเบŸเบทเป‰เบ™เบŸเบนเบเบฒเบ™เบ–เปˆเบฒเบเบžเบฒเบšเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ—เบตเปˆเบšเบฑเบ™เบ—เบถเบเป„เบงเป‰เบ”เป‰เบงเบ PID เปƒเบซเบกเปˆเปเบฅเบฐเปƒเบ™ namespace mount เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ. เบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เป‰เบงเบ PID เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เบญเบฒเบ”เบˆเบฐเบกเบตเบ„เบงเบฒเบกเบˆเปเบฒเป€เบ›เบฑเบ™, เบ•เบปเบงเบขเปˆเบฒเบ‡เป€เบŠเบฑเปˆเบ™, เบ–เป‰เบฒ PID เป€เบเบปเปˆเบฒเบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เปƒเบ™เบฅเบฐเบšเบปเบšเปเบฅเป‰เบง.
  • เบ„เบงเบฒเบกโ€‹เบชเบฒโ€‹เบกเบฒเบ”โ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เบŠเปˆเบงเบโ€‹เบ›เบฐโ€‹เบขเบฑเบ”โ€‹เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เบŸเบทเป‰เบ™โ€‹เบŸเบนโ€‹เบžเบฒเบšโ€‹เบ–เปˆเบฒเบโ€‹เบ‚เบญเบ‡โ€‹เบชเบฐโ€‹เบ–เบฒโ€‹เบ™เบฐโ€‹เบ‚เบญเบ‡โ€‹เบฎเบนเบšโ€‹เปเบšเบš apparmor เบฎเบฑเบ‡โ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบเบฒเบ™โ€‹เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹.
  • เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบชเบฐเบเบฑเบ”เปเบฅเบฐเบเบฒเบ™เบเบปเบเป€เบฅเบตเบเบเบฒเบ™เบชเบฐเบเบฑเบ”เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เป€เบ„เบทเบญเบ‚เปˆเบฒเบเป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆ nftables.
  • เป€เบžเบตเปˆเบกเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบŸเบทเป‰เบ™เบŸเบนเบญเบธเบ›เบฐเบเบญเบ™ veth เบ—เบตเปˆเบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™เบเปˆเบญเบ™.
  • เบ›เบฑเบšเบ›เบธเบ‡เบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบŸเบทเป‰เบ™เบŸเบนเบžเบฒเบŠเบฐเบ™เบฐเปƒเบชเปˆเบเบฑเบเบ—เบตเปˆเบกเบตเบขเบนเปˆ.
  • เบชเปเบฒเบฅเบฑเบšเบฅเบนเบเบ„เป‰เบฒ RPC, เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบเปเบฒเบ™เบปเบ” PID reuse เป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบก, เบ›เบฐเบ•เบดเบšเบฑเบ”เป‚เบ”เบเปƒเบŠเป‰เบเบปเบ™เป„เบ pidfd.
  • เปƒเบšเบญเบฐเบ™เบธเบเบฒเบ”เบชเปเบฒเบฅเบฑเบšเป„เบŸเบฅเปŒ proto เบ—เบฑเบ‡เบซเบกเบปเบ”เปƒเบ™เบฎเบนเบšเบžเบฒเบš / เป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเป„เบ”เป‰เบ–เบทเบเบ›เปˆเบฝเบ™เป€เบ›เบฑเบ™ MIT.

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: opennet.ru

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™