במאמר הזה מוסבר איך להשתמש במסוף Google Cloud כדי ליצור מדיניות התראות שעוקבת אחרי מספר התהליכים שפועלים במכונות וירטואליות (VM) ועומדים בתנאים שאתם מציינים. סוג המדיניות הזה נקרא לפעמים מדיניות התראות על תקינות תהליכים. לדוגמה, אפשר לספור את מספר התהליכים שהתחילו על ידי משתמש Root. אפשר גם לספור את מספר התהליכים שפקודת ההפעלה שלהם הכילה מחרוזת ספציפית. מדיניות התראות יכולה לשלוח לכם התראה אם מספר התהליכים גדול או קטן מסף מסוים. מידע על התהליכים שאפשר לעקוב אחריהם זמין במאמר תהליכים שנמצאים במעקב.
התוכן הזה לא רלוונטי למדיניות התראות שמבוססת על יומנים. למידע על מדיניות התראות שמבוססת על יומנים, שמודיעה לכם כשמופיעה הודעה מסוימת ביומנים, ראו מעקב אחרי היומנים.
לפני שמתחילים
-
כדי לקבל את ההרשאות שנדרשות ליצירה ולשינוי של מדיניות התראות באמצעות מסוף Google Cloud , צריך לבקש מהאדמין להקצות לכם בפרויקט את תפקיד ה-IAM Monitoring Editor (
roles/monitoring.editor). להסבר על מתן תפקידים, קראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.
מידע נוסף על תפקידים ב-Cloud Monitoring זמין במאמר בקרת גישה באמצעות ניהול זהויות וגישה.
חשוב להכיר את המושגים הכלליים של מדיניות ההתראות. מידע על הנושאים האלה מופיע במאמר סקירה כללית על התראות.
מגדירים את ערוצי ההתראות שרוצים להשתמש בהם כדי לקבל התראות. לצורך יתירות, מומלץ גם ליצור כמה סוגים של ערוצי התראות. מידע על השלבים האלה מופיע במאמר בנושא יצירה וניהול של ערוצי התראות.
מוודאים שהתקנתם את סוכן תפעול במכונות הווירטואליות שאתם רוצים לנטר. מידע נוסף זמין במאמר בנושא סוכנים של Google Cloud Observability.
יצירת מדיניות התראות
כדי ליצור מדיניות התראות שעוקבת אחרי מספר התהליכים שפועלים במכונה וירטואלית באמצעות Cloud Monitoring API, ביטוי המסנן צריך לציין בורר של סדרת זמן. דוגמה לקובץ JSON שמציין את הסלקטור הזה מופיעה במאמר בנושא מדיניות תקינות התהליך.
כדי ליצור מדיניות התראות שעוקבת אחרי מספר התהליכים שפועלים במכונה וירטואלית:
-
נכנסים לדף notifications Alerting במסוף Google Cloud :
אם משתמשים בסרגל החיפוש כדי למצוא את הדף הזה, בוחרים בתוצאה שבה הכותרת המשנית היא Monitoring.
- לוחצים על יצירת מדיניות.
בוחרים באפשרות ?. בכותרת של הקטע Select metric, ואז בוחרים באפשרות Direct filter mode בתיאור הכלי.
מזינים מסנן מעקב.
לדוגמה, כדי לספור את מספר התהליכים שפועלים במכונות וירטואליות של Compute Engine ששמן כולל את המחרוזת
nginx, מזינים את הפקודה הבאה:select_process_count("monitoring.regex.full_match(\".*nginx.*\")") resource.type="gce_instance"מידע על התחביר זמין במקורות המידע הבאים:
- לגבי מסננים שמשמשים לספירת תהליכים שפועלים במכונות וירטואליות, אפשר לעיין במאמר בנושא מסננים לבדיקת תקינות התהליך.
- מידע על התחביר הכללי מופיע במאמר מסנני Monitoring.
משלימים את מדיניות ההתראות. צריך להגדיר את טריגר התנאי, ההתראות, התיעוד ושם המדיניות, ואז ללחוץ על יצירת מדיניות.
מידע נוסף זמין במאמר בנושא יצירת מדיניות התראות על סמך סף מדד.
תהליכים שנמצאים במעקב
לא ניתן לעקוב אחרי כל התהליכים שפועלים במערכת באמצעות תנאי של תקינות תהליך. התנאי הזה בוחר תהליכים למעקב באמצעות ביטוי רגולרי שמוחל על שורת הפקודה שהפעילה את התהליך. אם השדה של שורת הפקודה לא זמין, אי אפשר לעקוב אחרי התהליך.
דרך אחת לבדוק אם אפשר לעקוב אחרי תהליך באמצעות תנאי תקינות של תהליך היא לבדוק את התהליכים הפעילים. לדוגמה, במערכת Linux, אפשר להשתמש בפקודה ps:
ps aux | grep nfs
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1598 0.0 0.0 0 0 ? S< Oct25 0:00 [nfsd4]
root 1639 0.0 0.0 0 0 ? S Oct25 2:33 [nfsd]
root 1640 0.0 0.0 0 0 ? S Oct25 2:36 [nfsd]
כשערך של COMMAND מוקף בסוגריים מרובעים, למשל [nfsd], המידע על התהליך בשורת הפקודה לא זמין. במצב הזה, אי אפשר להשתמש ב-Cloud Monitoring כדי לעקוב אחרי התהליך.