הגדרת מספר מקסימלי של ניסיונות חוזרים למשימות

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

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

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

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

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

הגדרת מספר מקסימלי של ניסיונות חוזרים

כדי לציין את מספר הניסיונות החוזרים המקסימלי:

המסוף

  1. נכנסים לדף Jobs ב-Cloud Run במסוף Google Cloud :

    כניסה ל-Cloud Run

  2. לוחצים על Deploy container (פריסת מאגר תגים) כדי למלא את דף ההגדרות הראשוניות של המשימה. אם מגדירים משימה קיימת, בוחרים את המשימה ולוחצים על View and edit job configuration (הצגה ועריכה של הגדרת המשימה).

  3. לוחצים על Container(s), Volumes, Connections, Security (מאגרי נתונים, אמצעי אחסון, חיבורים, אבטחה) כדי להרחיב את דף מאפייני העבודה.

  4. לוחצים על הכרטיסייה General.

    תמונה

    • מציינים את מספר הניסיונות החוזרים באמצעות מספר שלם מ-0 עד 10.
  5. לוחצים על יצירה או על עדכון.

gcloud

  1. למשרה שאתם יוצרים:

    gcloud run jobs create JOB_NAME --image IMAGE_URL --max-retries RETRY

    החלפה

    • JOB_NAME בשם של המשימה.
    • IMAGE_URL: הפניה לקובץ אימג' של קונטיינר, לדוגמה us-docker.pkg.dev/cloudrun/container/job:latest.
    • RETRY עם מספר הניסיונות החוזרים: מציינים מספר שלם מ-0 עד 10.
  2. כדי לעדכן משרה:

    gcloud run jobs update JOB_NAME --max-retries RETRY

YAML

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

    gcloud run jobs describe JOB_NAME --format export > job.yaml
  2. מעדכנים את המאפיין maxRetries::

    apiVersion: run.googleapis.com/v1
    kind: Job
    metadata:
      name: JOB
    spec:
      template:
        spec:
          template:
            spec:
              containers:
              - image: IMAGE
              maxRetries: RETRIES

    מחליפים את RETRIES במספר הניסיונות החוזרים: מציינים מספר שלם מ-0 עד 10.

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

  3. מעדכנים את ההגדרה הקיימת של העבודה:

    gcloud run jobs replace job.yaml

Terraform

כדי ללמוד איך להחיל הגדרות ב-Terraform או להסיר אותן, ראו פקודות בסיסיות ב-Terraform.

מוסיפים את השורות הבאות למשאב google_cloud_run_v2_job בקובץ התצורה של Terraform:

resource "google_cloud_run_v2_job" "default" {
  name     = "cloud-run-job-retries"
  location = "us-central1"

  deletion_protection = false # set to "true" in production

  template {
    template {
      max_retries = 3

      containers {
        image = "us-docker.pkg.dev/cloudrun/container/job:latest"
      }
    }
  }
}

הצגת ההגדרות של מספר הניסיונות המקסימלי

כדי לראות את ההגדרות הנוכחיות של מספר הניסיונות החוזרים המקסימליים לעבודת Cloud Run:

המסוף

  1. במסוף Google Cloud , נכנסים לדף Cloud Run jobs:

    כניסה לדף Cloud Run jobs

  2. לוחצים על המשרה שמעניינת אתכם כדי לפתוח את הדף פרטי המשרה.

  3. לוחצים על View and Edit job configuration (הצגה ועריכה של הגדרות העבודה).

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

gcloud

  1. משתמשים בפקודה הבאה:

    gcloud run jobs describe JOB_NAME
  2. מאתרים את ההגדרה של מספר הניסיונות החוזרים המקסימלי בתצורה שמוחזרת.