Ce document explique comment utiliser le fournisseur Terraform Google Cloud pour créer des règles d'alerte dans votre projet Google Cloud. Le fournisseur Terraform pour Google Cloud fournit les ressources suivantes pour les règles d'alerte et les canaux de notification:
Terraform est un outil permettant de créer, de modifier et de gérer les versions d'infrastructure. Il utilise des fichiers de configuration pour décrire les composants nécessaires à l'exécution d'une application donnée ou de l'ensemble de votre infrastructure. Pour en savoir plus sur l'utilisation de Terraform, consultez les documents suivants:
- Documentation Terraform sur Google Cloud
- Fournisseur Terraform pour Google Cloud
- Premiers pas avec Google Cloud
Avant de commencer
Pour obtenir les autorisations nécessaires pour créer des règles d'alerte à l'aide de Terraform, demandez à votre administrateur de vous accorder le rôle IAM Éditeur Monitoring (roles/monitoring.editor
) sur votre projet.
Pour en savoir plus sur l'attribution de rôles, consultez la page Gérer l'accès aux projets, aux dossiers et aux organisations.
Vous pouvez également obtenir les autorisations requises via des rôles personnalisés ou d'autres rôles prédéfinis.
Pour en savoir plus sur les rôles Cloud Monitoring, consultez Contrôler les accès avec Identity and Access Management.
Créer une règle d'alerte
Pour créer une règle d'alerte dans votre projet Google Cloud, procédez comme suit:
Assurez-vous que Terraform est installé dans Cloud Shell.
Dans Cloud Shell, accédez au répertoire contenant votre configuration Terraform.
Modifiez le fichier de configuration et ajoutez votre règle d'alerte.
Par exemple, la configuration suivante définit une règle d'alerte qui envoie une notification lorsque l'utilisation du processeur d'une instance de VM est supérieure à 50% pendant plus d'une minute, avec des notifications répétées envoyées toutes les 30 minutes.
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 = "0.5" 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" } }
Dans l'exemple précédent, le champ
notification_channels
définit le canal de notification de la règle d'alerte. Le champnotification_channel_names
configure ce canal de notification pour envoyer des notifications répétées. Les deux champs font référence à un canal de notification avec undisplay_name
deemail
, qui est défini ailleurs dans la configuration Terraform. Pour en savoir plus, consultez la section Créer et gérer des canaux de notification avec Terraform.Dans Cloud Shell, saisissez
terraform apply
.
Pour modifier votre règle d'alerte, apportez les modifications nécessaires, puis réappliquez la configuration Terraform. Pour en savoir plus, consultez la section Gérer les règles d'alerte avec Terraform.
Étape suivante
- Apprenez-en plus sur Terraform.
- Testez des exemples de code qui utilisent le fournisseur Terraform pour Google Cloud avec Cloud Monitoring.
- Consultez le dépôt GitHub du fournisseur Terraform pour Google Cloud.
- Ouvrez une demande sur GitHub pour signaler un bug ou poser une question sur Terraform.