מידע על התאמה ל-AI ב-GKE

במאמר הזה מוסבר מהי תוכנית התאימות של Kubernetes AI, למה היא חשובה לעומסי עבודה של AI/ML ב-Google Kubernetes Engine‏ (GKE) ואיך אפשר להגדיר אשכולות GKE תואמים.

למה חשוב שאשכולות GKE יעמדו בדרישות התאימות ל-AI

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

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

  • יכולת התאמה לעומס (Scalability): הגדלה והקטנה של עומסי העבודה של AI/ML ביעילות בהתאם לדרישה.
  • ביצועים: מפיקים את המרב מהחומרה, כולל מעבדי GPU ו-TPU.
  • ניידות: אפשר להריץ את אפליקציות ה-AI/ML בכל אשכול תואם של Kubernetes עם שינויים מינימליים.
  • יכולת פעולה הדדית: שילוב עם כלים ומסגרות אחרים בסביבה העסקית של AI/ML.

איך יוצרים אשכול GKE שתואם ל-AI

כדי ליצור אשכול GKE שתואם ל-AI, צריך:

  1. אפשר לעיין ברשימת הגרסאות התואמות בai-conformance מאגר GitHub.
  2. יוצרים אשכול GKE במצב רגיל שפועל בגרסה תואמת, כמו 1.34.0-gke.1662000 ואילך.
  3. מפעילים את Gateway API באשכול.

האשכול שלכם עומד עכשיו בדרישות החובה לתאימות ל-AI ב-Kubernetes.

מה הופך את GKE לפלטפורמה תואמת ל-Kubernetes AI

‫GKE מנהל את הדרישות הבסיסיות לתאימות ל-AI, כך שאתם לא צריכים לעשות זאת. בטבלה הבאה מפורטות חלק מהתכונות העיקריות האלה לעומסי עבודה של AI/ML. חלק מהתכונות האלה מופעלות כברירת מחדל, אבל אחרות, כמו Kueue לתזמון קבוצתי, הן תוספות אופציונליות שאפשר להתקין כדי לשפר את עומסי העבודה של AI/ML.

תוכנית התאימות של Kubernetes AI מתוכננת להתפתח עם הסביבה העסקית של AI/ML. הדרישות מתעדכנות עם כל מהדורת משנה של Kubernetes, בהתאם למצב האקוסיסטם. כדי לראות את כל הדרישות לגרסה משנית ספציפית, במאגר ai-conformance ב-GitHub, עיינו בקובץ docs/AIConformance-MINOR_VERSION.yaml, כאשר MINOR_VERSION היא הגרסה הספציפית שלכם, למשל v1.34.

דרישה
הקצאת משאבים דינמית (DRA) מאפשר לבקש משאבים בצורה גמישה ומפורטת יותר, מעבר לספירה. מידע נוסף זמין במאמר מידע על הקצאת משאבים דינמית.
Kubernetes Gateway API השירות הזה מספק ניהול מתקדם של תעבורת נתונים לשירותי הסקת מסקנות, ומאפשר יכולות כמו חלוקת התנועה לפי משקל וניתוב מבוסס-כותרות. מידע נוסף זמין במאמר מידע על GKE Gateway API.
תזמון קבוצתי השירות מבטיח תזמון של עומסי עבודה מבוססי-AI מבוזרים, כך שכל המשימות יתבצעו או שאף אחת מהן לא תתבצע. ב-GKE אפשר להתקין ולהפעיל בהצלחה לפחות פתרון אחד לתזמון קבוצתי. לדוגמה, ראו פריסת מערכת אצווה באמצעות Kueue.
התאמה לעומס (autoscaling) באשכול למאיצים מגדיל ומקטין קבוצות של צמתים שמכילות סוגים ספציפיים של מאיצים, על סמך Pods בהמתנה שמבקשים את המאיצים האלה. למידע נוסף:
‫Horizontal Pod Autoscaler (HPA) למאיצים פועל בצורה תקינה בקבוצות Pod שמשתמשות במאיצים, כולל היכולת לשנות את קנה המידה של קבוצות ה-Pod האלה על סמך מדדים בהתאמה אישית שרלוונטיים לעומסי עבודה של AI או למידת מכונה. מידע נוסף זמין במאמרים הבאים:
מדדי ביצועים של מאיצים התכונה חושפת מדדי ביצועים ברמת פירוט גבוהה באמצעות נקודת קצה (endpoint) של מדדים בפורמט סטנדרטי שניתן לקריאה על ידי מכונה. מידע נוסף זמין במאמרים הבאים:
מעקב סטנדרטי מערכת ניטור שיכולה לגלות ולאסוף מדדים מעומסי עבודה שחושפים אותם בפורמט סטנדרטי (לדוגמה, פורמט החשיפה של Prometheus). מידע נוסף זמין במאמר יכולת צפייה ב-GKE.
תמיכה באופרטורים של AI צריך להוכיח שאפשר להתקין בפלטפורמה לפחות מפעיל AI מורכב אחד עם הגדרת משאב בהתאמה אישית (CRD), ושהוא פועל באופן מהימן. מידע נוסף זמין במאמר יצירת פלטפורמה ללמידת מכונה באמצעות Kubeflow ו-Ray ב-Google Kubernetes Engine.

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