דף זה מתאר את תצורת ה-GPU עבור מאגרי העובדים של Cloud Run שלך. Google מספקת GPU NVIDIA RTX PRO 6000 Blackwell עם זיכרון GPU (VRAM) בנפח 96GB ו-GPU NVIDIA L4 עם זיכרון GPU (VRAM) בנפח 24GB, שהוא נפרד מזיכרון המופע.
ה-GPU ב-Cloud Run מנוהל באופן מלא, ולא נדרשים מנהלי התקנים או ספריות נוספים. תכונת ה-GPU מציעה זמינות על פי דרישה ללא צורך בהזמנות, בדומה לאופן שבו CPU על פי דרישה וזיכרון על פי דרישה פועלים ב-Cloud Run.
מופעים של Cloud Run עם יחידת GPU מסוג NVIDIA RTX PRO 6000 Blackwell או L4 עם דרייברים מותקנים מראש מתחילים לפעול תוך כ-5 שניות, ובשלב הזה התהליכים שפועלים בקונטיינר יכולים להתחיל להשתמש ב-GPU.
אפשר להגדיר GPU אחד לכל מופע של Cloud Run. אם משתמשים במאגרי sidecar, חשוב לזכור שאפשר לצרף את ה-GPU רק למאגר אחד.
סוגי GPU נתמכים
Cloud Run תומך בשני סוגים של יחידות GPU:
- NVIDIA RTX PRO 6000 Blackwell GPU עם הגרסה הנוכחית של דרייבר NVIDIA: 580.x.x (13.0). כדי להשתמש ב-GPU NVIDIA RTX PRO 6000 Blackwell, צריך להשתמש ב-20 ליבות CPU ובזיכרון בנפח 80GiB לפחות.
- L4 GPU עם הגרסה הנוכחית של הדרייבר של NVIDIA: 580.x.x (13.0). ב-GPU מסוג L4, צריך להשתמש ב-4 מעבדים לפחות ובזיכרון בנפח 16GiB.
אזורים נתמכים
האזורים הבאים נתמכים על ידי NVIDIA RTX PRO 6000 Blackwell GPU:
asia-southeast1(סינגפור).asia-south2(דלהי, הודו).europe-west4(הולנד)רמה נמוכה של CO2
us-central1(אייווה)רמה נמוכה של CO2
האזורים הבאים נתמכים על ידי L4 GPU:
asia-southeast1(סינגפור)asia-south1(מומבאי) . האזור הזה זמין רק בהזמנה. אם אתם מעוניינים באזור הזה, תוכלו לפנות לצוות התמיכה בחשבונות Google.europe-west1(בלגיה)רמה נמוכה של CO2
europe-west4(הולנד)רמה נמוכה של CO2
us-central1(אייווה)רמה נמוכה של CO2 . יכול להיות שיהיה צורך לשלוח בקשה להגדלת המכסה כדי להרחיב את השימוש במשאבים באזור הזה. אם אתם מעוניינים באזור הזה, תוכלו לפנות לצוות התמיכה בחשבונות Google.
-
us-east4(צפון וירג'יניה) . יכול להיות שיהיה צורך לשלוח בקשה להגדלת המכסה כדי להרחיב את השימוש במשאבים באזור הזה. אם אתם מעוניינים באזור הזה, תוכלו לפנות לצוות התמיכה בחשבונות Google.
השפעה על התמחור
פרטים על תמחור של GPU זמינים במאמר תמחור של Cloud Run. שימו לב לדרישות ולשיקולים הבאים:
- יש הבדל בעלות בין יתירות אזורית של GPU לבין יתירות לא אזורית. פרטים על תמחור של GPU זמינים במאמר תמחור של Cloud Run.
- לא ניתן לשנות קנה מידה אוטומטי של מאגרי עובדי GPU. אתה מחויב עבור ה-GPU גם אם ה-GPU אינו מפעיל תהליך כלשהו, וכל עוד מופע ה-GPU של מאגר העובדים פועל.
- מעבד וזיכרון עבור מאגרי עובדים מתומחרים בצורה שונה מאשר שירותים ומשימות. עם זאת, מחירו של SKU של GPU זהה למחירו של שירותים ועבודות.
- הגדרות המעבד (CPU) והזיכרון של המשאב.
- החיוב על ה-GPU מתבצע לכל משך מחזור החיים של המופע.
אפשרויות של יתירות אזורית של GPU
כברירת מחדל, Cloud Run פורס את מאגר העובדים שלך על פני מספר אזורים בתוך אזור. הארכיטקטורה הזו מספקת חוסן מובנה: אם יש הפסקת חשמל באזור מסוים, Cloud Run מעביר באופן אוטומטי את התעבורה מהאזור המושפע לאזורים תקינים באותו אזור.
כשעובדים עם משאבי GPU, חשוב לזכור שיש מגבלות קיבולת ספציפיות למשאבי GPU. במהלך הפסקת חשמל אזורית, מנגנון המעבר לגיבוי (failover) הרגיל לעומסי עבודה של GPU מסתמך על כך שקיבולת GPU פנויה מספקת תהיה זמינה באזורים הבריאים שנותרו. בגלל המגבלות של מעבדי GPU, יכול להיות שהקיבולת הזו לא תמיד תהיה זמינה.
כדי להגדיל את הזמינות של מאגרי העובדים המואצים על ידי GPU במהלך הפסקות אזוריות, ניתן להגדיר יתירות אזורית במיוחד עבור GPU:
יתירות אזורית מופעלת (ברירת מחדל): Cloud Run שומר קיבולת GPU עבור מאגר העובדים שלך על פני מספר אזורים. זה מגדיל משמעותית את הסבירות שמאגר העובדים שלך יוכל להתמודד בהצלחה עם תעבורה המנותבת מאזור מושפע, מה שמציע אמינות גבוהה יותר במהלך כשלים אזוריים עם עלות נוספת לכל שנייה של ה-GPU.
יתירות אזורית מושבתת: Cloud Run מנסה לבצע מעבר לגיבוי במקרה של כשל בעומסי עבודה של GPU, על בסיס האפשרות הטובה ביותר. התנועה מנותבת לאזורים אחרים רק אם יש מספיק קיבולת של GPU באותו רגע. האפשרות הזו לא מבטיחה קיבולת שמורה לתרחישי יתירות כשל, אבל העלות שלה נמוכה יותר לשנייה של GPU.
SLA
הסכם ה-SLA עבור Cloud Run GPU תלוי אם מאגר העובדים משתמש באפשרות יתירות אזורית או יתירות לא אזורית. פרטים נוספים זמינים בדף הסכם רמת השירות.
שליחת בקשה להגדלת המכסה
המיכסה של יחידות GPU ב-Cloud Run nvidia-rtx-pro-6000 ניתנת במילי-GPU.
כשיוצרים פריסה ראשונה בפרויקטים שמשתמשים ב-nvidia-rtx-pro-6000 GPU באזור בפעם הראשונה, מקבלים אוטומטית מכסה של 3,000 מילי-GPU (יתירות אזורית מושבתת). זה שווה ל-3 יחידות GPU. כשיוצרים פריסה ראשונה בפרויקטים שמשתמשים ב-GPU של Cloud Runnvidia-l4 באזור מסוים בפעם הראשונה, מקבלים אוטומטית מכסת GPU של 3 (יתירות אזורית מושבתת).
אם אתם זקוקים למעבדים גרפיים נוספים של Cloud Run, עליכם לבקש הגדלת מכסה עבור מאגר העובדים של Cloud Run שלכם. כדי לבקש את המכסה שדרושה לכם, לוחצים על הקישורים שמופיעים בלחצנים הבאים.
| נדרשת מכסה | קישור למכסה |
|---|---|
| NVIDIA RTX PRO 6000 Blackwell GPU עם יתירות אזורית מושבתת (מחיר נמוך יותר) | בקשת מכסת GPU ללא יתירות אזורית |
| NVIDIA RTX PRO 6000 Blackwell GPU עם יתירות אזורית מופעלת (מחיר גבוה יותר) | איך מבקשים מכסת GPU עם יתירות אזורית |
| L4 GPU עם יתירות אזורית מושבתת (מחיר נמוך יותר) | בקשת מכסת GPU ללא יתירות אזורית |
| L4 GPU עם יתירות אזורית מופעלת (מחיר גבוה יותר) | איך מבקשים מכסת GPU עם יתירות אזורית |
מידע נוסף על בקשות להגדלת מכסות זמין במאמר איך מגדילים את המכסה.
לפני שמתחילים
ברשימה הבאה מפורטות הדרישות והמגבלות כשמשתמשים ב-GPU ב-Cloud Run:
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
מפעילים את Cloud Run API.
תפקידים שנדרשים להפעלת ממשקי API
כדי להפעיל ממשקי API, נדרשת ההרשאה
serviceusage.services.enable. אם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד 'בעלים' (roles/owner). אחרת, תוכלו לקבל את ההרשאה הזו דרך התפקיד 'אדמין בממשק Service Usage' (roles/serviceusage.serviceUsageAdmin). איך מקצים תפקידים- שליחת בקשה להגדלת המכסה.
- עיין ב-שיטות עבודה מומלצות ל-GPU: מאגרי עובדים של Cloud Run עם GPUs לקבלת המלצות לבניית תמונת המכולה שלך וטעינת מודלים גדולים.
- ודא שבריכת העובדים של Cloud Run שלך כוללת את התצורות הבאות:
- מגדירים את הגדרות החיוב לחיוב לפי מופע. שים לב שמאגרי עובדים המוגדרים לחיוב מבוסס מופעים עדיין יכולים להסתגל לאפס.
- ב-GPU NVIDIA RTX PRO 6000 Blackwell, צריך להגדיר לפחות 20 מעבדים ולפחות 80 GiB של זיכרון.
- עבור GPU L4, הגדר מינימום של 4 CPUs עבור מאגר העובדים שלך, כאשר מומלץ 8 CPUs, ומינימום של 16 GiB של זיכרון, כאשר מומלץ 32 GiB.
- קבע וקבע ערך מקביליות מרבי אופטימלי לשימוש ב-GPU שלך.
התפקידים הנדרשים
כדי לקבל את ההרשאות שדרושות להגדרה ולפריסה של מאגרי עובדים ב-Cloud Run, אתם צריכים לבקש מהאדמין להקצות לכם את תפקידי ה-IAM הבאים ב-workerpools:
- Cloud Run Developer (
roles/run.developer) – מאגר העובדים של Cloud Run - משתמש בחשבון שירות (
roles/iam.serviceAccountUser) – זהות השירות
רשימת ההרשאות והתפקידים ב-IAM שמשויכים ל-Cloud Run מופיעה במאמרים תפקידי IAM ב-Cloud Run והרשאות IAM ב-Cloud Run. אם מאגר העובדים של Cloud Run מתקשר עםGoogle Cloud ממשקי API, כמו ספריות לקוח ב-Cloud, כדאי לעיין במדריך להגדרת זהות שירות. מידע נוסף על מתן תפקידים זמין במאמרים הרשאות פריסה וניהול גישה.
הגדרת מאגר עובדים ב-Cloud Run עם GPU
כל שינוי בהגדרות מוביל ליצירה של גרסה חדשה. גם גרסאות מאוחרות יותר יקבלו את הגדרת התצורה הזו באופן אוטומטי, אלא אם תבצעו עדכונים מפורשים כדי לשנות אותה.
אפשר להשתמש במסוף Google Cloud , ב-Google Cloud CLI או ב-YAML כדי להגדיר GPU.
המסוף
נכנסים ל-Cloud Run במסוף Google Cloud :
בתפריט הניווט של Cloud Run, בוחרים באפשרות Worker Pools (מאגרי עובדים) ולוחצים על Deploy container (פריסת קונטיינר) כדי להגדיר מאגר עובדים חדש. אם אתם מגדירים מאגר עובדים קיים, לוחצים על מאגר העובדים ואז על Edit and deploy new revision (עריכה ופריסה של עדכון חדש).
אם אתם מגדירים מאגר עובדים חדש, ממלאים את הדף של ההגדרות הראשוניות של מאגר העובדים ולוחצים על Containers, Networking, Security כדי להרחיב את דף ההגדרות של מאגר העובדים.
לוחצים על הכרטיסייה Containers (מאגרי תגים).
- מגדירים את המעבד (CPU), הזיכרון, המקביליות, סביבת ההפעלה ובדיקת ההפעלה בהתאם להמלצות שבקטע לפני שמתחילים.
- מסמנים את תיבת הסימון לצד GPU, בוחרים את סוג ה-GPU בתפריט סוג ה-GPU ואת מספר ה-GPU בתפריט מספר ה-GPU.
- כברירת מחדל, יתירות אזורית מופעלת. כדי לשנות את ההגדרה הנוכחית, מסמנים את תיבת הסימון GPU כדי להציג את האפשרויות של GPU redundancy (יתירות GPU).
- בחר ללא יתירות אזורית כדי לכבות את היתירות האזורית
- בחר יתירות אזורית כדי להפעיל יתירות אזורית.
לוחצים על יצירה או על פריסה.
gcloud
כדי ליצור מאגר עובדים התומך ב-GPU, השתמש ב-gcloud run worker-pools deploy פְּקוּדָה:
gcloud run worker-pools deploy WORKER_POOL \ --image IMAGE_URL \ --gpu 1
מחליפים את מה שכתוב בשדות הבאים:
- WORKER_POOL: השם של מאגר העובדים של Cloud Run.
-
IMAGE_URL: הפניה לקובץ האימג' של הקונטיינר שמכיל את מאגר העובדים, כמוus-docker.pkg.dev/cloudrun/container/worker-pool:latest.
כדי לעדכן את תצורת ה-GPU עבור מאגר עובדים, השתמש ב-gcloud run worker-pools update פְּקוּדָה:
gcloud run worker-pools update WORKER_POOL \ --image IMAGE_URL \ --cpu CPU \ --memory MEMORY \ --gpu GPU_NUMBER \ --gpu-type GPU_TYPE \ --GPU_ZONAL_REDUNDANCY
מחליפים את מה שכתוב בשדות הבאים:
- WORKER_POOL: השם של מאגר העובדים של Cloud Run.
-
IMAGE_URL: הפניה לקובץ האימג' של הקונטיינר שמכיל את מאגר העובדים, כמוus-docker.pkg.dev/cloudrun/container/worker-pool:latest. - CPU: מספר ליבות ה-CPU. עבור NVIDIA RTX PRO 6000 Blackwell GPU,
צריך לציין לפחות
20CPU. עבור כרטיס מסך NVIDIA L4, עליך לציין לפחות4מעבד. - MEMORY: נפח הזיכרון. עבור כרטיס מסך Blackwell של NVIDIA RTX PRO 6000, עליך לציין לפחות
80Gi(80 ג'יגה-בייט). עבור כרטיס מסך NVIDIA L4, עליך לציין לפחות16Gi(16 GiB). - GPU_NUMBER: הערך
1(אחד). אם לא מציינים את הפרמטר הזה אבל מציינים GPU_TYPE, ברירת המחדל היא1. - GPU_TYPE: סוג ה-GPU. NVIDIA RTX PRO 6000 Blackwell GPU,
enter
nvidia-rtx-pro-6000. עבור L4 GPU, מזינים את הערךnvidia-l4(nvidia-L4 באותיות קטנות, לא הערך המספרי 14). - GPU_ZONAL_REDUNDANCY:
no-gpu-zonal-redundancyכדי להשבית את יתירות האזורים, אוgpu-zonal-redundancyכדי להפעיל את יתירות האזורים.
YAML
אם אתם יוצרים מאגר עובדים חדש, דלגו על השלב הזה. אם אתם מעדכנים מאגר עובדים קיים, מורידים את הגדרת ה-YAML שלו:
gcloud run worker-pools describe WORKER_POOL --format export > worker-pool.yaml
מעדכנים את המאפיין
nvidia.com/gpu:ואתnodeSelector::
run.googleapis.com/accelerator:apiVersion: run.googleapis.com/v1 kind: WorkerPool metadata: name: WORKER_POOL spec: template: metadata: annotations: run.googleapis.com/gpu-zonal-redundancy-disabled: 'GPU_ZONAL_REDUNDANCY' spec: containers: - image: IMAGE_URL resources: limits: cpu: 'CPU' memory: 'MEMORY' nvidia.com/gpu: '1' nodeSelector: run.googleapis.com/accelerator: GPU_TYPE
מחליפים את מה שכתוב בשדות הבאים:
- WORKER_POOL: השם של מאגר העובדים של Cloud Run.
-
IMAGE_URL: הפניה לקובץ האימג' של הקונטיינר שמכיל את מאגר העובדים, כמוus-docker.pkg.dev/cloudrun/container/worker-pool:latest. - CPU: מספר המעבדים. עבור NVIDIA RTX PRO 6000 Blackwell
GPU, צריך לציין לפחות
20מעבדים. ב-L4 GPU, צריך לציין לפחות4מעבדים. - MEMORY: נפח הזיכרון. עבור כרטיס מסך Blackwell של NVIDIA RTX PRO 6000, עליך לציין לפחות
80Gi(80 ג'יגה-בייט). עבור GPU L4, עליך לציין לפחות16Gi(16 GiB). - GPU_TYPE: סוג ה-GPU. אם משתמשים ב-GPU NVIDIA RTX PRO 6000 Blackwell, מזינים
nvidia-rtx-pro-6000. עבור L4 GPU, מזינים את הערךnvidia-l4(nvidia-L4 באותיות קטנות, לא הערך המספרי 14). - GPU_ZONAL_REDUNDANCY:
falseלהפעלת יתירות אזורית של GPU אוtrueלהשבתה שלה.
יוצרים או מעדכנים את מאגר העובדים באמצעות הפקודה הבאה:
gcloud run worker-pools replace worker-pool.yaml
אם קיים קובץ
worker-pool.yaml, הפקודהgcloud run worker-pools replaceמשתמשת בו כברירת מחדל.
Terraform
כדי ללמוד איך להחיל הגדרות ב-Terraform או להסיר אותן, ראו פקודות בסיסיות ב-Terraform.
resource "google_cloud_run_v2_worker_pool" "default" {
provider = google-beta
name = "WORKER_POOL"
location = "REGION"
template {
gpu_zonal_redundancy_disabled = "GPU_ZONAL_REDUNDANCY"
containers {
image = "IMAGE_URL"
resources {
limits = {
"cpu" = "CPU"
"memory" = "MEMORY"
"nvidia.com/gpu" = "1"
}
}
}
node_selector {
accelerator = "GPU_TYPE"
}
}
}
מחליפים את מה שכתוב בשדות הבאים:
- WORKER_POOL: השם של מאגר העובדים של Cloud Run.
- GPU_ZONAL_REDUNDANCY:
falseלהפעלת יתירות אזורית של GPU אוtrueלהשבתה שלה. -
IMAGE_URL: הפניה לקובץ האימג' של הקונטיינר שמכיל את מאגר העובדים, כמוus-docker.pkg.dev/cloudrun/container/worker-pool:latest. - CPU: מספר המעבדים. עבור NVIDIA RTX PRO 6000 Blackwell GPU,
צריך לציין לפחות
20CPU. עבור כרטיס מסך NVIDIA L4, עליך לציין לפחות4מעבד. - MEMORY: נפח הזיכרון. עבור כרטיס מסך Blackwell של NVIDIA RTX PRO 6000, עליך לציין לפחות
80Gi(80 ג'יגה-בייט). עבור כרטיס מסך NVIDIA L4, עליך לציין לפחות16Gi(16 GiB). - GPU_TYPE: סוג ה-GPU. NVIDIA RTX PRO 6000 Blackwell GPU,
enter
nvidia-rtx-pro-6000. עבור L4 GPU, מזינים את הערךnvidia-l4(nvidia-L4 באותיות קטנות, לא הערך המספרי 14).
צפייה בהגדרות של GPU
כדי להציג את הגדרות ה-GPU הנוכחיות עבור מאגר העובדים של Cloud Run:
המסוף
במסוף Google Cloud , עוברים לדף Cloud Run worker pools:
לוחצים על מאגר העובדים שרוצים לפתוח את הדף פרטי מאגרי עובדים.
לוחצים על עריכה ופריסה של גרסה חדשה.
אתר את הגדרת ה-GPU בפרטי התצורה.
gcloud
משתמשים בפקודה הבאה:
gcloud run worker-pools describe WORKER_POOL
מחפשים את הגדרת ה-GPU בהגדרה שמוחזרת.
הסרת ה-GPU
אפשר להסיר GPU באמצעות מסוף Google Cloud , Google Cloud CLI או YAML.
המסוף
נכנסים ל-Cloud Run במסוף Google Cloud :
בחר Worker Pools (מאגרי עובדים) מתפריט הניווט של Cloud Run, ולחץ על Deploy container (פריסת מיכל) כדי להגדיר מאגר עובדים חדש. אם אתם מגדירים מאגר עובדים קיים, לוחצים על מאגר העובדים ואז על Edit and deploy new revision (עריכה ופריסה של עדכון חדש).
אם אתם מגדירים מאגר עובדים חדש, ממלאים את הדף של ההגדרות הראשוניות של מאגר העובדים ולוחצים על Containers, Networking, Security כדי להרחיב את דף ההגדרות של מאגר העובדים.
לוחצים על הכרטיסייה Containers (מאגרי תגים).
- בטל את הסימון בתיבת הסימון של GPU.
- לוחצים על יצירה או על פריסה.
gcloud
כדי להסיר את ה-GPU, הגדר את מספר ה-GPU ל-0:
gcloud run worker-pools update WORKER_POOL --gpu 0
החלף את WORKER_POOL בשם מאגר העובדים של Cloud Run שלך.
YAML
אם אתם יוצרים מאגר עובדים חדש, דלגו על השלב הזה. אם אתם מעדכנים מאגר עובדים קיים, מורידים את הגדרת ה-YAML שלו:
gcloud run worker-pools describe WORKER_POOL --format export > worker-pool.yaml
מוחקים את השורות
nvidia.com/gpu:ו-nodeSelector: run.googleapis.com/accelerator: GPU_TYPE.יוצרים או מעדכנים את מאגר העובדים באמצעות הפקודה הבאה:
gcloud run worker-pools replace worker-pool.yaml
אם קיים קובץ
worker-pool.yaml, הפקודהgcloud run worker-pools replaceמשתמשת בו כברירת מחדל.
ספריות של מנהלי התקנים
כברירת מחדל, כל ספריות הדרייברים של NVIDIA RTX PRO 6000 Blackwell GPU ו-NVIDIA L4 GPU מותקנות בתיקייה /usr/local/nvidia/lib64. Cloud Run מוסיף את הנתיב הזה באופן אוטומטי למשתנה הסביבה LD_LIBRARY_PATH (כלומר ${LD_LIBRARY_PATH}:/usr/local/nvidia/lib64) של הקונטיינר עם ה-GPU. כך המקשר הדינמי יכול למצוא את ספריות מנהלי ההתקנים של NVIDIA. ה-linker מחפש ומזהה נתיבים לפי הסדר שמופיע במשתנה הסביבה LD_LIBRARY_PATH. לכל ערך שמציינים במשתנה הזה יש עדיפות על פני נתיב ברירת המחדל של ספריות מנהלי התקנים של Cloud Run /usr/local/nvidia/lib64.
אם רוצים להשתמש בגרסת CUDA שגבוהה מ-13.0, הדרך הכי קלה היא להסתמך על תמונת בסיס חדשה יותר של NVIDIA עם חבילות תאימות קדימה שכבר מותקנות. אפשרות נוספת היא להתקין ידנית את חבילות התאימות קדימה של NVIDIA ולהוסיף אותן ל-LD_LIBRARY_PATH. כדאי לעיין בטבלת התאימות של NVIDIA כדי לדעת אילו גרסאות של CUDA תואמות לגרסת מנהל ההתקן של NVIDIA שסופקה.