במאמר הזה מוסבר איך להשתמש ב- Google Cloud Terraform Provider כדי ליצור מדיניות התראות ב Google Cloud פרויקט. Google Cloud Terraform Provider מספק את המשאבים הבאים למדיניות התראות ולערוצי התראות:
Terraform הוא כלי לבנייה, לשינוי ולניהול גרסאות של תשתית. הוא משתמש בקובצי תצורה כדי לתאר את הרכיבים שנדרשים להפעלת אפליקציה אחת או את כל התשתית. למידע נוסף על שימוש ב-Terraform, אפשר לעיין במסמכים הבאים:
לפני שמתחילים
כדי לקבל את ההרשאות שנדרשות ליצירת כללי מדיניות להתראות באמצעות Terraform, צריך לבקש מהאדמין להקצות לכם את תפקיד ה-IAM Monitoring Editor (roles/monitoring.editor) בפרויקט.
להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.
מידע נוסף על תפקידים ב-Cloud Monitoring זמין במאמר שליטה בגישה באמצעות ניהול זהויות וגישה.
יצירת מדיניות התראות
כדי ליצור מדיניות התראות ב Google Cloud פרויקט:
ב-Cloud Shell, עוברים לספרייה שמכילה את ההגדרות של Terraform.
עורכים את קובץ התצורה ומוסיפים את מדיניות ההתראות.
לדוגמה, ההגדרה הבאה מגדירה מדיניות התראות ששולחת התראה כשניצול המעבד של מכונה וירטואלית גבוה מ-50% במשך יותר מדקה, עם התראות חוזרות שנשלחות כל 30 דקות.
resource "google_monitoring_alert_policy" "alert_policy" { display_name = "CPU Utilization > 50%" documentation { content = "The $${metric.display_name} of the $${resource.type} $${resource.label.instance_id} in $${resource.project} has exceeded 50% for over 1 minute." } combiner = "OR" conditions { display_name = "Condition 1" condition_threshold { comparison = "COMPARISON_GT" duration = "60s" filter = "resource.type = \"gce_instance\" AND metric.type = \"compute.googleapis.com/instance/cpu/utilization\"" threshold_value = "50" trigger { count = "1" } } } alert_strategy { notification_channel_strategy { renotify_interval = "1800s" notification_channel_names = [google_monitoring_notification_channel.email.name] } } notification_channels = [google_monitoring_notification_channel.email.name] user_labels = { severity = "warning" } }בדוגמה שלמעלה, השדה
notification_channelsמגדיר את ערוץ ההתראות של מדיניות ההתראות. בשדהnotification_channel_namesמוגדר ערוץ ההתראות לשליחת התראות חוזרות. שני השדות מפנים לערוץ התראות עםdisplay_nameשלemail, שמוגדר במקום אחר בהגדרת Terraform. מידע נוסף זמין במאמר בנושא יצירה וניהול של ערוצי התראות באמצעות Terraform.אפשר להשתמש בתוויות כדי לשייך מדיניות התראות לאפליקציה ב-App Hub. מידע נוסף זמין במאמר בנושא איך משייכים מדיניות התראות לאפליקציה ב-App Hub.
ב-Cloud Shell, מזינים
terraform apply.
כדי לשנות את מדיניות ההתראות, מבצעים את העריכות הרצויות ואז מחילים מחדש את ההגדרות של Terraform. מידע נוסף מופיע במאמר בנושא ניהול מדיניות התראות באמצעות Terraform.
המאמרים הבאים
- מידע נוסף על Terraform
- אפשר לנסות דוגמאות קוד שמשתמשות ב-Google Cloud Terraform Provider עם Cloud Monitoring.
- אפשר לעיין ב Google Cloud מאגר של ספק Terraform ב-GitHub.
- אפשר לפתוח בקשה בקשר לבעיה ב-GitHub כדי לדווח על באג או לשאול שאלה לגבי Terraform.