המעבר מ-ESXi ל-KVM בחצות הלילה

כאן אצלי ב-LAB המערכת בנויה לעמוד לא רע במצב של ברקים/הפסקות חשמל לשניה או 2. בד"כ כשהחשמל קופץ וחוזר, מערכת ה-ZFS שרצה על מחשב דסקטופ (הסיבה לדסקטופ: זמן Boot מאפס קצר מאוד) עולה, ולאחר שהשרתים מואילים בטובים לסיים את שלבי ה-POST, מערכת ESXI עולה, מתחיל מצב HA, בשלב ראשון עולה VM של Windows 2012R2 (מה לעשות, צריך DNS עם AD – צריך AD לבדיקות התחברות מכל מיני פלטפורמות), אחריו עולה VM של שרת מדיה, אחרי זה עולה VM שרת מייל, אחרי זה עולה שרת VM עם VCSA ואחרי זה שורה ארוכה של מכונות VM עולות.

מה שאומר – בד"כ תוך 4-5 דקות אני יכול להמשיך לעבוד בלי שום בעיה. כל מכונות ה-VM יודעות להתאושש יפה כי ZFS יודע לדאוג ל-File System בצורה מעולה במצבו הרגיל ובמצב הוצאת וDatasets כ-iSCSI וכ-NFS.

בד"כ היו לי 2 מכונות פיזיות לצורך HA, אך אחד השרתים החליט לפני שבוע שטמפרטורה פנימית של 17 מעלות זה לא מספיק קר מדי אז הוא מפעיל מאווררים ב-80%, מה שאומר שגם השכנים בבניין ממול ישמעו אותו, כך שנאלצתי לכבות אותו עד שאמצא זמן לטיפול, וכתוצאה מכך אין יותר HA. אתמול שהיתה הפסקת החשמל, החליט שרת ה-HP G7 שלי ששוב מאוורר מקולקל (כבר החלפתי לו 5 מאווררים בחצי השנה האחרונה!) ולפיכך הוא לא מעוניין לעשות Reboot.

אז שרת אחד של IBM מושבת בגלל רעש, שרת שני מושבת בגלל מאוורר. לי אין DNS, אני לא יכול לעבוד. חייב לעשות משהו בנידון.

טוב, יש לי מכונות לינוקס, בוא נשתמש ב-KVM ונשתמש באפליקציית virt-v2v כדי להמיר מכונות מ-VMX ל-KVM! הוצאתי גם וידאו על כך, כך שאני מכיר את הפרוצדורה. התחברתי למכונת לינוקס, ביצעתי mount ל-NFS שמארח את מכונות ה-VM של ESXi והתחלתי להמיר את מכונת ה-Windows 2012 ל-KVM..

כלומר, ניסיתי. ש-Windows יתן לי להמיר? חס ושלום!

אפליקציית virt-v2v סירבה מיידית בטענה שהמכונה עדיין רצה (היא לא), כלומר יש lock. להעיף את ה-lock זה יעזור, נכון? אז זהו, שלא. מבחינת Windows, ה-File system נמצא במצב כמו suspended ולכן אי אפשר לעשות המרה. בקיצור – צריך לשחרר את ה-VM איכשהו.

אבל אין לי ESXI עכשיו, מה אני יעשה?

הורדתי ISO של ESXi ו.. התקנתי אותו על KVM. כמובן ש-ESXi מאוד מאוד בררן בציוד, והוא לא רצה לקבל שום ציוד מודרני (אף אחד לא מצפה שרד-האט תכתוב דרייברים ל-ESXi, נכון?), אז אחרי חיפוש רציני בגוגל (שלא ממש עזר במשהו) התפשרתי על מכונה וירטואלית מבוססת 440FX, דיסק קשיח IDE, ו-CD מבוסס SATA וכרטיס רשת וירטואלי עם אמולציה של  אינטל (e1000). כל הקומבינה הזו בסופו של דבר עבדה. בערך.

הקמתי את ה-ESXi על ה-KVM, ביצעתי mount ל-Datastore של ה-NFS ו… בום. כל קובץ שאני מנסה לגשת – I/O Error ובסופו של דבר ה-VM קפא. ביצוע Reset, ביצוע mount מחדש, ו.. הכל עובד! הפעלתי את ה-VM עם ה-Windows 2012 ו… כן, Windows בטוח שעכשיו זה זמן מעולה להריץ עדכונים! יאללה, תמתין חצי שעה לעדכונים….

בסוף ה-Windows סיים עדכונים, ביצעתי login, ולאחר מכן כיביתי את המכונה. ניסיתי שוב להמיר אותה ל-KVM, והפעם – זה הצליח. אחרי ההמרה הפעלתי, התקנתי את הדרייברים החסרים, הגדרתי את ה-IP הקבוע – וזהו, המכונה עובדת תחת KVM. המרתי עוד כמה מכונות לינוקס (שם לא צריך להתקין דרייברים, הידד!) – והכל תקתק. הגדרתי autostart ל-2 מכונות, וזהו, עכשיו אני אמור להיות מסודר גם במקרה ששוב תהיה הפסקת חשמל (כל מכונות ה-VM נמצאות על הדיסק המקומי של מכונת הלינוקס הפיזית)

הבעיה היחידה שנשארה שם: לצערי ב-libvirt (הספריה וה-daemon שמפעילים את ה-KVM) אין עדיין תעדוף איזו מכונה להפעיל ראשונה, שניה וכו', מה שאומר שכרגע – צריך לכתוב סקריפט שיעשה זאת. בעעע.

מסקנות: אם ה-LAB שלך חשוב לך ובמיוחד אם אתה צריך את השרותים שנותן ה-LAB, תכין תוכנית התאוששות ראשונית ותוכנית משנית. אני משער שלא מעט שיקראו את הדברים יאמרו ש-UPS היה פותר זאת, ויש בכך מן הצדק. מצד שני, קרו לי מקרים שעשיתי Reboot ל-G7 ו.. בום, הוא לא רוצה לפעול, שוב טוען שהלך המאוורר, ולכן תוכניות התאוששות חשובות.

(ולמי ששואל מדוע אין לי UPS – התשובה פשוטה: ה-LAB שלי הולך להשתנות. חשבתי שיהיה שינוי קטן עד אמצע השנה, התברר לי חודש שעבר שכנראה אני אארח כאן כמה "מפלצות", אז צריך למצוא משהו מתאים)

Print Friendly, PDF & Email

2 תגובות בנושא “המעבר מ-ESXi ל-KVM בחצות הלילה”

  1. זה סירב לעלות בגלל שהיה לך diry-bit או משהוא אחר ? בעתיד אם זה רק dirty-bit של NTFS מספיק לשחרר את זה ע"י
    mount -o remove_hibernatefile /dev/sdaX ו ntfsfix /dev/sdax

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

כתיבת תגובה

האימייל לא יוצג באתר. שדות החובה מסומנים *

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