במאמר הזה נסביר איך לראות את הטופולוגיה הפיזית של צמתים ב-Google Kubernetes Engine (GKE) במופעים של A4X Max, A4X, A4, A3 Ultra, A3 Mega ו-A3 High Compute Engine. הבנה של המיקום הפיזי של הצמתים עוזרת לכם לבצע אופטימיזציה של מיקום ה-Pod עבור עומסי העבודה של ה-AI.
לפני שמתחילים
לפני שמתחילים, חשוב לוודא שביצעתם את הפעולות הבאות:
- מפעילים את ממשק Google Kubernetes Engine API. הפעלת Google Kubernetes Engine API
- כדי להשתמש ב-CLI של Google Cloud למשימה הזו, צריך להתקין ואז לאתחל את ה-CLI של gcloud. אם התקנתם בעבר את ה-CLI של gcloud, מריצים את הפקודה
gcloud components updateכדי לקבל את הגרסה העדכנית. יכול להיות שגרסאות קודמות של ה-CLI של gcloud לא יתמכו בהרצת הפקודות שמופיעות במסמך הזה.
התחברות לאשכול
מריצים את הפקודה הבאה כדי להתחבר לאשכול:
gcloud container clusters get-credentials CLUSTER_NAMEמחליפים את
CLUSTER_NAMEבשם האשכול.
הסבר על טופולוגיית הצמתים ב-GKE
כדי להבין את הטופולוגיה הפיזית של צמתי GKE במכונות A4X Max, A4X, A4 ו-A3 Ultra Compute Engine, אפשר לעיין בתוויות הצמתים הבאות:
-
cloud.google.com/gce-topology-block: המזהה הספציפי לארגון של הבלוק השמור שבו נמצא ה-VM. בלוק הוא אוסף של תת-בלוקים שמחוברים באמצעות שכבה של רשת מבוזרת. -
cloud.google.com/gce-topology-subblock: המזהה הספציפי לארגון של תת-הבלוק שבו נמצאת המכונה הווירטואלית. תת-בלוק הוא קבוצה של מארחים וציוד קישוריות משויך:- במכונות וירטואליות מסוג A4 ו-A3 Ultra, המארחים מתחברים דרך רשת Jupiter מבוזרת בקנה מידה גדול.
- מכונות A4X Max ו-A4X Compute Engine מאורגנות בתת-בלוקים, שכל אחד מהם מהווה תחום NVIDIA NVLink (NVL72). בכל NVL72, מעבדי ה-GPU מחוברים זה לזה באופן הדוק באמצעות NVLink ייעודי עם רוחב פס גבוה. במקרים שבהם יש כמה תתי-בלוקים, יחידות ה-GPU יכולות להתחבר באמצעות כרטיסי RDMA NIC על ידי שימוש ב-RoCE fabric. תקשורת בין מארחים בין תת-בלוקים, וגם תעבורת נתונים אחרת ברשת כמו אחסון, מתבצעת באמצעות רשת Jupiter דרך כרטיסי רשת אתרנט של ממשק קצה במהירות גבוהה.
-
cloud.google.com/gce-topology-host: המזהה הספציפי לארגון של המארח שבו נמצאת המכונה הווירטואלית. מארח או צומת הם מכונת שרת פיזית אחת במרכז הנתונים. כל צומת GKE מוקצה במכונה וירטואלית שמוקצית על גבי מארח פיזי. -
kubernetes.io/hostname: שם המארח של צומת Kubernetes. בדרך כלל זה גם שם הצומת ב-GKE.
הצגת הטופולוגיה הפיזית של צמתי אשכול GKE
מריצים את הפקודה הבאה כדי לקבל את תוויות הצמתים של צמתי אשכול GKE עם מאיץ ספציפי:
kubectl get nodes -l cloud.google.com/gke-accelerator=ACCELERATOR \ -ocustom-columns='0-NAME:.metadata.name,0-BLOCK:.metadata.labels.cloud\.google\.com/gce-topology-block,0-SUBBLOCK:.metadata.labels.cloud\.google\.com/gce-topology-subblock,0-HOST:.metadata.labels.cloud\.google\.com/gce-topology-host'| sort -k2,4
מחליפים את ACCELERATOR בשם של המאיץ, למשל nvidia-h200-141gb.
בפלט מוצגים הבלוק, תת-הבלוק והמארח של כל אחד מצמתי GKE עם המאיץ שצוין.
מידע נוסף זמין במאמר בנושא הצגת הטופולוגיה של הזמנה.
המאמרים הבאים
- איך מתזמנים עומסי עבודה ב-GKE באמצעות תזמון שמודע לטופולוגיה
- איך מנהלים אירועי תחזוקה של מארחים, שדרוגים של אשכולות ודיווח על מארחים פגומים באשכולות GKE