התראות מוכנות לשימוש ב-Dataflow

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

התכונה הזו מאפשרת לכם:

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

אפשר להתאים אישית את מדיניות ברירת המחדל הזו בכל שלב ב-Cloud Monitoring, או לשלב מדיניות התראות מותאמת אישית משלכם עם חבילת ההתראות המוכנה לשימוש.

דרישות מוקדמות

כדי להשתמש בהתראות מוכנות לשימוש, הפרויקט שלכם צריך לעמוד בדרישות הבאות:

  1. ערוצי התראות: צריך להגדיר לפחות ערוץ התראות אחד (למשל, אימייל, Slack או PagerDuty). מומלץ להגדיר אנשי קשר חיוניים כדי לוודא שההתראות יגיעו לבעלי העניין הנכונים. שירות Dataflow לא אוכף את הדרישה הזו. מידע נוסף מופיע במאמר בנושא יצירה וניהול של ערוצי התראות.

  2. הרשאות: לחשבון השירות של Dataflow‏ (P4SA) נדרשות הרשאות IAM ספציפיות כדי ליצור ולנהל את כללי המדיניות האלה בשמכם:

    • monitoring.alertPolicies.get
    • monitoring.alertPolicies.list
    • monitoring.alertPolicies.create
    • monitoring.alertPolicies.update
    • monitoring.alertPolicies.delete

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

עדכון הרשאות ב-P4SA

סוכן השירות של Dataflow (שנקרא לעיתים קרובות P4SA, או חשבון שירות לכל מוצר ולכל פרויקט) הוא חשבון שירות שמנוהל באופן אוטומטי ונוצר כשמפעילים את Dataflow API. כתובת האימייל שלו מבוססת על הפורמט הבא:

service-PROJECT_NUMBER@dataflow-service-producer-prod.iam.gserviceaccount.com

כדי לעדכן את ה-P4SA, צריך את ההרשאה resourcemanager.projects.setIamPolicy או תפקיד שכולל את ההרשאה הזו, כמו אדמין IAM של פרויקט (roles/resourcemanager.projectIamAdmin).

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

  1. נכנסים לדף IAM במסוף Google Cloud .

    כניסה לדף IAM

  2. בוחרים את הפרויקט הרצוי.

  3. מסמנים את התיבה Include Google-provided role grants.

  4. ברשימת חשבונות המשתמשים, מחפשים את השורה של סוכן השירות של Dataflow (service-PROJECT_NUMBER@dataflow-service-producer-prod.iam.gserviceaccount.com או עם התפקיד Cloud Dataflow Service Agent).

  5. בשורה הזו, לוחצים על Edit principal.

  6. בחלונית Edit permissions לוחצים על Add another role.

  7. ברשימה Select a role לוחצים על Monitoring Editor (roles/monitoring.editor).

  8. לוחצים על Save. יכול להיות שיחלפו כמה דקות עד שהעדכון של ההרשאה יופץ.

הפעלת התראות מוכנות לשימוש

אפשר לרשום משימה להתראות מוכנות לשימוש באמצעות ה-CLI של gcloud.

הפעלת התראות באמצעות ה-CLI של gcloud

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

  • --enable-turnkey-alerts
  • --no-enable-turnkey-alerts

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

הגדרות ההתראות המוכנות לשימוש נשמרות גם אחרי עדכונים של המשרות. כשמעדכנים משימה, ההגדרה הקודמת של ההתראות המוכנות לשימוש נשמרת, כך שלא צריך לציין שוב את הדגל --enable-turnkey-alerts או --no-enable-turnkey-alerts, אלא אם רוצים לשנות את ההגדרה.

חבילת מדיניות ברירת המחדל

ההתראות המוכנות לשימוש כוללות שתי מדיניות עיקרית שנועדו לעומסי עבודה אופייניים של סטרימינג, ומתמקדות במדדי ביצועים מרכזיים (KPI) בזמן אמת, כמו זמני עיבוד וניצול משאבים. למדיניות ש-Google מספקת יש קידומת Default Policy: כדי לזהות אותה, אבל השירות משתמש בתוויות כמזהה העיקרי.

הלקוחות נרשמים אוטומטית לכל כללי המדיניות בחבילת ברירת המחדל. במקרה הצורך, אפשר להשבית מדיניות ברירת מחדל ספציפית במערכת ההתראות של Cloud Monitoring.

שם המדיניות מדד בסיס סף ברירת מחדל הסבר
מדיניות ברירת המחדל: אומדן של העבודה שממתינה לביצוע job/estimated_backlog_processing_time 30 דקות הערכה של הזמן שיידרש כדי לטפל בכל הפריטים שממתינים לטיפול. אם יש יותר מ-30 דקות של עבודה שממתינה לביצוע, סימן שהעבודה מתקדמת לאט מדי.
מדיניות ברירת המחדל: מדיניות בנושא גידול ב-vCPU job/current_num_vcpus עלייה של יותר מפי 5 בשימוש הממוצע ב-vCPU למשך שעה אחת בהשוואה לממוצע של 7 ימים הכלי עוקב אחרי שינויים יחסיים במספרים של vCPU כדי לעזור להעריך עלויות לא צפויות של עבודות.

מחזור החיים של המדיניות

  • מדיניות בגרסת בטא: למדיניות הזו יש קידומת BETA בשם, והיא עשויה להשתנות או להימחק ככל שהסף ישתפר.
  • מדיניות GA: אחרי שמדיניות נחשבת ליציבה, הקידומת BETA מוסרת.

התאמה אישית וניהול של התראות

ההתראות המוכנות לשימוש משמשות כנקודת התחלה. מומלץ להתאים אותן לדרישות העסקיות הספציפיות שלכם.

  1. במסוף Google Cloud , עוברים אל Cloud Monitoring > Alerting.
  2. מאתרים את המדיניות (לדוגמה, מדיניות ברירת מחדל: הערכה של כמות העבודה שמצטברת).
  3. עורכים את הסף לערך המועדף.

יצירת מדיניות מותאמת אישית

אפשר להוסיף כל מדיניות התראות של Cloud Monitoring לחבילת ההתראות המוכנה מראש על ידי הוספת התווית goog-turnkey-alerts. כך תוכלו לנהל כללים מותאמים אישית שספציפיים לעסק שלכם לצד חבילת ברירת המחדל.

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

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

פתרון בעיות

שגיאה רזולוציה
PERMISSION_DENIED מוודאים שלחשבון P4SA של Dataflow יש את ההרשאות הנדרשות monitoring.alertPolicies.* שמפורטות בקטע תנאים מוקדמים. אם התפקידים האלה חסרים ב-P4SA, הצינור עדיין יופעל בהצלחה, אבל תופיע שגיאת PERMISSION_DENIED בפלט של שורת הפקודה וביומני המשימות, שתציין שלא הייתה אפשרות ליצור התראות שמוגדרות כברירת מחדל.
לא מתקבלות התראות בודקים אם התנאי להפעלת ההתראה מתקיים על ידי חיפוש אירועים. אפשר לראות את ההתראות שהופעלו ואת צירי הזמן של האירועים ב-Monitoring (ראו הצגת אירועים).
מדיניות כפולה זה קורה בדרך כלל אם כמה מדיניות חולקות את התווית goog-turnkey-alerts ואת אותה הגדרת מדד. ‫Dataflow בודק אם יש חפיפה בין התוויות והמדדים, ולא אם יש התאמה מדויקת בשמות. בודקים את המדיניות ומסירים את התווית מהגדרות מיותרות.