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 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
- Google Cloud Fournisseur Terraform
- Premiers pas – 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 avec 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 l'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 :
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 pour la règle d'alerte. Le champnotification_channel_names
configure ce canal de notification pour qu'il envoie 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 Créer et gérer des canaux de notification avec Terraform.Vous pouvez utiliser des libellés pour associer une règle d'alerte à une application App Hub. Pour en savoir plus, consultez Associer une règle d'alerte à une application App Hub.
Dans Cloud Shell, saisissez
terraform apply
.
Pour modifier votre règle d'alerte, apportez les modifications souhaitées, puis appliquez à nouveau la configuration Terraform. Pour en savoir plus, consultez Gérer les règles d'alerte avec Terraform.
Étapes suivantes
- Apprenez-en plus sur Terraform.
- Testez des exemples de code qui utilisent le fournisseur TerraformGoogle Cloud avec Cloud Monitoring.
- Consultez le dépôt GitHub du fournisseur Terraform Google Cloud .
- Ouvrez une demande sur GitHub pour signaler un bug ou poser une question sur Terraform.