כדי להפעיל מופעים במצב המתנה בשירותים, צריך להגדיר את ההגדרה של מספר המופעים המינימלי.
כברירת מחדל, Knative serving מגדיל את מספר המכונות בהתאם למספר הבקשות הנכנסות. עם זאת, אם השירות שלכם דורש השהיה נמוכה ואתם רוצים להגביל את מספר ההפעלות הקרות, אתם יכולים לשנות את התנהגות ברירת המחדל הזו על ידי ציון מספר מינימלי של מופעי קונטיינר שיופעלו ויהיו מוכנים לשרת בקשות.
אם המקרים ימשיכו לפעול בצורה הזו, יחויבו עליהם עלויות חיוב.
עדכונים ומספר מינימלי של מופעים
הפעלת מספר המופעים המינימלי מתבצעת רק אם הגרסה היא ניתנת להפניה. גרסה ניתנת לגישה אם מתקיים אחד מהתנאים הבאים:
- היא מקבלת אחוז מסוים מהתנועה.
- הוקצה לו תג של גרסה.
הגדרה ועדכון של מספר המופעים המינימלי
כל שינוי בהגדרות מוביל ליצירה של גרסה חדשה. גם גרסאות מתוקנות עתידיות יקבלו את הגדרת התצורה הזו באופן אוטומטי, אלא אם תבצעו עדכונים מפורשים כדי לשנות אותה.
כברירת מחדל, האפשרות min-instances מושבתת במופעים של מאגרי תגים, וההגדרה היא 0. אפשר לשנות את ברירת המחדל הזו באמצעות מסוף Google Cloud או Google Cloud CLI כשפורסים שירות חדש או מעדכנים שירות קיים ופורסים עדכון:
המסוף
נכנסים אל Knative serving במסוף Google Cloud :
אם אתם מגדירים שירות חדש שאתם פורסים, לוחצים על יצירת שירות. אם מגדירים שירות קיים, לוחצים על השירות ואז על עריכה ופריסה של גרסה חדשה.
בקטע הגדרות מתקדמות, לוחצים על מאגר תגים.
בשדה Minimum number of instances (מספר המינימום של מופעים), מציינים את מספר מופעי הקונטיינר הרצויים שצריך לשמור במצב פעיל ומוכן לקבלת בקשות.
לוחצים על הבא כדי להמשיך לקטע הבא.
בקטע Configure how this service is triggered (הגדרה של אופן הפעלת השירות), בוחרים את סוג הקישוריות שרוצים להשתמש בו כדי להפעיל את השירות.
לוחצים על יצירה כדי לפרוס את התמונה ב-Knative serving ומחכים עד שהפריסה תסתיים.
שורת הפקודה
בשירותים קיימים, מגדירים את המספר המינימלי של מופעי קונטיינר על ידי הרצת הפקודה
gcloud run services updateעם הפרמטר--min-instances:gcloud run services update SERVICE --min-instances MIN-VALUE
מחליפים את:
- SERVICE בשם של השירות.
- MIN-VALUE עם מספר מופעי הקונטיינר הרצויים שצריך לשמור במצב פעיל, מוכנים לקבל בקשות. כדי לבטל את ההגדרה של מספר המופעים המינימלי, צריך לציין את הערך
default.
בשירותים חדשים, מגדירים את המספר המינימלי של מופעי מאגר התגים על ידי הפעלת הפקודה
gcloud run deployעם הפרמטר--min-instances:gcloud run deploy SERVICE --image=IMAGE_URL --min-instances MIN-VALUE
מחליפים את:
- SERVICE בשם של השירות.
- IMAGE_URL עם הפניה לקובץ אימג' של קונטיינר, לדוגמה,
gcr.io/cloudrun/hello. - MIN-VALUE עם מספר מופעי הקונטיינר הרצויים שצריך לשמור במצב פעיל, מוכנים לקבל בקשות. כדי לבטל את ההגדרה של מספר המופעים המינימלי, צריך לציין את הערך
default.
YAML
אפשר להוריד את ההגדרה של שירות קיים לקובץ YAML באמצעות הפקודה gcloud run services describe והדגל --format=export.
אחר כך תוכלו לשנות את קובץ ה-YAML ולפרוס את השינויים האלה באמצעות הפקודה gcloud run services replace.
חשוב לוודא שמשנים רק את המאפיינים שצוינו.
מורידים את ההגדרה של השירות לקובץ בשם
service.yamlבסביבת העבודה המקומית:gcloud run services describe SERVICE --format export > service.yaml
מחליפים את SERVICE בשם של שירות Knative serving.
מעדכנים את המאפיין
autoscaling.knative.dev/minScale:בקובץ המקומי:spec: template: metadata: annotations: autoscaling.knative.dev/minScale: 'MIN-INSTANCE'
מחליפים את:
- MIN-VALUEcode> עם מספר מופעי הקונטיינר הרצויים שצריך לשמור במצב פעיל, מוכנים לקבל בקשות. כדי לבטל את ההגדרה של מספר המופעים המינימלי, צריך לציין את הערך
default.
- MIN-VALUEcode> עם מספר מופעי הקונטיינר הרצויים שצריך לשמור במצב פעיל, מוכנים לקבל בקשות. כדי לבטל את ההגדרה של מספר המופעים המינימלי, צריך לציין את הערך
מחליפים את השירות בהגדרות החדשות באמצעות הפקודה הבאה:
gcloud run services replace service.yaml