מכונות TPU בקבוצות MIG

קבוצות מופעי מכונה מנוהלים (MIG) מאפשרות ליצור, להגדיר ולנהל את מחזור החיים של אוסף מכונות וירטואליות באופן אוטומטי. קבוצות MIG מספקות יתרונות כמו זמינות גבוהה באמצעות תיקון תוכנה אוטומטי (autohealing) ופריסות אזוריות (בכמה אזורים), התאמה אוטומטית לעומס (automatic scaling) כדי לטפל בעומסים משתנים, ועדכונים פשוטים בהדרגה (rolling) לאפליקציות. מידע נוסף זמין במאמר קבוצות מופעי מכונה מנוהלים.

אתם יכולים להשתמש בקבוצות MIG כדי ליצור ולנהל מכונות וירטואליות של TPU בגרסאות v5p,‏ v6e ו-TPU7x. אתם יכולים ליצור קבוצות MIG עם מכונת TPU VM אחת, מכונות TPU VM עצמאיות (שנקראות גם פרוסות של מארח יחיד) וקבוצות MIG עם מכונות TPU VM מקושרות (שנקראות גם פרוסות של כמה מארחים).

בכל פרוסה ב-MIG עם מארח יחיד יש לכל היותר מכונת TPU וירטואלית אחת. המכונות הווירטואליות של ה-TPU בתוך ה-MIG לא מחוברות באמצעות קישורי inter-chip interconnect ‏ (ICI).

פרוסה עם כמה מארחים מכילה כמה TPU VM שמחוברות ביניהן באמצעות קישורי ICI.

קבוצות MIG עם פרוסות TPU במארח יחיד

יצירת קבוצת מכונות מנוהלת (MIG) עם כמה מכונות TPU עצמאיות מועילה לעומסי עבודה שדורשים כמה מכונות וירטואליות נפרדות של TPU, אבל לא צריכים שהן יהיו מקושרות זו לזו באמצעות קישורי ICI לעומסי עבודה מבוזרים. לדוגמה:

  • הצגת הסקות: כל מכונה וירטואלית ב-MIG יכולה לטפל בבקשות הסקה באופן עצמאי. קבוצת MIG מאפשרת לשנות את מספר המכונות שמשרתות את הבקשות בהתאם לביקוש, ולנהל אותן כקבוצה.
  • משימות מקבילות בלתי תלויות: קבוצת MIG מאפשרת לנהל הרבה משימות אימון קטנות ובלתי תלויות או חישובים אחרים, שיכולים לפעול במקביל במכונות וירטואליות של TPU יחיד.
  • ניהול: קבוצות MIG מספקות את התכונות הבאות:
    • פריסה: מגדירים תבנית של הגדרות מכונה פעם אחת ומשתמשים ב-MIG כדי ליצור כמה מכונות וירטואליות זהות של TPU.
    • מדרגיות: אפשר לשנות את מספר מכונות ה-TPU הווירטואליות על ידי שינוי הגודל של ה-MIG.
    • עדכונים בהדרגה (rolling): עדכון התוכנה או סוג המכונה בכל המכונות הווירטואליות באופן מבוקר.
  • חיסכון בעלויות: במשימות שלא דורשות את כל היכולות או הקישוריות של פרוסת TPU גדולה, השימוש בכמה פרוסות TPU קטנות ובלתי תלויות יכול להיות חסכוני יותר.

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

קבוצות MIG עם פרוסה בכמה מארחים

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

יתרונות וביצועים

קבוצות MIG לפרוסות TPU עם כמה מארחים מספקות את קנה המידה והביצועים שנדרשים לעומסי עבודה אינטנסיביים של למידת מכונה.

  • אימון מבוזר: כדי לאמן מודלים של למידת מכונה, בדרך כלל נדרש יותר כוח TPU ממה שמכונה וירטואלית אחת של TPU יכולה לספק. פרוסות TPU גדולות יותר מחלקות את החישוב בין הרבה שבבי TPU ומכונות וירטואליות, וקישורי ה-ICI מאפשרים תקשורת מהירה ביניהם. זה חיוני לביצועי האימון.
  • רוחב פס גבוה של חיבורים הדדיים: רשת ה-ICI מספקת רוחב פס גבוה יותר וזמן אחזור קצר יותר בין שבבי ה-TPU בפרוסה, בהשוואה לרשת מרכז הנתונים (DCN) הרגילה. זה חיוני לפעולות סינכרוניות שמתבצעות בדרך כלל באימון מודלים גדולים.

פעולות אטומיות במחזור החיים

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

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

דרישות להגדרת התכונה

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

  • מדיניות עומס העבודה: צריך לציין מדיניות עומס עבודה באמצעות הפרמטר accelerator-topology (לדוגמה, 4x4,‏ 8x8 או 4x4x4). כך מגדירים את ה-MIG להתייחס למכונות כפרוסה אחת מקושרת. למידע על טופולוגיה, ראו ארכיטקטורת המערכת.
  • תבנית של הגדרות מכונה: מגדירה מאפיינים כמו סוג המכונה, קובץ האימג' של הדיסק והגדרות אחרות לכל מכונה וירטואלית בפרוסה.

זמינות של פרוסות והתאוששות מכשלים

כשמשתמשים ב-MIG כדי ליצור פרוסת TPU עם כמה מארחים, ההתנהגות של שחזור הכשל תלויה במודל ההקצאה ובמצב ההזמנה שבהם משתמשים:

  • כשקבוצת MIG משתמשת במשאבים על פי דרישה, בהתחלה גמישה או במקומות שמורים (לא כולל מקומות שמורים במצב All Capacity). במקרה כזה, Compute Engine מנהל באופן אוטומטי את תהליך השחזור של הפרוסה. אם יש כשל במארח או ב-ICI, הפרוסה עוברת למצב REACTIVATING. כל המכונות הווירטואליות בפרוסה עוברות למצב REPAIRING, אבל לא בהכרח כולן באותו זמן. לאחר מכן, המערכת של Compute Engine משחזרת באופן אוטומטי את הפרוסה על ידי הפעלה מחדש של המכונות הווירטואליות יחד בקיבולת תקינה.

  • כשקבוצת MIG משתמשת במודל ההקצאה של Spot. בתרחיש כזה, אתם אחראים לנהל את תהליך השחזור של הפרוסות. אם מתרחשת הפקעה של מכונות VM במודל Spot, ‏ Compute Engine מפסיק את כל המכונות בפרוסה. הפרוסה עוברת למצב FAILED והמכונות הווירטואליות עוברות למצב TERMINATED. כדי לצאת ממצב הכישלון, צריך ליצור מחדש את הפרוסה באופן ידני.

  • כשקבוצת MIG משתמשת בהזמנות במצב All Capacity. בתרחיש הזה, אתם אחראים לנהל את תהליך השחזור של הפרוסות. אם מתרחשת שגיאה, הפרוסה עוברת למצב FAILED וצריך ליצור אותה מחדש באופן ידני.

    ההתנהגות במצב "כל הקיבולת" תלויה גם בגורמים הבאים:

    • כשל במארח או דיווח על מכונה וירטואלית פגומה. המכונה הווירטואלית המושפעת עוברת למצב REPAIRING. אחרי שהחומרה הבסיסית מתוקנת, המכונה הווירטואלית חוזרת למצב RUNNING.
    • עבודות תחזוקה דחופות בקרוב. כשמפעילים אירוע תחזוקה באופן ידני, המכונות הווירטואליות עוברות מהמצב RUNNING למצב REPAIRING. בסיום התחזוקה, המכונה הווירטואלית חוזרת למצב RUNNING.
    • כשל ב-ICI. המכונות הווירטואליות נשארות במצב RUNNING, אבל מצב הפרוסה משתנה למצב FAILED.

כדי ליצור מחדש פרוסה אחרי הפסקה לפני הזמן של מכונות וירטואליות במודל Spot או כשל במצב All Capacity, צריך לבצע אחת מהפעולות הבאות:

  • מוחקים את ה-MIG ויוצרים אותו מחדש.
  • משנים את הגודל של ה-MIG ל-0, ואז מגדילים אותו לגודל הנדרש.

התאוששות מתקלה אחרי הפסקה של מכונה

אם מוחקים או עוצרים מכונת TPU, או עוצרים מכונה מתוך מערכת ההפעלה, הפרוסה עוברת למצב FAILED. במקרה כזה, הפרוסה נשארת במצב FAILED עד שיוצרים אותה מחדש. כדי ליצור מחדש את הפרוסה, צריך למחוק וליצור מחדש את ה-MIG, או לשנות את הגודל של ה-MIG ל-0 ואז להגדיל אותו.

מידע נוסף על מצבי הפרוסות מופיע במאמר הצגת הסטטוס של פרוסת TPU.

מגבלות

בקטעים הבאים מוסברות המגבלות על יצירת קבוצת MIG עם מכונות וירטואליות של TPU.

המגבלות של תבניות של הגדרות מכונה

לתבניות של הגדרות מכונה שמציינים בהן סוג מכונת TPU יש את המגבלות הבאות:

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

  • יחידות TPU יכולות לצרוך רק הזמנות מטורגטות ספציפית.

  • אי אפשר לציין מדיניות מיקום.

  • אסור להשבית את ההפעלה מחדש האוטומטית במקרים הבאים:

    • פרוסות עם כמה מארחים שמשתמשות במודלים של הקצאת משאבים מסוג Standard, ‏Flex-start או Reservation-bound (כולל מצב All Capacity).

    • מארח יחיד שמשתמש במודל הקצאה מבוסס-הזמנה במצב All Capacity.

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

מגבלות של קבוצות MIG

לקבוצות MIG עם יחידות TPU יש את המגבלות הבאות:

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

  • הפצה אזורית של MIG לאזורים: צריך להגדיר את צורת ההפצה של היעד לערך ANY_SINGLE_ZONE.

  • עדכוני הגדרות אישיות ב-MIG:

    • אי אפשר לעדכן קבוצת MIG שיוצרת פרוסת TPU עם כמה מארחים בגלל הטופולוגיה המוגדרת של המאיץ.
    • כדי לעדכן קבוצת MIG שיוצרת פרוסות TPU במארח יחיד, אפשר להשתמש בשיטות אוטומטיות או סלקטיביות. עם זאת, העדכונים לפרוסת TPU במארח יחיד לא תומכים בפעולת ההפעלה מחדש (RESTART). אם נדרשת הפעלה מחדש והפעולה הכי משבשת שמותרת היא החלפה (REPLACE), כלי העדכון יחליף את המכונה. אחרת, ניסיון העדכון ייכשל ותופיע הודעת שגיאה.
  • בקבוצת MIG שיוצרת פרוסת TPU עם כמה מארחים, חלות גם המגבלות הבאות:

    • מדיניות גודל היעד: צריך להגדיר את מצב המדיניות של גודל היעד לערך BULK. אחרי שמגדירים את המצב הזה, אי אפשר לשנות אותו.

    • גודל היעד: במצב Bulk, אפשר להגדיר את גודל היעד ל-0 או למספר המכונות שנדרשות כדי ליצור את טופולוגיית המאיץ.

    • מדיניות עומס העבודה: צריך לציין מדיניות עומס עבודה שבה מוגדרת הטופולוגיה של המאיץ. אחרי שמגדירים את מדיניות עומס העבודה, אי אפשר לשנות או להסיר את המדיניות מה-MIG.

    • תיקונים שהופעלו על ידי MIG: צריך להשבית את התיקונים שהופעלו על ידי MIG על ידי הגדרת השדה defaultActionOnFailure לערך DO_NOTHING. בהגדרה הזו, קבוצת ה-MIG לא מבצעת שום פעולה במכונה שנכשלה. ‫Compute Engine משחזר באופן אוטומטי את המכונה שנכשלה על ידי הפעלה מחדש של כל המכונות באותו פרוס על קיבולת תקינה.

  • תכונות שלא נתמכות: קבוצות MIG עם יחידות TPU לא תומכות בתכונות הבאות:

המאמרים הבאים