CRIU, in systeem om de tastân fan prosessen yn Linux te bewarjen en te herstellen

CRIU (Kontrolepunt en weromsette yn brûkersromte) is in ark wêrmei jo de steat fan ien as in groep prosessen kinne bewarje en werhelje dan wurk fanút de bewarre posysje, sels nei it opnij opstarten fan it systeem of op in oare server sûnder al fêststelde netwurkferbiningen te brekken.

Mei dit ark, it is mooglik in rinnende applikaasje te friezen (of in diel dêrfan) en set it op persistente opslach as in samling bestannen. De bestannen kinne dan wurde brûkt om de applikaasje te werstellen en út te fieren fanôf wêr't it beferzen wie.

It ûnderskiedende skaaimerk fan it CRIU-projekt is dat it wurdt primêr ymplementeare yn brûkersromte, yn plak fan yn 'e kernel.

Oer CRIU

It CRIU-ark wurdt ûntwikkele as ûnderdiel fan it OpenVZ-projekt, mei as doel it kontrôlepunt / weromsette yn 'e kernel te oerskriuwen.

Hoewol har primêre fokus is it stypjen fan kontenermigraasje, wêrtroch brûkers de hjoeddeistige steat fan rinnende prosessen en prosesgroepen ferifiearje en werstelle.

Op it stuit, it ark kin brûkt wurde op x86-64 en ARM-systemen y stipet de folgjende funksjes:

  • Prosessen: har hiërargy, PID's, brûkers- en groepautentisearders (UID, GID, SID, ensfh.), Systeemfunksjes, threads, en rinnende en stopte steaten
  • Applikaasje ûnthâld: ûnthâld yn kaart brocht bestannen en dielde ûnthâld
  • Bestannen iepenje
  • Pipes en FIFO's
  • Unix domein sockets
  • Netwurk sockets, ynklusyf TCP sockets yn 'e ESTABLISHED steat
  • Systeem V IPC
  • Timers
  • sinjalen
  • Terminals
  • Kernel ropt nei spesifyk systeem: inotify, signalfd, eventfdyepoll

Tusken tapassingsgebieten fan CRIU-technology wurdt dat beoardiele it bestjoeringssysteem begjint opnij sûnder de kontinuïteit fan 'e prosessen te ûnderbrekken langrinnende, isolearre kontener live migraasje, rapper de lansearring fan trage prosessen (kin begjinne fan bewarre tastân nei inisjalisaasje), kernelupdates útfiere sûnder tsjinsten opnij te meitsjen, periodyk bewarje fan langsteande steat fan taken om wer te wurkjen yn gefal fan in crash , loadbalâns oer klustere knooppunten, duplisearje prosessen op in oare masine (ôfdieling nei in systeem op ôfstân), meitsje snapshots fan brûkersapplikaasjes tidens operaasje foar analyse op in oar systeem of as jo mear aksjes yn programma moatte annulearje. CRIU wurdt brûkt yn containerbehearsystemen lykas OpenVZ, LXC / LXD, en Docker.

Oer de nije ferzje fan CRIU 3.15

Op it stuit is it ark yn 'e ferzje 3.15, dat is koartlyn lansearre en it yntroduseart de criu-image-streamer-tsjinst, wêrtroch de oerdracht fan prosesôfbyldings direkt fan / nei CRIU's mooglik makket by befriezen / weromsette.

  • Ofbyldings kinne wurde oerdroegen fan eksterne opslach (S3, GCS, ensfh.) Sûnder buffering op it lokale bestânsysteem.
  • Stipe foar MIPS-arsjitektuer waard tafoege.
  • Tastien om prosessen te friezen dy't net ta de besteande PID-nammeromte hearre, folge troch weromsette nei de besteande PID-nammeromte.
  • Oanfoljende meganismen waarden tafoege om bestannen te ferifiearjen.
  • Tafoege stipe foar it befriezen en herstellen fan BPF-struktueren BPF_HASH_OF_MAPS en BPF_ARRAY_OF_MAPS.
  • Inisjele stipe tafoege foar de twadde ferzje fan cgroup.

Hoe ynstalleare CRIU op Linux?

Dyjingen dy't ynteressearre binne yn it ynstallearjen fan dit ark moatte wite dat it beskikber is binnen de offisjele kanalen fan 'e measte Linux-distribúsjes.

Dat om it ark te ynstallearjen iepenje gewoan in terminal en sykje mei de help fan jo pakketbehearder it ark of brûk ien fan 'e folgjende kommando's dy't wy diele.

Foar it gefal fan dejingen dy't binne Debian, Ubuntu-brûkers en derivaten fan dizze twa:

sudo apt install criu

Wylst foar dyjingen dy't brûkers binne fan Arch Linux en alle derivaten dêrfan:

sudo pacman -S criu

Yn it gefal fan dyjingen dy't brûkers binne fan iepenje:

sudo zypper install criu

finalmente foar dyjingen dy't it ark wolle kompilearje se kinne it dwaan troch te typen:

git clone https://github.com/checkpoint-restore/criu.git
cd criu
make clean
make
make install
sudo criu check
sudo criu check --all

As jo ​​der mear oer witte wolle oer dit ark kinne jo de details kontrolearje Yn 'e folgjende link.

 


De ynhâld fan it artikel hâldt him oan ús prinsipes fan redaksje etyk, Om in flater te melden klikje hjir.

Wês de earste om kommentaar

Lit jo reaksje efter

Jo e-mailadres wurdt net publisearre.

*

*

  1. Ferantwurdlik foar de gegevens: Miguel Ángel Gatón
  2. Doel fan 'e gegevens: Control SPAM, kommentaarbehear.
  3. Legitimaasje: jo tastimming
  4. Kommunikaasje fan 'e gegevens: De gegevens wurde net oan tredden kommunisearre, útsein troch wetlike ferplichting.
  5. Gegevensopslach: Databank hoste troch Occentus Networks (EU)
  6. Rjochten: Op elk momint kinne jo jo ynformaasje beheine, herstelle en wiskje.

bool (wier)