CRIU, מערכת לשמירה ושחזור מצב התהליכים בלינוקס

CRIU (מחסום ושחזור במרחב המשתמשים) הוא כלי המאפשר לשמור את מצב אחד או קבוצת תהליכים ואז לחדש את העבודה מהמצב השמור, גם לאחר הפעלה מחדש של המערכת או בשרת אחר מבלי לנתק חיבורי רשת שכבר הוקמו.

בעזרת הכלי הזה, ניתן להקפיא יישום פועל (או חלק ממנו) ולשים אותו באחסון מתמשך כאוסף קבצים. לאחר מכן ניתן להשתמש בקבצים לשחזור והפעלת היישום מהמקום בו הוקפאה.

התכונה הייחודית של פרויקט CRIU זה הוא מיושם בעיקר במרחב המשתמשים ולא בגרעין.

אודות CRIU

כלי ה- CRIU מפותח כחלק מפרויקט OpenVZ, במטרה לעקוף את נקודת הביקורת / השחזור בגרעין.

למרות המוקד העיקרי שלה הוא לתמוך בהעברת מכולות, המאפשר למשתמשים לאמת ולשחזר את המצב הנוכחי של תהליכים פועלים וקבוצות תהליכים.

נכון לעכשיו, ניתן להשתמש בכלי במערכות x86-64 וב- ARM y תומך בפונקציות הבאות:

  • תהליכים: ההיררכיה שלהם, PID, מאמת משתמשים וקבוצות (UID, GID, SID וכו '), יכולות מערכת, שרשור, ומצבי הפעלה ועצירה
  • זיכרון יישום: קבצים ממופים זיכרון וזיכרון משותף
  • פתיחת קבצים
  • צינורות ו- FIFOs
  • שקעי דומיין של יוניקס
  • שקעי רשת, כולל שקעי TCP במצב ESTABLISHED
  • מערכת V IPC
  • שעוני
  • אותות
  • מסופים
  • ליבה קוראת למערכת ספציפית: inotify, signalfd, eventfdyepoll

בין אזורי היישום של טכנולוגיית CRIU, נצפה כי מערכת ההפעלה מופעלת מחדש מבלי להפריע לרציפות התהליכים הגירה חיה של מכולות מבודדות ארוכות טווח, מזרזת את ההשקה של תהליכים איטיים (יכולה להתחיל ממצב שמור לאחר האתחול), ביצוע עדכוני גרעין מבלי להפעיל מחדש את השירותים, חוסך מעת לעת מצב משימות ארוך טווח לחידוש העבודה במקרה של קריסה , איזון עומסים על פני צמתים מקובצים, שכפול תהליכים במחשב אחר (הסתעפות למערכת מרוחקת), צור תמונות של יישומי משתמשים במהלך הפעולה לצורך ניתוח במערכת אחרת או למקרה שתצטרך לבטל פעולות נוספות בתוכנית. CRIU משמש במערכות ניהול מכולות כגון OpenVZ, LXC / LXD ו- Docker.

על הגרסה החדשה של CRIU 3.15

נכון לעכשיו הכלי בגרסתו 3.15, שהושק לאחרונה והוא מציג את שירות criu-image-streamer, המאפשר העברת תמונות תהליך ישירות מ / אל CRIU במהלך פעולות הקפאה / שחזור.

  • ניתן להעביר תמונות מאחסון חיצוני (S3, GCS וכו ') מבלי להאגר במערכת הקבצים המקומית.
  • נוספה תמיכה בארכיטקטורת MIPS.
  • מותר להקפיא תהליכים שאינם שייכים למרחב שמות ה- PID הקיים, ואחריו לשחזר למרחב שמות ה- PID הקיים.
  • נוספו מנגנונים נוספים לאימות קבצים.
  • נוספה תמיכה להקפאה ושחזור של מבני BPF BPF_HASH_OF_MAPS ו- BPF_ARRAY_OF_MAPS.
  • נוסף תמיכה ראשונית בגירסה השנייה של cgroup.

כיצד להתקין CRIU בלינוקס?

מי שמעוניין להתקין כלי זה צריך לדעת שהוא זמין בערוצים הרשמיים של מרבית הפצות לינוקס.

אז על מנת להתקין את הכלי פשוט פתח מסוף ובעזרת מנהל החבילות שלך חפש את הכלי או השתמש באחת מהפקודות הבאות שאנו חולקים.

למקרה של מי שכן משתמשי דביאן, אובונטו ונגזרים משני אלה:

sudo apt install criu

בעוד עבור אלה שמשתמשים ב- ארץ לינוקס וכל הנגזרות שלו:

sudo pacman -S criu

במקרה של המשתמשים ב- שימוש פתוח:

sudo zypper install criu

בסופו של דבר למי שרוצה להרכיב את הכלי הם יכולים לעשות זאת על ידי הקלדה:

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

אם אתה רוצה לדעת יותר על זה לגבי כלי זה, תוכל לבדוק את הפרטים בקישור הבא.


השאירו את התגובה שלכם

כתובת הדוא"ל שלך לא תפורסם. שדות חובה מסומנים *

*

*

  1. אחראי לנתונים: מיגל אנחל גטון
  2. מטרת הנתונים: בקרת ספאם, ניהול תגובות.
  3. לגיטימציה: הסכמתך
  4. מסירת הנתונים: הנתונים לא יועברו לצדדים שלישיים אלא בהתחייבות חוקית.
  5. אחסון נתונים: מסד נתונים המתארח על ידי Occentus Networks (EU)
  6. זכויות: בכל עת תוכל להגביל, לשחזר ולמחוק את המידע שלך.