שינוי גודל ידני של מאגרי עובדים

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

סקירה כללית

שינוי גודל ידני מאפשר לכם להגדיר מספר ספציפי של מופעים בלי שתצטרכו לפרוס מחדש. כך תוכלו לכתוב לוגיקה משלכם להתאמת גודל באמצעות מערכת חיצונית. אפשר לראות דוגמה לכך ב-Kafka Autoscaler.

שיקולים בנושא חיוב כשמשתמשים בהתאמת קנה מידה ידנית

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

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

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

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

הגדרת שינוי גודל

שינוי מצב ההתאמה או שינוי מספר המופעים הידני לא יוצרים גרסה חדשה.

כדי להגדיר את מצב שינוי הגודל, משתמשים במסוף Google Cloud , ב-Google Cloud CLI, ב-YAML, ב-Terraform או ב-API בארכיטקטורת REST:

המסוף

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

    כניסה ל-Cloud Run

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

  3. מאתרים את הטופס Scaling (למאגר חדש של עובדים) או את הטופס Edit scaling (למאגר קיים של עובדים).

    תמונה

  4. בשדה Number of instances (מספר המופעים) מציינים את מספר מופעי מאגר התגים בשירות.

  5. משלימים את המפרט.

  6. לוחצים על Create כדי ליצור מאגר עובדים חדש או על Save כדי לשמור מאגר עובדים קיים.

gcloud

כדי לציין את קנה המידה של מאגר עובדים חדש, משתמשים בפקודה deploy:

gcloud run worker-pools deploy WORKER_POOL \
    --instances=INSTANCE_COUNT \
    --image IMAGE_URL

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

  • WORKER_POOL: השם של מאגר העובדים.
  • INSTANCE_COUNT: מספר המופעים של מאגר העובדים. הפעולה הזו מגדירה את מאגר העובדים כמאגר עם שינוי גודל ידני. כדי להשבית את מאגר העובדים, מציינים את הערך 0.
  • IMAGE_URL: הפניה לקובץ האימג' של הקונטיינר שמכיל את מאגר העובדים, כמו us-docker.pkg.dev/cloudrun/container/worker-pool:latest.

כדי להגדיר את קנה המידה של מאגר עובדים קיים, משתמשים בפקודה update הבאה:

gcloud run worker-pools update WORKER_POOL \
   --instances=INSTANCE_COUNT

YAML

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

    gcloud run worker-pools describe WORKER_POOL --format export > worker-pool.yaml
  2. בדוגמה הבאה מופיעה הגדרת ה-YAML:

    apiVersion: run.googleapis.com/v1
    kind: WorkerPool
    metadata:
      name: WORKER_POOL
      annotations:
        run.googleapis.com/manualInstanceCount: `INSTANCE_COUNT`

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

    • WORKER_POOL: השם של מאגר העובדים של Cloud Run.
    • INSTANCE_COUNT: מספר המופעים שאתם משנים את הגודל שלהם באופן ידני במאגר העובדים. כדי להשבית את מאגר העובדים, צריך לציין את הערך 0.
  3. יוצרים או מעדכנים את מאגר העובדים באמצעות הפקודה הבאה:

    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" {
  name     = "WORKER_POOL"
  location = "REGION"

  template {
    containers {
      image = "IMAGE_URL"
    }
  }
  scaling {
    scaling_mode = "MANUAL"
    manual_instance_count = "INSTANCE_COUNT"
  }
}

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

  • WORKER_POOL: השם של מאגר העובדים.
  • REGION: האזור Google Cloud . לדוגמה, europe-west1.
  • IMAGE_URL: הפניה לקובץ האימג' של הקונטיינר שמכיל את מאגר העובדים, כמו us-docker.pkg.dev/cloudrun/container/worker-pool:latest.
  • INSTANCE_COUNT: מספר המופעים של מאגר העובדים. הפעולה הזו מגדירה את מאגר העובדים כמאגר עם שינוי גודל ידני. מציינים ערך של 0 כדי להשבית את מאגר העובדים.

‫API בארכיטקטורת REST

כדי לעדכן את מספר המופעים של מאגר עובדים נתון, שולחים בקשת HTTP לנקודת הקצה workerPools של Cloud Run Admin API.PATCH

לדוגמה, באמצעות curl:

    curl -H "Content-Type: application/json" \
    -H "Authorization: Bearer ACCESS_TOKEN" \
    -X PATCH \
    -d '{"scaling":{"manualInstanceCount":INSTANCE_COUNT }}' \
    https://run.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/workerPools/WORKER_POOL?update_mask=scaling.manualInstanceCount

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

  • ACCESS_TOKEN: אסימון גישה תקין לחשבון שיש לו הרשאות IAM לעדכון מאגר עובדים. לדוגמה, אם אתם מחוברים ל-gcloud, אתם יכולים לאחזר טוקן גישה באמצעות gcloud auth print-access-token. מתוך מופע קונטיינר של Cloud Run, אפשר לאחזר אסימון גישה באמצעות שרת המטא-נתונים של מופע הקונטיינר.
  • INSTANCE_COUNT: מספר המופעים של מאגר העובדים.
  • PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
  • REGION: האזור שבו נפרס מאגר העובדים. Google Cloud
  • WORKER_POOL: השם של מאגר העובדים.

צפייה בהגדרות של שינוי גודל מאגר העובדים

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

    כניסה ל-Cloud Run

  2. לוחצים על Worker pools כדי להציג את רשימת מאגרי העובדים שנפרסו.

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

  4. הגדרת שינוי הגודל הנוכחית מוצגת מעל רשימת הגרסאות של מאגרי העובדים: שינוי גודל: ידני (מופעים: ).

השבתה של מאגר עובדים

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

gcloud run worker-pools update WORKER_POOL --instances=0

מחליפים את WORKER_POOL בשם של מאגר העובדים.