4 דרכים לגיבוי של הגדרות המארח של ESXi

הווירטואליזציה מציעה מספר יתרונות לפעולות גיבוי ושחזור, הן גב המערכת של הגנת הנתונים, הרצת המערכת והזמינות. המרכזי ביותר הוא שהווירטואליזציה מאפשרת גיבויים ללא סוכן ובהתבנית תמונה, ברמת המארח. סוגים אלו של גיבויים יכולים ללכוד את ה-VM המלא, כולל תצורת VM וגם נתוני VM.

עם זאת, חשוב להגן גם על המארחים, מאחר ומארחי ESXi בריאים הם חשובים עבור הרצת ה-VM. מומלץ גם לגבות את תצורת ה-ESXi, מאחר וגיבוי מארח פעיל יכול לעזור לך לשחזר את תצורת המארח בדקות, ללא צורך להתקין שרת ESXi מתחילה. המשך הקריאה כדי ללמוד את השיטות השונות לגבות מארח ESXi.

שיטה 1: שימוש בשורת הפקודה של ESXi כדי לגבות את מארחי ESXi

שימוש בשורת הפקודה של ESXi היא השיטה הכי זולה לגבות את תצורת המארח של ESXi. אין צורך להתקין תוכנה נוספת כדי להשתמש בשורת הפקודה של ESXi. עליך רק ל- אפשר את של ה-ESXi וגישה מרחוק דרך SSH למארח ESXi . לאחר שהתחברת למארח ESXi שלך דרך SSH, תוכל להפעיל את הפקודות.

התצורה של ESXi נשמרת אוטומטית כל שעה לקובץ /bootblank/state.tgz. לכן, עליך לוודא שהתצורה הנוכחית של ESXi נכתבת לקבצי התצורה של ESXi כרגע, כדי לוודא שכל השינויים שבוצעו בתצורת ESXi מאז השמירה האוטומטית האחרונה נשמרים. כדי לעשות זאת:
בדוק וסנכרן את תצורת ה-ESXi עם אחסון קבוע:
vim-cmd hostsvc/firmware/sync_config

  1. בדוק ומקביל את ה構כן של ESXi עם מאחז קבוע:

    vim-cmd hostsvc/firmware/sync_config

  2. הגב את ה構כן של ESXi ברגע שהסנכרון הושלם:

    vim-cmd hostsvc/firmware/backup_config

    כתוצאה מכך, תקבל קישור להורדת הארכיון configBundle.tgz מהשרת ESXi.

    http://*/downloads/UUID/configBundle-ESXiNameOrIPAddress.tgz

  3. החלף את הכוכבית (*) בכתובת ה-IP של המארח שלך ESXi. קובץ הארכיון שמכיל את גיבוי התצורה של ESXi נשמר בתיקייה /scratch/downloads לזמן קצר (מספר דקות).

    ניתן למצוא את כתובת ה-IP של מארח ה-ESXi שלך בממשק המקריא הישיר של ESXi או בשורת הפקודה עם הפקודה:

    esxcli network ip interface ipv4 get

    כתובת ה-IP של מארח ה-ESXi המשמשת בדוגמה הנוכחית היא 192.168.101.208

  4. הורד את ארכיון גיבוי ה-ESXi בהקדם האפשרי ואחסן אותו במקום בטוח.

כיצד לאוטומטזיה גיבוי תצורת ESXi בשורת הפקודה של ESXi

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

  1. צור תיקייה לאחסון קבצי גיבוי ב datastore של ESXi שלך.

    mkdir /vmfs/volumes/datastore1/ESXi_backup

  2. vi /vmfs/volumes/datastore1/ESXi_backup/esxi_backup.sh

  3. הוסף את השורות הבאות לסקריפט:

    vim-cmd hostsvc/firmware/sync_config

    vim-cmd hostsvc/firmware/backup_config

    find /scratch/downloads/ -name \*.tgz -exec cp {} /vmfs/volumes/datastore1/ESXi_backup/ESXi_config_backup_$(date +'%Y%m%d_%H%M%S').tgz \;

  4. שמור את הקובץ וצא מ־vi:

    :wq

    הערה: לנוחות רבה יותר, ניתן גם לכלול את שם המארח של ESXi או כתובת ה־IP בשם הקובץ לגיבוי. זה יעזור לך למנוע בלבול עם מספר מארחי ESXi רבים.

  5. הפוך את התסריט לניתן להרצה:

    chmod +x /vmfs/volumes/datastore1/ESXi_backup/esxi_backup.sh

  6. עבור לתיקייה שבה נמצא התסריט:

    cd /vmfs/volumes/datastore1/ESXi_backup/

  7. הרץ את התסריט:

    ./esxi_backup.sh

  8. וודא שנוצר קובץ גיבוי:

    ls -al

  9. וודא שתסריט גיבוי התצורה של ESXi פועל לפי התזמון (באופן אוטומטי). ערוך את התצורה של המתזמן למטרה זו:

    vi /var/spool/cron/crontabs/root

  10. הוסף את המחרוזת הבאה כדי לבצע גיבוי של תצורת ESXi בכל יום בשעה 02:10 לפנות בוקר:

    10 02 * * * /vmfs/volumes/datastore1/ESXi_backup/esxi_backup.sh

  11. שמור את השינויים בקובץ. כדי לשמור את השינויים בקובץ לקריאה בלבד, הזן:

    :wq!

    כאלטרנטיבה, ניתן לשנות את ההרשאות של הקובץ לפני עריכתו:

    chmod +w /var/spool/cron/crontabs/root

לאחר התקנתו, התצורה של ESXi תשוחזר באופן אוטומטי בשעה 02:10 בלילה בכל לילה לקובץ בשם ESXi_config_bakup_date_time.tgz.

איך לשחזר את התצורה של ESXi בקו הפקודה של ESXi

עליך להתקין ESXi באותה גרסה ואותו מספר בנייה כמו ב-ESXi המגובה שהותקן על המכונה שבה ברצונך לשחזר את התצורה של ESXi. כלל זה נכון לכל שיטות שחזור התצורה של ESXi שנחשבו בפוסט בבלוג זה.

אם אתה מתכנן לשחזר את התצורה של ESXi על מארח ESXi שהותקן מאפס (הותקן מחדש), עליך להגדיר את כתובת ה-IP עבור ממשק הרשת שמשמש לרשת ניהול ESXi ולאפשר גישה דרך SSH.

ה-UUID חייב להיות אותו הערך בשני שרתי ESXi: השרת שנגבה והשרת שעליו תתבצע השחזור של ההגדרה. השלבים למעקב אחרי הערכים שונים של UUID מכוסים בקטע הבא.

כדי לשחזר את ההגדרה של ESXi:

  1. לאחר שהכנת את השרת המותקן ב-ESXi לשחזור את ההגדרה מגיבוי, יש להתחבר לשרת ה-ESXi באמצעות SSH ולהכניס את השרת למצב תחזוקה (ה-VMs מופסקים במצב זה).

    esxcli system maintenanceMode set --enable yes

    או

    vim-cmd hostsvc/maintenance_mode_enter

  2. להעתיק את הארכיון שמכיל את גיבוי ההגדרה של ESXi לתיקייה בשרת ה-ESXi באמצעות לקוח SCP, לדוגמה, WinSCP. נכתוב את הארכיון configBundle-xxxx.tgz מהמחשב המקומי לתיקיית /tmp/ בשרת ה-ESXi היעד.

  3. configBundle-xxxx.tgz קובץ ל- configBundle.tgz לפני שאתה מכניס את הפקודה לשחזור הקונפיגורציה של ESXi. אחרת, תקבל את ההודעה שגיאה: "File /tmp/configBundle.tgz was not found".

    באפשרותך לשנות את שמו של הקובץ במעטפת של ESXi לה נתחברת דרך SSH:

    mv /tmp/configBundle-esxi6-7b.localdomain.tgz /tmp/configBundle.tgz

  4. לשחזור הקונפיגורציה של ESXi:

    vim-cmd hostsvc/firmware/restore_config /tmp/configBundle.tgz

    לאחר הרצת הפקודה זו המארח של ESXi יאותם באופן אוטומטי.

  5. לאחר הפעלת מחדש של שרת ה-ESXi, יש לצאת ממצב התחזוקה, ולאחר מכן ניתן להשתמש במארח כרגיל.

    esxcli system maintenanceMode set --enable no

    או

    vim-cmd hostsvc/maintenance_mode_exit

איך לשנות את UUID כדי לשחזר את תצורת ESXi

ניתן להשתמש באחד משני הדרכים הבאות כדי לבדוק את UUID של שרת ESXi:

  1. בממשק שורת פקודה של ESXi:

    esxcfg-info -u

  2. בקובץ Manifest.txt בתוך הארכיון לגיבוי configBundle.tgz שיצרת עם הפקודות המפורטות למעלה.

אין אפשרות לשנות את UUID של שרת ESXi מאחר שהמזהה נוצר בהתאם לחומרה. אפסון, ניתן לשחזר את תצורת ESXi של מארח ESXi A אל מארח ESXi B לאחר שינוי ה-UUID בקובץ Manifest.txt שמאוחסן בארכיון הגיבוי configBundle.tgz של תצורת ESXi.

עכשיו נסתכל על כיצד לשנות את ה-UUID כדי ליישם את התצורה שגיבית על שרת פיזי נוסף. שרת A הוא השרת שתצורתו גובה, ו-שרת B הוא השרת אליו תיוושם התצורה.

שלב 1

בדוק את UUID על המארח ESXi אליו ברצונך ליישם את התצורה שגיבית (שרת B). זה ניתן לעשות בשתי שיטות לפחות, אך השיטה השנייה מאפשרת גם לבדוק את גרסת ה-ESXi:

  1. הרץ את esxcfg-info -u
  2. vim-cmd hostsvc/firmware/sync_config

    vim-cmd hostsvc/firmware/backup_config

  3. העתק את ארכיון הגיבוי לתיקיית הזמנית ועבור אל התיקייה הזו:

    cp /scratch/downloads/_hash_value_/configBundle-localhost.localdomain.tgz /tmp

    cd /tmp/

  4. חלץ קבצים מהארכיון:

    tar zxvf configBundle.tgz

  5. פתח את קובץ Manifest.txt בעזרת vi ובדוק את ערך ה-UUID (תראה שורה נפרדת עם ה-UUID). כתוב את ה-UUID.

    vi Manifest.txt

    במקרה שלנו, ה-UUID הוא 1E9E4D56-B724-DFBE-D19D-4C2D827E0188

  6. ניתן למחוק קבצים זמניים בתיקיית /tmp/:

    rm configBundle-localhost.localdomain.tgz Manifest.txt state.tgz

שלב 2

  1. הגדרות_עצמאיות.tgz העותק הגיבוי של התצורה של שרת ESXi A לשרת B, לדוגמה, לתיקיית /tmp/ ועבור אל התיקייה ההיא.
  2. חלץ את הקבצים מהארכיון הגדרות_עצמאיות.tgz:

    tar zxvf הגדרות_עצמאיות.tgz

  3. פתח את קובץ Manifest.txt בעזרת vi ועדכן את ערך ה-UUID של שרת A ל-UUID של שרת B:

    vi Manifest.txt

    במקרה שלנו, נשנה את 9EA94D56-7E39-96A8-AB45-DF31EF0971EC ל-1E9E4D56-B724-DFBE-D19D-4C2D827E0188

    שמור את הקובץ וצא מהעורך התמלילים:

    :wq

  4. שנה את שם המקור שלך הגדרות_עצמאיות.tgz לשם הגדרות_עצמאיות1.tgz, לדוגמה (אם שם הקובץ הגיבוי של התצורה שלך של ESXi שונה מ- הגדרות_עצמאיות.tgz, תוכל לדלג על שלב זה):

    mv הגדרות_עצמאיות.tgz הגדרות_עצמאיות1.tgz

  5. Manifest.txt, state.tgz וְ jumpstrt.gz קבצים לארכיון חדש configBundle.tgz:

    tar zcvf configBundle.tgz Manifest.txt state.tgz jumpstrt.gz

  6. הנח את מארח ESXi במצב תחזוקה ושחזר את התצורה:

    esxcli system maintenanceMode set --enable yes

    vim-cmd hostsvc/firmware/restore_config /tmp/configBundle.tgz

שיטה 2: איך לגבות מארח ESXi עם vSphere CLI

ממשק שורת פקודה נוסף שמסופק על ידי VMware כדי לנהל מארחי ESXi הוא vSphere CLI (לא להתבלבל עם VMware PowerCLI). עליך להתקין vSphere CLI על מחשב הרץ Linux או Windows כדי לנהל מארחי ESXi מרחוק. Perl נדרש להתקנת vSphere CLI.

היתרון של שימוש ב- vSphere CLI הוא נוחות וכוח של bash ב-Linux. שיטה זו נוחה במיוחד עבור ESXi 6.x. אם אתה משתמש ב- ESXi 8, בחר בשיטות אחרות המוסברות במאמר זה.

התקנת והגדרת vCLI

  1. הורד את גרסת vSphere CLI הנדרשת עבור מערכת ההפעלה שלך מאתר האינטרנט של VMware. Ubuntu Linux משמשת בדוגמה זו.
  2. cd לתיקייה שבה נמצא הקובץ שהורד

  3. התקן את החבילות הנדרשות:

    apt-get install -y perl-doc libmodule-build-perl libssl-dev libxml-libxml-perl libsoap-lite-perl libuuid-perl build-essential

    ההמלצה הרשמית של VMware היא להתקין את סט החבילות הבא:

    apt-get install ia32-libs build-essential gcc uuid uuid-dev perl libssl-dev perl-doc liburi-perl libxml-libxml-perl libcrypt-ssleay-perl

  4. פנה לתיקייה בה נמצאים הקבצים שיש להפעיל את המתקין:

    ./vmware-install.pl

  5. חובה לקרוא ולקבל את ההסכם ברישיון. אם מותר למתקין להתקין מודולים נדרשים, הקלד y והתקן את המודולים.

    הכנס למסך האינטראקטיבי של Perl:

    perl -MCPAN -e shell

  6. הרץ את הפקודה להתקנת המודול הנדרש של Perl:

    install Devel::StackTrace

    באופן דומה, התקן מודולים אחרים.

    הערה: במקרה שלנו, לא ניתן היה להתקין אחד מהמודולים במסך האינטראקטיבי של Perl, אך ניתן להתקין את המודול הזה בעזרת הפקודה בקונסולת האובונטו:

    apt-get install libcrypt-ssleay-perl

  7. לאחר התקנת מודולי Perl, הריצו מחדש את מתקין VMware vSphere CLI.
  8. ההתקנה הושלמה בהצלחה וניתן לראות את המסך הבא במקרה זה:

  9. כעת ננסה להשתמש ב-CLI של vSphere ונכניס פקודה בקונסולת Linux כדי להציג את רשימת המכשירים של שרת ה-ESXi (192.168.101.208 הוא כתובת ה-IP של שרת ה-ESXi).

    esxcli --server 192.168.101.208 storage core device list

  10. טמפלייט הזה של SHA-1 של השרת לא מהימן, והחיבור למארח ESXi נכשל. זה אומר שעליך להגדיר את הטמפלייט לצורך אבטחה. בואו ננסה פקודה נוספת:

    שם המשתמש והסיסמה יופיעו במסוף במצב אינטראקטיבי.

    נסו לא להשתמש בפקודות שבהן שם משתמש וסיסמה מוקלדים כטקסט פשוט כמו זה:

    esxcli --server 192.168.101.208 --username root --password TestPass_555 --thumbprint B3:63:9F:67:E2:D9:C4:53:7D:A9:2A:4A:37:DC:AE:73:3C:83:C7:DA system maintenanceMode get

    הערה: זה בגלל סיבות אבטחה. הפקודות שנפעלו נשמרות בלינוקס עד שתריצו את הפקודה history -c כדי לנקות את ההיסטוריה. אם תרצו להימנע משימוש במצב אינטראקטיבי ולהזין משתמש וסיסמה באופן ידני, תוכלו לשמור את ההפעלה של ESXi לקובץ ולהשתמש בקובץ זה בעת הפעלת הפקודות. שמירת ההפעלות היא מאובטחת להבדל מהזנת סיסמה כטקסט פשוט בפקודה. שמירת ההפעלות מוסברת למטה.

שמירת טביעת אצבע לחיבור למארחי ESXi

להזין טביעת אצבע של ESXi בכל פעם בעת ביצוע פקודה אינו נוח. מזל טוב, אפשר לשמור את הטביעה ולהריץ פקודות נוספות עם vSphere CLI בלי להגדיר מחדש טביעה.

  1. עבור אל התיקייה:

    cd /usr/lib/vmware-vcli/apps/general/

  2. /usr/lib/vmware-vcli/apps/general/credstore_admin.pl add -s שרת -t טמפלייט

    בדוגמתנו המקורית, הפקודה היא:

    /usr/lib/vmware-vcli/apps/general/credstore_admin.pl add -s 192.168.101.208 -t B3:63:9F:67:E2:D9:C4:53:7D:A9:2A:4A:37:DC:AE:73:3C:83:C7:DA

  3. עכשיו תוכל להריץ פקודות ב- vSphere CLI מבלי להזין טמפלייט בכל פעם:

    esxcli --server 192.168.101.208 system maintenanceMode get

עם זאת, עדיין עליך להזין שם משתמש וסיסמה. אך, באפשרותך להגדיר את vSphere CLI להריץ פקודות מבלי להזין סיסמה בכל פעם כפי שמוצג בקטעים הבאים.

שימוש בקובץ מסד נתונים עבור התחברות לשרתי ESXi

שימוש בקובץ ההפעלה השמור הוא אחד השיטות למניעת הזנת שם משתמש וסיסמה בעת ביצוע פקודה על מארח ESXi רחוק באמצעות ספירה של vSphere.

  1. צור ספריית אחסון עבור קבצי הגיבוי של תצורת ESXi, לדוגמה, /backup/

    mkdir /backup

  2. עבור אל הספרייה הזו:

    cd /usr/lib/vmware-vcli/apps/session

  3. שמור את ההפעלה המורשית שלך של מארח ESXi לקובץ באמצעות סקריפט Perl עם הפקודה:

    perl save_session.pl --savesessionfile /backup/192-168-101-208session --server 192.168.101.208 --username root --password TestPass_555

    היכן:

    savesessionfile /backup/192-168-101-208session הוא שם קובץ ההפעלה שנוצר

    server 192.168.101.208 הוא שם המארח ESXi ששמור ההפעלה שלו (מארח ESXi זה משמש במספר דוגמאות)

    username root הוא שם המשתמש המחובר למארח ESXi

    password TestPass_555 הוא הסיסמה של המשתמש המחובר למארח ESXi

כעת ניתן להריץ פקודות בלי להזין סיסמה, אך עליך להזין את מפתח ה-sessionfile (אפשרות) ולהגדיר את נתיב קובץ השואפות.

לדוגמה:

esxcli --sessionfile /backup/192-168-101-208session system maintenanceMode get

שימוש בקובץ הגדרות להתחברות אל שרתי ESXi

הרעיון שעומד מאחורי השיטה הזו הוא לשמור את פרטי ההתחברות בקובץ הגדרות כטקסט פשוט ולהתייחס לקובץ זה בעת ביצוע פקודות ESXi ב-CLI של vSphere.

  1. צור קובץ הגדרות:

    vim /backup/vcli-config

  2. הזן את פרטי ההתחברות במקום הבא:

    VI_USERNAME=root

    VI_PASSWORD=TestPass_555

  3. שמור את הקובץ.
  4. esxcli --server 192.168.101.208 --config vcli-config system maintenanceMode get

הערה: כאשר האישורים נשמרים כטקסט פשוט, שיטה זו אינה מאובטחת.

שימוש באחסון פרטיות עבור התחברות למארחי ESXi

A credential store is the xml file located in the user directory in the vmware subdirectory ~/.vmware/credstore/vicredentials.xml. The advantage of using the credentials store to run commands on remote ESXi hosts is that the password is not saved as plain text. As a result, this method provides higher security.

  1. כדי להוסיף אישורים לאחסון הפרטיות, הפעל את הפקודה:

    /usr/lib/vmware-vcli/apps/general/credstore_admin.pl add --server 192.168.101.208 --username root

  2. רשימת האישורים המצויים באחסון הפרטיות כדי לוודא שהאישורים הנדרשים נמצאים:

    /usr/lib/vmware-vcli/apps/general/credstore_admin.pl list

  3. הפעל את הפקודה על המארח המרוחק של ESXi בלי להכניס סיסמה באמצעות חנות הכרטיסיות:

    # esxcli --server 192.168.101.208 --credstore /root/.vmware/credstore/vicredentials.xml system maintenanceMode get

    אם אתה משתמש במשתמש לא רוט, קובץ הכרטיסיות נשמר במיקום /home/user_name/.vmware/credstore/vicredentials.xml

בתמונה למטה, אתה יכול לראות איך הפרטים האישיים מאוחסנים בקובץ חנות הכרטיסיות.

שימוש ב- vSphere CLI כדי לגבות את התצורה של מארח ESXi

עכשיו שהגדרת את vSphere CLI במכונת Ubuntu Linux, תוכל להריץ את הפקודות ולגבות את התצורה של ESXi:

  1. עבור לתיקיית /usr/bin/:

    cd /usr/bin

  2. ליצור גיבוי של התצורה של ESXi מבלי להזין את שם המשתמש והסיסמה, השתמש באחת מהפקודות הבאות.

    למשתמש והסיסמה המורשים שנשמרו באחסון האישות, השתמש בפקודה:

    • vicfg-cfgbackup --server 192.168.101.208 --credstore /root/.vmware/credstore/vicredentials.xml -s /backup/192-168-101-208-esxi-cfg.tgz

    או לאחר שמירת ההפעלה בקובץ ההפעלה, השתמש בפקודה:

    • vicfg-cfgbackup --sessionfile /backup/192-168-101-208session -s /backup/192-168-101-208-esxi-cfg.tgz
    • חסרון השימוש באפשרות ה- sessionfile הוא התקופה השוהית של 30 דקות לאחר הרצת הפקודה האחרונה ב- vSphere CLI. לאחר מכן, עליך לאמת וליצור מחדש קובץ ההפעלה.

    אם ברצונך ליצור גיבוי של תצורת ESXi בזמן שמזינים סיסמה במצב אינטראקטיבי, תוכל להריץ את הפקודה:

    • vicfg-cfgbackup --server 192.168.101.208 -s /backup/192-168-101-208-esxi-cfg.tgz

    שים לב: פקודות vicfg- אינן נתמכות יותר. אם vicfg אינו עובד במקרה שלך, השתמש בפקודות שקולות של ESXCLI בממשק השורת פקודה כאשר אתה עובד עם מארחי ESXi של הגרסאות האחרונות. ראה פקודות לשיטות אחרות לגיבוי תצורת ESXi.

איך לאוטומציה גיבוי תצורה של ESXi

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

  1. ערוך את קבצ התצורה של המתזמן בלינוקס כדי להריץ את פקודת גיבוי התצורה של ESXi באופן תכופה ואוטומטית.

    הערה: אם אתה עורך את קובץ התצורה של הקרונטאב לראשונה, עליך לבחור את העורך הטקסט המוגדר כברירת מחדל שישמש לעריכת קובץ התצורה של הקרונטאב. בדוגמה שלנו, אנו משתמשים ב־

    /usr/bin/vim.basic למטרה זו.

    הפורמט של קובץ התצורה של הקרונטאב הוא כדלקמן:

    דקות שעות יום_של_החודש חודש יום_של_השבוע פקודה

  2. בוא נבצע גיבוי לתצורת מארח ESXi מדי לילה בשעה 03:25 על ידי הוספת השורה הבאה לתצורת הקרונטאב:

    25 03 * * * /usr/bin/vicfg-cfgbackup server 192.168.101.208 config /backup/vcli-config -s /backup/192-168-101-208-esxi-cfg-cron.tgz

  3. כתוב את התצורה של מתזמן crontab וצא מעורך הטקסט vim (שמשמש בדוגמה זו):

    :wq

  4. נמתין עד לאחר 03:25 לבדוק את הספרייה אליה יש לשמור את קבצי התצורה של ESXi:

    ls -al

    כפי שאתה רואה בתמונת מסך למטה, קובץ הגיבוי של תצורת המארח של ESXi נוצר באופן אוטומטי בשעה 03:25.

עכשיו הגיבוי של תצורת ESXi נוצר באופן אוטומטי, שזה נהדר, אך יש בינו מחסור. בכל פעם ש- crontab מפעיל פקודה מתוזמנת כדי ליצור גיבוי של תצורת ESXi, הקובץ הקודם tgz מוחק על ידי הקובץ החדש tgz . זה יכול לגרום לבעיות אם הגיבוי עם התצורה הנכונה של ESXi שנוצר פניו אתמול מתווסף על ידי קובץ שנוצר ביום הבא שמכיל את התצורה שגויה של ESXi. כדי למנוע את הבעיה הזו, עליך לגבות את תצורת ESXi לקבצים שונים.

בואו ניצור סקריפט פשוט כדי לשמור על תצורת ESXi בכל פעם כקובץ נפרד עם שם ייחודי שמכיל את התאריך והשעה של יצירת קובץ גיבוי תצורת ESXi בשם הקובץ. יצירת סקריפט מאפשרת לך להוסיף פקודות לגיבוי של מארחי ESXi מרובים על ידי הפעלת סקריפט יחיד.

  1. צור את הקובץ esxi_backup.sh בספריית /backup/:

    vim /backup/esxi_backup.sh

  2. הוסף שורות לקובץ כך:

    #!/bin/bash

    ESXI101_208_BACKUP_NAME = "192-168-101-208 – $ (date + '% Y% m% d_% H% M% S') esxi-cfg.tgz "

    vicfg-cfgbackup server 192.168.101.208 config /backup/vcli-config -s /backup/$ESXI101_208_BACKUP_NAME

  3. כתוב שינויים לקובץ וצא מעורך הטקסט vim:

    :wq

  4. הפוך את הקובץ לנכון להרצה:

    chmod +x /backup/esxi_backup.sh

  5. ערוך את תצורת המתזמן:

    crontab -e

  6. הוסף שורה בדיוק כך:

    50 06 * * * /backup/esxi_backup.sh

    שורת התצורה הזו מאפשרת לנו לקבוע ל-crontab להריץ את סקריפט הגיבוי של תצורת ה-ESXi בשעה 06:50 בבוקר.

    נטרל את המשימה הקודמת שהוספת על ידי הוספת תו ה-# בתחילת השורה.

    שמור את התצורה.

חכה לזמן המוגדר ואז בדוק האם נוצר הגיבוי של תצורת ה-ESXi.

הערה: לאחר כל הפעלת ESXi מחדש או 30 דקות של זמן חוסם, האימות להפעלה של ESXi פקקים. שים לב לתכונה זו בעת יצירת סקריפט לגיבוי של ESXi באופן אוטומטי.

כיצד לשחזר את התצורה של ESXi ב-CLI של vSphere.

הדרישות לשחזור את התצורה של ESXi באמצעות CLI של vSphere דומות לדרישות של שיטות אחרות. על מנת לשחזר את התצורה של ESXi, וודא שגישה מרחוק דרך SSH מופעלת ושם ה-IP של שרת ה-ESXi ידוע (מומלץ להשתמש באותו כתובת IP ככתובת ה-IP של המארח ESXi שהוגבה).

לשחזר את התצורה של ESXi הפעל את הפקודה הבאה:

vicfg-cfgbackup --server=כתובת_IP_של_מארח_ESXi --שם_משתמש=root -l קובץ_גיבוי

בדוגמתנו המסוימת, הפקודה היא:

vicfg-cfgbackup --server=192.168.101.208 --שם_משתמש=root -l /גיבוי/192-168-101-208-esxi-cfg.tgz

אם ה-UUID של מארח ה-ESXi היעד שעליו ברצונך לשחזר את התצורה יש UUID שונה מה-UUID של שרת ה-ESXi שנגבה (שה-UUID שלו מוגדר בקובץ Manifest.txt בתוך הגיבוי tgz), תוכל להשתמש במקש -f (כוח) כדי לדרוס את ה-UUID.

ניתן לבדוק את ה-UUID של מארח ה-ESXi הפועל עם הפקודה, כפי שאתה זוכר:

esxcfg-info -u

הערה: החל מ-ESXi 7.0 U2, דריסת ה-UUID בכוח לא תעבוד אם יש שימוש ב-TPM (Trusted Platform Module) במארח ה-ESXi.

שיטה 3: שימוש ב-PowerCLI לגיבוי של מארחי ESXi

משתמשים שאוהבים את PowerShell של Windows יכולים להשתמש ב-PowerCLI לניהול vSphere ולגיבוי של תצורות ESXi. PowerCLI הוא סט של cmdlets של PowerShell, וחלק מהפקודות הבסיסיות של PowerCLI מוסברות ב-פוסט הבלוג הזה.

כדי להשתמש ב-PowerCLI לגיבוי של מארחי ESXi, עליך תחילה להתקין את PowerCLI במערכת ההפעלה שלך:

  1. הרץ את PowerCLI כמנהל בחלון.
  2. Connect-VIServer ESXi_IP_address -user שם_משתמש -password ססמה

    במקרה שלנו, אנו משתמשים בפקודות:

    Connect-VIServer 192.168.101.208 -user root -password ססמהPass_555

    Get-VMHostFirmware -vmhost 192.168.101.208 -BackupConfiguration -DestinationPath "C:\backup ESXi מארח"

    • אם שרתי ESXi שלך נ관acion על ידי שרת vCenter, אתה יכול להתחבר ל-vCenter ראשונה ואז לבצע גיבוי תצורה של ESXi על שרתיך ב PowerCLI בלא צורך באימות מחדש לפני כל גיבוי תצורה:
    • Connect-VIServer 10.10.10.16

      הכנס את הכניסה המנהלתית והססמה שלך לגישה ל-vCenter Server. חלון מקושר נופץ לצורך זאת.

  3. גבה את התצורה של ESXi של כל מארח:

    Get-VMHostFirmware -vmhost 10.10.10.61 -BackupConfiguration -DestinationPath "C:\backup ESXi host"

    Get-VMHostFirmware -vmhost 10.10.10.46 -BackupConfiguration -DestinationPath "C:\backup ESXi host"

איך לשחזר את התצורה של ESXi ב-PowerCLI

  1. הפעל את VMware PowerCLI כמנהל
  2. התחבר למארח ESXi בו ברצונך לשחזר את התצורה (בדוגמה שלנו, אנו משחזרים את התצורה במארח ESXi עם כתובת IP 192.168.101.208)
  3. הכנס את המארח ESXi למצב תחזוקה:

    Set-VMHost -VMHost 192.168.101.208 -State Maintenance

  4. ודא שמכונות הווירטואליות שוכנות על המארח ESXi הזה כבויות או הועברו למארח ESXi אחר לפני שאתה משחזר את תצורת ה-ESXi. שים לב שלאחר ביצוע פקודה לשחזור תצורה, המארח ESXi יאותם עצמו.
  5. שחזר את התצורה עם פקודת Set-VMHostFirmware restore:

    Set-VMHostFirmware -vmhost 192.168.101.208 -Restore -SourcePath "C:\backup ESXi host\configBundle-192.168.101.20

    8.tgz" -HostUser root -HostPassword TestPass_555

הגרסה, מספר הבנייה וה־UUID של מארח ESXi בו התבצעה שחזור ההגדרה חייבים להתאים לגרסה, מספר הבנייה וה־UUID של מארח ESXi אשר נעשה שימוש בגיבוי שלך לשחזור ההגדרה. השתמש במפתח -force בפקודה כדי לדלג על בדיקת ה־UUID.

שיטה 4: גיבוי ידני ושחזור של הגדרת ESXi

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

כפי שאתה מזכיר מהגדרת crontab ברירת המחדל במארח ESXi, התסריט /sbin/auto-backup.sh מופעל כל שעה ובכל פעם שמארח ESXi מתאתחל או נכבה. התסריט הזה מיועד לגבות (לשמור) על הגדרת ESXi השמורה בזיכרון בקובץ /bootbank/state.tgz.

הערה: קובץ /bootbank/state.tgz חייב להיות לא מוצפן כדי להשתמש בשיטה זו.

התצורה של ESXi מאוחסנת בזיכרון המחשב כאשר שרת ESXi פועל (הדיסק RAM המתאים מכובד בספריית /etc/). בעת האתחול של ESXi, קבצי המערכת מובאים מהארכיון /bootbank/state.tgz לספריית /etc/. באפשרותך להעתיק באופן ידני את קובץ /bootbank/state.tgz אם השרת שלך מופעל באמצעות מזהה SCP כמו WinSCP (גישה SSH מרחוק חייבת להיות מופעלת). כאלטרנטיבה, ניתן להשתמש בהפעלה מדיסק DVD חי ולהעתיק באופן ידני את קובץ state.tgz אם השרת שלך אינו מסוגל להתנטר (לדוגמה, עקב כשל בחומרה).

תהליך השחזור הידני

  1. הכינו את ארכיון הגיבוי שיצרתם קודם בעזרת סל ESXi, CLI של vSphere או PowerCLI. שם הקובץ הוא configBundle-192-168-101-208.tgz במקרה שלנו. ניתן להעתיק את הקובץ לכונן פלאש USB, לדוגמה, ולהכניס את כונן הפלאש הזה ליציאת USB של שרת ESXi בו עליך לשחזר את תצורת המערכת.
  2. הפעל מהתקליטור החי/ DVD על המחשב שבו מותקנת ESXi. ניתן להשתמש בתקליטור ההתקנה של Ubuntu כתקליטור חי/ DVD.
  3. פתחו את הקונסולה (טרמינל) ב-Linux.
  4. רשימת החלוקות:

    ls -al /dev/sd*

    fdisk -l | grep /dev/sda

    במקרה זה, אנו זקוקים לחלוקה /dev/sda5/ שמסומנת כנתונים בסיסיים של מיקרוסופט.

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

    אנו מעוניינים בחלוקה /dev/sda5 במקרה זה.

  5. צור את הספרייה לה החלוקה /dev/sda5 תתחבר:

    mkdir /mnt/sda5

  6. הצמד את חלקת הדיסק לספרייה זו:

    mount /dev/sda5 /mnt/sda5

  7. בספרייה /mnt/sda5, אפשר למצוא את הקובץ state.tgz המכיל נתוני התקנת ESXi. ספרייה זו (בה מאוחסן state.tgz) נקראת /bootblank/ כשמפעילים מארח ESXi.
  8. העתק את אריברי הגיבוי של התקנת ESXi מכונית ה-USB לספרייה /tmp/ של אובונטו הטעון מסרטון ה-Live DVD. בדוגמה שלנו, אנו מעתיקים:

    cp /media/Ubuntu/Ubuntu\ 18.0/backup_ESXi_host/configBundle-192-168-101-208.tgz /tmp/configBundle.tgz

  9. הוצא את הקבצים מאריבר הגיבוי:

    tar zxvf /tmp/configBundle.tgz

  10. אפשר לראות שהקובץ state.tgz נוצר מהאריבר:

    ls -al /tmp/

  11. שנה את שמו של הקובץ state.tgz המקורי הממוקם בחלקה /dev/sda5 המחוברת ל-/mnt/sda5/

    mv /mnt/sda5/state.tgz /mnt/sda5/state-old.tgz

  12. state.tgz קובץ שהורדת מארכיון גיבוי התצורה של ESXi (configBundle.tgz) ושהוחלצת אותו, עבירו לתיקייה /tmp/:

    cp /tmp/state.tgz /mnt/sda5/

  13. בצע פירוק למחיצות המחוברות:

    umount /dev/sda5/

  14. הפעל מחדש את השרת. הוציא את דיסק ה- Ubuntu Live DVD והפעל מהדיסק שבו מותקן ESXi.

    init 6

עכשיו תצורת ה- ESXi שלך צריכה להתאפס.

מסקנה

שימוש בממשק השורת פקודה של ESXi הוא יתרון כי אין צורך להתקין תוכנה נוספת. יתרונות ממשק ה- vSphere CLI הם היכולת להריץ פקודות מרחוק באמצעות מכונות Linux והיכולת להפעיל את גיבוי התצורה של ESXi באופן אוטומטי. PowerCLI, מצד שני, עשוי להיות מוערך על ידי משתמשי Windows.

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

מומלץ לגבות את מכונות הווירטואליות של vSphere ולגבות גם מארחי ESXi. NAKIVO Backup & Replication היא פתרון גיבוי אוניברסלי שיכול לגבות את מכונות ה-VMware שלך, מכונות ה- Hyper-V שלך, מקרים של Amazon EC2 וגם שרתי Linux ו- Windows פיזיים.

Source:
https://www.nakivo.com/blog/back-up-and-restore-vmware-esxi-host-configuration-guide/