תוויות Cloud Run הן צמדי מפתח/ערך שמוחלים על שירותים ועדכונים של Cloud Run. בדף הזה מוסבר איך להגדיר, לשנות ולמחוק תוויות בשירותים ובגרסאות של Cloud Run. שימו לב: כשמגדירים תווית בשירות Cloud Run, נוצרת לשירות הזה גרסה חדשה עם התווית הזו. התווית לא מוחלת על גרסאות קודמות.
שימושים אפשריים:
- הקצאת עלויות ופירוטי חיוב.
- זיהוי משאבים שבהם נעשה שימוש על ידי צוותים או מרכזי עלות ספציפיים.
- להבחין בין סביבות פריסה (ייצור, Staging, בקרת איכות או בדיקה).
- זיהוי בעלים ותוויות מצב.
- סינון יומנים ב-Logging.
כללי שימוש בתוויות
הכלל הבא חל על השימוש בתוויות שהוגדרו בשירות Cloud Run:
אפשר להשתמש ב-Cloud Run רק בתוויות תקינות Google Cloud .
התפקידים הנדרשים
כדי לקבל את ההרשאות שדרושות להגדרה ולפריסה של שירותי Cloud Run, צריך לבקש מהאדמין להקצות לכם את תפקידי ה-IAM הבאים:
-
Cloud Run Developer (
roles/run.developer) בשירות Cloud Run -
משתמש בחשבון שירות (
roles/iam.serviceAccountUser) בזהות השירות
אם אתם פורסים שירות או פונקציה מקוד מקור, אתם צריכים גם לקבל תפקידים נוספים בפרויקט ובחשבון השירות של Cloud Build.
רשימת ההרשאות והתפקידים ב-IAM שמשויכים ל-Cloud Run מופיעה במאמרים תפקידי IAM ב-Cloud Run והרשאות IAM ב-Cloud Run. אם שירות Cloud Run שלכם מתקשר עםGoogle Cloud ממשקי API, כמו ספריות לקוח ב-Cloud, כדאי לעיין במדריך להגדרת זהות שירות. מידע נוסף על מתן תפקידים זמין במאמרים הרשאות פריסה וניהול גישה.
הגדרת תוויות או שינוי שלהן
כל שינוי בהגדרות מוביל ליצירה של גרסה חדשה. גם גרסאות עתידיות יקבלו את הגדרת התצורה הזו באופן אוטומטי, אלא אם תבצעו עדכונים מפורשים כדי לשנות אותה.
תוויות שהגדרתם בעבר לפונקציות Cloud Run באמצעות פקודות gcloud functions או Cloud Functions v2 API מועברות ל-Cloud Run כשפורסים את הפונקציות ב-Cloud Run.
אפשר להגדיר או לשנות תוויות באמצעות מסוף Google Cloud , Google Cloud CLI או קובץ YAML כשפורסים עדכון חדש.
המסוף
במסוף Google Cloud , נכנסים לדף Services של Cloud Run:
מסמנים את תיבת הסימון שמימין לשירות שרוצים להגדיר לו את התווית.
מוודאים שהאפשרות Info Panel (חלונית המידע) מופעלת בצד שמאל (Show Info Panel).
לוחצים על תוויות כדי להציג את חלונית התוויות.
כדי לערוך ערך קיים של מפתח תווית, מאתרים את התווית ומשנים את הערך.
כדי להגדיר תווית חדשה בשירות, לוחצים על הוספת תווית ומזינים את המפתח ואת הערך.
לוחצים על שמירה
gcloud
כדי לעדכן תוויות בשירות, משתמשים בפקודה:
gcloud run services update SERVICE --update-labels KEY=VALUE
כדי לעדכן יותר מתווית אחת, צריך לספק רשימה של צמדי מפתח/ערך שמופרדים בפסיקים. שימו לב שהפקודה update-labels מגדירה ערך חדש למפתח התווית אם התווית כבר קיימת, אחרת היא יוצרת תווית חדשה.
מחליפים את מה שכתוב בשדות הבאים:
- SERVICE: השם של שירות Cloud Run
- KEY: השם של מפתח התווית
- VALUE: הערך של המפתח
אפשר גם להגדיר תוויות במהלך הפריסה:
gcloud run deploy SERVICE --image IMAGE --labels KEY=VALUE
כדי ליצור יותר מתווית אחת במהלך הפריסה, צריך לספק רשימה של צמדי מפתח/ערך שמופרדים בפסיקים.
YAML
אם אתם יוצרים שירות חדש, דלגו על השלב הזה. אם אתם מעדכנים שירות קיים, מורידים את הגדרות ה-YAML שלו:
gcloud run services describe SERVICE --format export > service.yaml
מעדכנים את המאפיינים
labelsבשני מקומות:apiVersion: serving.knative.dev/v1 kind: Service metadata: name: SERVICE labels: LABEL: VALUE spec: template: metadata: labels: LABEL: VALUE name: REVISION
מחליפים את מה שכתוב בשדות הבאים:
- SERVICE: השם של שירות Cloud Run
- LABEL: השם של התווית
- VALUE: הערך הנדרש
- REVISION עם שם חדש של גרסה או למחוק אותה (אם היא קיימת). אם מספקים שם חדש לגרסה, חובה שהוא יעמוד בקריטריונים הבאים:
- מתחיל ב-
SERVICE- - הוא מכיל רק אותיות קטנות, מספרים וגם
- - לא מסתיים ב-
- - לא חורג מ-63 תווים
- מתחיל ב-
metadata.labelsמגדיר תוויות באובייקט השירות, ואילוspec.template.metadata.labelמגדיר תוויות בגרסה שנוצרה. רק תוויות שהוגדרו בגרסה מועברות ליומנים ולחיוב.יוצרים או מעדכנים את השירות באמצעות הפקודה הבאה:
gcloud run services replace service.yaml
Terraform
כדי ללמוד איך להחיל הגדרות ב-Terraform או להסיר אותן, ראו פקודות בסיסיות ב-Terraform.
מוסיפים את השורות הבאות למשאבgoogle_cloud_run_v2_service בקובץ התצורה של Terraform:בקטע הקוד שלמעלה נוספו שתי תוויות, foo (שהערך שלה הוא bar) ו-baz (שהערך שלה הוא quux), למכונת Cloud Run.
הוספת התוויות בקטע template מגדירה את התוויות לגרסה: רק התוויות שהוגדרו לגרסה מועברות ליומנים ולחיוב. אם מוסיפים את התוויות למיקום אחר ולא מתחת ל-template, התווית מוגדרת לשירות ולא לגרסה.
מחליפים את מה שכתוב בשדות הבאים:
-
name: השם של השירות. -
location: המיקום שבו נעשה שימוש בשירות. -
image: קובץ האימג' של הקונטיינר. -
fooו-baz: שמות התוויות שלכם. -
barו-quux: ערכי התוויות שלכם.
הצגת רשימת השירותים לפי תווית
אפשר להציג רשימה של שירותים לפי תווית באמצעות מסנן Google Cloud CLI:
gcloud run services list --filter metadata.labels.LABEL=VALUE
מחליפים את מה שכתוב בשדות הבאים:
- LABEL: השם של התווית
- VALUE: הערך שרוצים לכלול ברשימה המסוננת
מחיקת תווית בשירות
אפשר להשתמש במסוף או בשורת הפקודה כדי למחוק תוויות בשירות.
המסוף
במסוף Google Cloud , נכנסים לדף Services של Cloud Run:
מסמנים את התיבה שמימין לשירות שממנו רוצים למחוק את התווית.
מוודאים שהאפשרות Info Panel (חלונית המידע) מופעלת בצד שמאל (Show Info Panel).
לוחצים על תוויות כדי להציג את חלונית התוויות.
מאתרים את התווית שרוצים למחוק.
מעבירים את הסמן שמאלה לתיבת הטקסט Value של התווית כדי להציג את סמל הפח, ולוחצים על סמל הפח.
לוחצים על Save.
gcloud
כדי לנקות את כל התוויות משירות:
gcloud run services update SERVICE --clear-labels
כדי למחוק תוויות ספציפיות משירות, צריך לספק רשימה של מפתחות מופרדים בפסיקים:
gcloud run services update SERVICE --remove-labels LABEL
מחליפים את מה שכתוב בשדות הבאים:
- SERVICE: השם של שירות Cloud Run
- LABEL: השם של התווית