ה-Inference Gateway של Google Kubernetes Engine (GKE) עם תמיכה בכמה אשכולות מאזן את עומסי העבודה של מסקנות AI/ML בכמה אשכולות GKE. הוא משלב שערים מרובי אשכולות של GKE לניתוב תעבורת נתונים בין אשכולות עם Inference Gateway להצגת מודלים של AI/ML. השילוב הזה משפר את יכולת ההתאמה של הפריסות ואת הזמינות הגבוהה שלהן. במאמר הזה מוסברים המושגים הבסיסיים של השער והיתרונות שלו.
מידע נוסף על פריסת GKE Inference Gateway מרובה אשכולות זמין במאמר הגדרת GKE Inference Gateway מרובה אשכולות.
כדי להבין את המסמך הזה, צריך להכיר את המושגים הבאים:
- תזמור של AI/ML ב-GKE.
- טרמינולוגיה של AI גנרטיבי.
- מושגים בנושא רישות ב-GKE, כולל שירותים, שער רב-אשכולי ב-GKE ו-Gateway API.
- איזון עומסים ב-Cloud de Confiance, ובמיוחד איך מאזני עומסים פועלים עם GKE.
המסמך הזה מיועד לדמויות הבאות:
- מהנדסי למידת מכונה (ML), מנהלי פלטפורמות ומפעילים ומומחי נתונים ו-AI שמעוניינים להשתמש ביכולות של תזמור קונטיינרים ב-Kubernetes כדי להפעיל עומסי עבודה של AI/ML.
- מומחי Cloud Architect או מומחי רשתות שמתקשרים עם רשתות Kubernetes.
מידע נוסף על תפקידים נפוצים ומשימות לדוגמה שאנחנו מתייחסים אליהם בCloud de Confiance by S3NS תוכן, זמין במאמר תפקידים נפוצים של משתמשים ב-GKE Enterprise ומשימות.
היתרונות של GKE multi-cluster Inference Gateway
ה-GKE Inference Gateway עם תמיכה בריבוי אשכולות מספק כמה יתרונות לניהול עומסי העבודה של מסקנות AI/ML, כולל:
- משפר את הזמינות הגבוהה ואת העמידות בכשלים באמצעות איזון עומסים חכם בכמה אשכולות GKE, גם באזורים גיאוגרפיים שונים. עומסי העבודה של ההסקה נשארים זמינים, והמערכת מנתבת מחדש בקשות באופן אוטומטי אם יש בעיות באשכול או באזור, וכך מצמצמת את זמן ההשבתה.
- משפר את יכולת ההתאמה לגודל ומבצע אופטימיזציה של השימוש במשאבים על ידי איגום משאבי GPU ו-TPU מאשכולות שונים כדי לתת מענה לביקוש מוגבר. האיגום הזה מאפשר לעומסי העבודה שלכם להתרחב מעבר לקיבולת של אשכול יחיד, ולנצל ביעילות את המשאבים הזמינים בכל המערך.
- שיפור הביצועים באמצעות ניתוב אופטימלי ברחבי העולם. השער משתמש במדדים מתקדמים, כמו שימוש במטמון של זוגות מפתח/ערך (KV) מכל האשכולות, כדי לקבל החלטות יעילות לגבי ניתוב. הגישה הזו עוזרת לוודא שהבקשות מועברות לאשכול שמצויד בצורה הטובה ביותר לטפל בהן, וכך למקסם את הביצועים הכוללים של צי המכונות שלכם להסקת מסקנות מבוססת-AI/ML.
מגבלות
ל-GKE Inference Gateway מרובה אשכולות יש את המגבלות הבאות:
שילוב של Model Armor: שער ההסקה של GKE עם כמה אשכולות לא תומך בשילוב של Model Armor.
מגבלות על קבוצות של נקודות קצה ברשת (NEG): יש מגבלה של 50 קבוצות NEG לכלCloud de Confiance by S3NS Backend Service. כשמשתמשים ב-InferencePool עם כמה יציאות, כל יציאה בכל אזור יוצרת NEG ייעודי. לדוגמה, InferencePool עם שמונה יציאות באשכול אזורי טיפוסי (שלושה אזורים) יוצר 24 קבוצות NEG. לכן, שער רב-אשכולי יכול לצבור רק מאגר מסקנות כזה מ-2 אשכולות לכל היותר (2 אשכולות × 24 קבוצות NEG = 48 קבוצות NEG) לפני שמגיעים למגבלה של 50 קבוצות NEG.
רכיבים מרכזיים
GKE Inference Gateway מרובה אשכולות משתמש בכמה משאבים מותאמים אישית של Kubernetes כדי לנהל עומסי עבודה של הסקת מסקנות וניתוב תעבורה:
- InferencePool: קבוצות של בק-אנדים זהים של שרת מודלים באשכול היעד. המשאב הזה מפשט את הניהול וההתאמה של מופעי ההצגה של המודל. אובייקטים של InferencePool עם כמה יציאות נתמכים בפריסות של אשכול יחיד ושל כמה אשכולות.
-
InferenceObjective: הגדרת סדרי עדיפויות לניתוב של מודלים ספציפיים ב-InferencePool. הניתוב הזה עוזר לוודא שמודלים מסוימים יקבלו עדיפות בתנועה על סמך הדרישות שלכם. -
GCPInferencePoolImport: מאפשר להשתמש ב-HTTPRouteבאשכול התצורה כדי להגדיר ניתוב של בקשות לשרתי הקצה של המודל. המשאב הזה נוצר אוטומטית באשכול ההגדרות כשמייצאים InferencePool מאשכול יעד. אשכול התצורה משמש כנקודת בקרה מרכזית לסביבה מרובת האשכולות. -
GCPBackendPolicy: מאפשר להתאים אישית את אופן איזון העומסים של התנועה בשרתי הקצה. לדוגמה, אתם יכולים להפעיל איזון עומסים על סמך מדדים מותאמים אישית או להגדיר מגבלות על בקשות שנמצאות בתהליך לכל נקודת קצה, כדי להגן על שרתי המודלים. -
AutoscalingMetric: מגדיר מדדים מותאמים אישית, כמוvllm:kv_cache_usage_perc, לייצוא משרתי המודלים. אחר כך תוכלו להשתמש במדדים האלה ב-GCPBackendPolicyכדי לקבל החלטות חכמות יותר לגבי איזון עומסים, ולשפר את הביצועים ואת ניצול המשאבים.
איך פועל GKE Inference Gateway עם כמה אשכולות
שער ההסקה של GKE מרובה האשכולות מנהל את התנועה ומנתב אותה למודלים של AI/ML שנפרסו בכמה אשכולות GKE. כך זה עובד:
- ניהול תנועה מרכזי: אשכול הגדרות ייעודי מגדיר את כללי ניתוב התנועה. אשכול התצורה משמש כנקודת בקרה מרכזית לסביבה מרובת האשכולות. כשמפעילים את Ingress מרובה אשכולות עבור הצי, מציינים אשכול GKE כאשכול ההגדרות. הגישה המרכזית הזו מאפשרת לכם לנהל ממקום אחד את האופן שבו הבקשות מופנות למודלים בכל צי האשכולות של GKE.
- פריסת מודלים גמישה: מודלים בפועל של AI/ML פועלים באשכולות יעד נפרדים. ההפרדה הזו מאפשרת לכם לפרוס מודלים במקומות שהכי מתאימים לכך (לדוגמה, קרוב יותר לנתונים או לאשכולות עם חומרה ספציפית).
- שילוב קל של מודלים: כשפורסים מודל באשכול יעד, מקבצים את מופעי ההצגה שלו באמצעות InferencePool. ייצוא של InferencePool הופך אותו לזמין אוטומטית לניתוב באשכול התצורה.
- איזון עומסים חכם: השער לא רק מפזר את התנועה, אלא גם מקבל החלטות ניתוב חכמות. הגדרת שער הגישה לשימוש באותות שונים, כולל מדדים מותאמים אישית משרתי המודלים, עוזרת לוודא שהבקשות הנכנסות נשלחות לאשכול או למופע המודל המתאימים ביותר, וכך למקסם את הביצועים והשימוש במשאבים. לדוגמה, אפשר לנתב בקשות לאשכול עם קיבולת ההסקה הזמינה הגבוהה ביותר על סמך מדדים כמו השימוש במטמון של זוגות מפתח/ערך (KV).
המאמרים הבאים
- הוראות לפריסת השער מופיעות במאמר הגדרת שער ההסקה מרובה האשכולות של GKE.
- כדי ללמוד איך להשתמש בשדה
scopesבמשאבGCPBackendPolicy, אפשר לעיין במאמר התאמה אישית של הגדרות קצה עורפיות באמצעות היקפים שלGCPBackendPolicy.