אתם יכולים להשתמש בטריגר Eventarc כדי להפעיל תהליך עבודה כתוצאה מאירוע או מסדרה של אירועים. האירועים מנותבים מספק אירועים למקבלי אירועים שמתעניינים בהם.
Eventarc מעביר אירועים למקבל האירועים בפורמט CloudEvents באמצעות בקשת HTTP. שירות Workflows ממיר את האירוע לאובייקט JSON (בהתאם למפרט CloudEvents) ומעביר את האירוע להרצת תהליך העבודה כארגומנט של זמן הריצה של תהליך העבודה.
מופעל ביצוע של תהליך העבודה:
- כשנוצר יומן ביקורת שתואם לקריטריונים של המסנן של הטריגר. לדוגמה, במדריך למתחילים הזה מוסבר איך להפעיל Workflows באמצעות אירועים מ-BigQuery באמצעות יומני הביקורת של Cloud.
- בתגובה לאירועים ישירים, כמו עדכון של קטגוריה של Cloud Storage או עדכון של תבנית הגדרת תצורה מרחוק ב-Firebase. לדוגמה, במדריך למתחילים הזה מוסבר איך מפעילים Workflows באמצעות אירועים ישירים מ-Cloud Storage.
- הודעות שפורסמו בנושא Pub/Sub. לדוגמה, אפשר לעיין במדריך לתחילת העבודה שבו מפעילים את Workflows באמצעות הודעות Pub/Sub.
שימו לב לנקודות הבאות:
האירועים נחשבים כאירועים שנמסרו ברגע שהתחיל הביצוע של תהליך העבודה, והביצוע בפועל מתבצע באופן אסינכרוני בשירותי Workflows.
אם ההפעלה של תהליך העבודה מתחילה אבל נכשלת בהמשך, לא מתבצע ניסיון חוזר להפעלות שהופעלו על ידי אירועים. מידע נוסף זמין במאמר בנושא מדיניות בנושא ניסיון חוזר לשליחת אירועים.
חלון ביטול הכפילויות ב-Workflows הוא 24 שעות, כדי להבטיח עיבוד של אירועים בדיוק פעם אחת.
כשמשתמשים ב-Workflows כיעד לטריגר של Eventarc, אירועים שגדולים יותר מהגודל המקסימלי של ארגומנטים ב-Workflows לא יפעילו את ההרצה של תהליך העבודה. מידע נוסף מופיע במאמר בנושא מכסות ומגבלות.
בפרויקטים שמוגנים על ידי גבולות גזרה לשירות, כשמנתבים אירועים ליעדי Workflows שבהם נקודת הקצה של Pub/Sub push מוגדרת להרצת Workflows, אפשר ליצור מינויי Pub/Sub push חדשים רק דרך Eventarc. חשוב לשים לב שחשבון השירות שמשמש לאימות push לנקודת הקצה של Workflows צריך להיכלל בגבולות גזרה לשירות. מידע נוסף זמין במאמר בנושא הגדרת גבולות גזרה לשירות באמצעות VPC Service Controls.
יצירת טריגר באמצעות Google Cloud CLI
כדי ליצור טריגר, מריצים פקודת gcloud eventarc triggers create עם דגלים נדרשים ואופציונליים.
מידע נוסף זמין בהוראות לשימוש ב-gcloud שבקטע 'יצירת טריגר' במאמר יצירת טריגר עבור ספק, סוג אירוע ויעד ספציפיים ב-Workflows.
יצירת טריגר באמצעות המסוף
בשלבים הבאים מוסבר איך ליצור טריגר בדף Workflows במסוף Google Cloud .
לפני שמתחילים
-
מפעילים את ממשקי ה-API של Eventarc ו-Pub/Sub, אם הם עדיין לא מופעלים.
תפקידים שנדרשים להפעלת ממשקי API
כדי להפעיל ממשקי API, נדרשת ההרשאה
serviceusage.services.enable. אם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד 'בעלים' (roles/owner). אחרת, תוכלו לקבל את ההרשאה הזו דרך התפקיד 'אדמין בממשק Service Usage' (roles/serviceusage.serviceUsageAdmin). איך מקצים תפקידים יוצרים חשבון שירות כדי ש-Eventarc יוכל לשלוח בקשות ל-Workflows API:
נכנסים לדף Service Accounts במסוף Google Cloud .
בוחרים פרויקט ולוחצים על Create service account.
בשדה שם חשבון השירות, מזינים שם באורך של 6 עד 30 תווים.
הוא יכול להכיל תווים אלפאנומריים באותיות קטנות ומקפים. אחרי שיוצרים חשבון שירות, אי אפשר לשנות את השם שלו.
לוחצים על Create and continue.
נותנים לחשבון השירות החדש את התפקיד workflows.invoker כדי שלחשבון תהיה הרשאה להפעיל את תהליך העבודה. ברשימה Select a role בוחרים באפשרות Workflows > Workflows Invoker.
אם אתם מפתחים אפליקציה לייצור, הקפידו תמיד להקצות את התפקידים עם ההרשאות המינימליות האפשריות. מידע נוסף זמין במאמר ניהול הגישה לפרויקטים, לתיקיות ולארגונים.
לוחצים על סיום.
כדי לאפשר לישות המורשית שתריץ את פקודות Eventarc לפעול כחשבון שירות לניהול זהויות והרשאות גישה (IAM), צריך להעניק תפקיד שמאפשר לישות המורשית להתחזות לחשבון השירות.
הגדרת הטריגר
אם עדיין אין לכם תהליך עבודה שאתם רוצים להפעיל, צרו ופרסו תהליך עבודה.
נכנסים לדף Workflows במסוף Google Cloud :
בדף Workflows (תהליכי עבודה), בוחרים תהליך עבודה כדי לעבור לדף הפרטים שלו.
בדף פרטי תהליך העבודה, לוחצים על edit עריכה.
בדף עריכת תהליך העבודה, בוחרים באפשרות הוספת טריגר חדש > Eventarc.
החלונית Eventarc trigger תיפתח.
פועלים לפי ההוראות ליצירת טריגר לספק ספציפי, לסוג אירוע ולWorkflows יעד, ונעזרים בהוראות לשימוש ב-Console שבקטע 'יצירת טריגר'.
בוחרים את חשבון השירות שמפעיל את תהליך העבודה.
כאן מציינים את חשבון השירות ב-IAM שקודם לכן הקציתם לו את התפקיד
workflows.invoker, כדי שלחשבון תהיה הרשאה להפעיל את תהליך העבודה.לוחצים על Save trigger.
הטריגר של Eventarc מופיע בכרטיסייה Triggers בדף Workflows Details.
אם רוצים לעדכן או למחוק את הטריגר, צריך לערוך את תהליך העבודה:
- בדף פרטי תהליך העבודה, לוחצים על edit עריכה.
- בקטע Triggers, מוצאים את הטריגר שרוצים לעדכן או למחוק.
- לוחצים על edit עריכת המשאב או על delete מחיקת המשאב.
הפעלת תהליך העבודה מופעלת עכשיו על ידי האירועים שתואמים לקריטריוני הסינון של הטריגר.
יצירת טריגר באמצעות Terraform
אפשר ליצור טריגר לתהליך עבודה באמצעות Terraform. פרטים נוספים מופיעים במאמר הפעלת תהליך עבודה באמצעות Eventarc ו-Terraform.