CRIU, un sistem pentru salvarea și restabilirea stării proceselor în Linux

CRIU (Punct de verificare și restaurare în spațiul utilizatorilor) este un instrument care vă permite să salvați starea unuia sau a unui grup de procese și apoi reluați lucrul din poziția salvată, chiar și după repornirea sistemului sau pe un alt server fără a întrerupe conexiunile de rețea deja stabilite.

Cu acest instrument, este posibilă înghețarea unei aplicații care rulează (sau o parte din el) și puneți-l pe stocarea persistentă ca o colecție de fișiere. Fișierele pot fi apoi utilizate pentru a restaura și rula aplicația de unde a fost înghețată.

Trăsătura distinctivă al proiectului CRIU este că este implementat în principal în spațiul utilizatorului, mai degrabă decât în ​​nucleu.

Despre CRIU

Instrumentul CRIU este dezvoltat ca parte a proiectului OpenVZ, cu scopul de a suprascrie punctul de control / restaurare din nucleu.

Deși accentul lor principal este susținerea migrării containerelor, permițând utilizatorilor să verifice și să restabilească starea actuală a proceselor în curs de desfășurare și a grupurilor de proces.

În prezent, instrumentul poate fi utilizat pe sistemele x86-64 și ARM y acceptă următoarele funcții:

  • Procese: ierarhia lor, PID-urile, autentificatorii de utilizator și de grup (UID, GID, SID etc.), capabilitățile sistemului, firele și stările de rulare și oprire
  • Memoria aplicației: fișiere mapate de memorie și memorie partajată
  • Deschideți fișierele
  • Țevi și FIFO
  • Socluri de domeniu Unix
  • Socluri de rețea, inclusiv socluri TCP în starea STABILITĂ
  • Sistemul V IPC
  • Cronometre
  • Semnale
  • Terminale
  • Kernel apelează la sistemul specific: inotify, signalfd, eventfdyepoll

Între domeniile de aplicare de tehnologie CRIU, se observă că sistemul de operare repornește fără a întrerupe continuitatea proceselor migrarea live a containerelor izolate de lungă durată, accelerarea lansării proceselor lente (poate începe de la starea salvată după inițializare), efectuarea actualizărilor de nucleu fără repornirea serviciilor, salvarea periodică a stării de funcționare de lungă durată a sarcinilor pentru a relua activitatea în caz de blocare , echilibrul de încărcare între noduri grupate, procese duplicate pe o altă mașină (ramificație către un sistem la distanță), creați instantanee ale aplicațiilor utilizatorului în timpul funcționării pentru analiză pe alt sistem sau în cazul în care trebuie să anulați mai multe acțiuni în program. CRIU este utilizat în sisteme de gestionare a containerelor precum OpenVZ, LXC / LXD și Docker.

Despre noua versiune a CRIU 3.15

În prezent, instrumentul se află în versiunea sa 3.15, care a fost lansat recent și introduce serviciul criu-image-streamer, care permite transmiterea imaginilor de proces direct de la / către CRIU în timpul operațiilor de înghețare / restaurare.

  • Imaginile pot fi transferate din stocarea externă (S3, GCS etc.) fără tamponare pe sistemul de fișiere local.
  • A fost adăugat suport pentru arhitectura MIPS.
  • Permisă înghețarea proceselor care nu aparțin spațiului de nume PID existent, urmată de restabilirea spațiului de nume PID existent.
  • Au fost adăugate mecanisme suplimentare pentru verificarea fișierelor.
  • S-a adăugat suport pentru înghețarea și restaurarea structurilor BPF BPF_HASH_OF_MAPS și BPF_ARRAY_OF_MAPS.
  • A fost adăugat suportul inițial pentru a doua versiune de cgroup.

Cum se instalează CRIU pe Linux?

Cei care sunt interesați să instaleze acest instrument ar trebui să știe că este disponibil în canalele oficiale ale majorității distribuțiilor Linux.

Deci, pentru a instala instrumentul doar deschideți un terminal și, cu ajutorul managerului de pachete, căutați instrumentul sau utilizați una dintre următoarele comenzi pe care le partajăm.

Pentru cazul celor care sunt Utilizatorii Debian, Ubuntu și derivații acestor două:

sudo apt install criu

În timp ce pentru cei care sunt utilizatori de Arch Linux și orice derivate ale acestuia:

sudo pacman -S criu

În cazul celor care sunt utilizatori ai opensuse:

sudo zypper install criu

În cele din urmă pentru cei care doresc să compileze instrumentul o pot face tastând:

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

Dacă doriți să aflați mai multe despre asta despre acest instrument, puteți verifica detaliile În următorul link.

 


Conținutul articolului respectă principiile noastre de etică editorială. Pentru a raporta o eroare, faceți clic pe aici.

Fii primul care comenteaza

Lasă comentariul tău

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

*

*

  1. Responsabil pentru date: Miguel Ángel Gatón
  2. Scopul datelor: Control SPAM, gestionarea comentariilor.
  3. Legitimare: consimțământul dvs.
  4. Comunicarea datelor: datele nu vor fi comunicate terților decât prin obligație legală.
  5. Stocarea datelor: bază de date găzduită de Occentus Networks (UE)
  6. Drepturi: în orice moment vă puteți limita, recupera și șterge informațiile.