הגדרת מגבלות זיכרון למופעים

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

הסבר על השימוש בזיכרון

מכונות של Cloud Run שחורגות ממגבלת הזיכרון המותרת שלהן מופסקות.

הזיכרון שזמין למופע צריך להיות מספיק בשביל:

  • מריצים את קובץ ההפעלה של המופע, כי צריך לטעון את קובץ ההפעלה לזיכרון
  • הקצאת זיכרון בתהליך של המכונה
  • כתיבת קבצים במערכת הקבצים

גודל קובץ אימג' של קונטיינר הפריסה לא משפיע על הזיכרון שזמין למכונה.

הגדרה ועדכון של מגבלות זיכרון

אפשר להגדיר מגבלות זיכרון במופעים של Cloud Run. כברירת מחדל, הזיכרון שמוקצה לכל מופע הוא ‎2 GiB .

הזיכרון הנדרש כשמגדירים ערך של מעבד

כשמגדירים ערך של מעבד, נדרש הזיכרון הבא:

מעבדים (CPU) הזיכרון הנדרש
‫1 vCPU ‫512MiB עד 4GiB
‫2 vCPU ‫512MiB עד 8GiB
‫4 vCPU ‫2GiB עד 16GiB
‫6 vCPU ‫4 עד 24GiB
‫8 vCPU ‫4 עד 32 GiB

כמות הזיכרון המקסימלית

הכמות המקסימלית של הזיכרון שאפשר להגדיר היא 32 גיביבייט (32 Gi).

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

זיכרון מינימלי

הגדרת הזיכרון המינימלית היא ‎512 MiB.

שיקולי עלות

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

  1. קביעת הגדרות בסיסיות ראשוניות.
  2. כדאי לעקוב אחרי מדדי השימוש בזיכרון ב-Cloud Monitoring בזמן בדיקת המערכת בעומס.
  3. משנים את ההגדרות לפי הצורך.

אם השימוש בזיכרון נמוך באופן עקבי, כדאי להקטין את הזיכרון שהוקצה. אם זמן האחזור גבוה וניצול הזיכרון קרוב ל-100%, כדאי להגדיל את הזיכרון שהוקצה. אם אתם נתקלים בשגיאות של חריגה מזיכרון (OOM), כדאי להגדיל את הזיכרון שהוקצה או לשנות את האפליקציה כדי למנוע דליפות זיכרון ולהשתמש בפחות זיכרון. כדי להבין טוב יותר את השימוש בזיכרון, אפשר לעיין בלוח הבקרה של Cloud Monitoring.

למידע נוסף, אפשר לעיין בתמחור של Cloud Run או להשתמש במחשבון התמחור כדי להעריך את העלויות.

התפקידים הנדרשים

כדי לקבל את ההרשאות שנדרשות להגדרה ולפריסה של מופעי Cloud Run, צריך לבקש מהאדמין להקצות לכם את תפקידי ה-IAM הבאים:

רשימת ההרשאות והתפקידים ב-IAM שמשויכים ל-Cloud Run מופיעה במאמרים תפקידי IAM ב-Cloud Run והרשאות IAM ב-Cloud Run. אם מופע Cloud Run שלכם מתקשר עםGoogle Cloud ממשקי API, כמו ספריות לקוח של Cloud, כדאי לעיין במדריך להגדרת זהות שירות. מידע נוסף על מתן תפקידים זמין במאמרים הרשאות פריסה וניהול גישה.

הגדרת מגבלות זיכרון

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

אפשר להגדיר מגבלות זיכרון למופע של Cloud Run באמצעות Google Cloud CLI או YAML:

gcloud

אפשר לעדכן את הקצאת הזיכרון של מופע מסוים באמצעות הפקודה הבאה:

gcloud beta run instances update INSTANCE --memory SIZE

מחליפים את מה שכתוב בשדות הבאים:

  • INSTANCE: השם של המכונה
  • SIZE: גודל הזיכרון מתוך הטבלה של המעבד והזיכרון. הפורמט של הגודל הוא מספר קבוע או מספר עם נקודה עשרונית, שאחריו מופיעה יחידה: G או M, שמתאימות לגיגה-בייט או למגה-בייט בהתאמה, או שמשתמשים בערכים המקבילים של חזקות של 2: ‏ Gi או Mi, שמתאימים לגיבי-בייט או למבי-בייט בהתאמה.

אפשר גם להגדיר מגבלות זיכרון במהלך הפריסה באמצעות הפקודה:

gcloud beta run instances deploy --image IMAGE_URL --memory SIZE

מחליפים את מה שכתוב בשדות הבאים:

  • IMAGE_URL: הפניה לתמונת המאגר, כמו us-docker.pkg.dev/cloudrun/container/hello:latest.
  • SIZE: גודל הזיכרון מתוך הטבלה של ה-CPU והזיכרון. הפורמט של המידה הוא מספר נקודה קבועה או מספר נקודה צפה, ואחריו יחידה: G או M שמתאימות לגיגה-בייט או למגה-בייט, בהתאמה, או שמשתמשים במקבילות של חזקות של 2: ‏ Gi או Mi שמתאימות לגיבי-בייט או למבי-בייט, בהתאמה.

YAML

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

    gcloud beta run instances describe INSTANCE --format export > instance.yaml
  2. בדוגמה הבאה מופיעה הגדרת ה-YAML:

    apiVersion: run.googleapis.com/v1
    kind: Instance
    metadata:
      name: INSTANCE
      annotations:
        run.googleapis.com/launch-stage: BETA
    spec:
      containers:
      - image: IMAGE_URL
        resources:
          limits:
            memory: SIZE

    מחליפים את מה שכתוב בשדות הבאים:

    • INSTANCE: השם של מופע Cloud Run.
    • IMAGE_URL: הפניה לתמונת המאגר, כמו us-docker.pkg.dev/cloudrun/container/hello:latest.
    • SIZE: נפח הזיכרון שנבחר. הפורמט הוא מספר נקודה קבועה או מספר נקודה צפה, שאחריו יחידה: ‫G או M שמתאימים לגיגה-בייט או למגה-בייט, בהתאמה, או שמשתמשים בערכים המקבילים בחזקת שתיים: Gi או Mi שמתאימים לגיבי-בייט או למבי-בייט, בהתאמה.
  3. יוצרים או מעדכנים את המכונה באמצעות הפקודה הבאה:

    gcloud beta run instances replace instance.yaml