Alertes clés en main pour Dataflow

Pour surveiller l'état et la consommation des ressources d'un pipeline de streaming sans configurer manuellement de règles dans Cloud Monitoring, vous pouvez activer les alertes clés en main dans Dataflow. Les alertes clés en main fournissent une suite préconfigurée de règles d'alerte recommandées que vous pouvez activer au démarrage d'un job.

Cette fonctionnalité vous permet d'effectuer les actions suivantes :

  • Obtenez une visibilité instantanée : suivez automatiquement les métriques de streaming critiques, telles que le temps de traitement du backlog et la croissance des processeurs virtuels, sans configuration manuelle.
  • Standardisez la surveillance : appliquez rapidement des règles d'alerte de référence aux charges de travail de production nouvelles et existantes.
  • Personnaliser les alertes : ajustez les seuils d'alerte par défaut, désactivez des règles individuelles ou ajoutez vos propres règles d'alerte personnalisées à la suite.

Vous pouvez personnaliser ces règles par défaut à tout moment dans Cloud Monitoring ou intégrer vos propres règles d'alerte personnalisées à la suite d'alertes clé en main.

Prérequis

Pour utiliser les alertes clés en main, votre projet doit répondre aux exigences suivantes :

  1. Canaux de notification : vous devez avoir configuré au moins un canal de notification (par exemple, e-mail, Slack ou PagerDuty). Nous vous recommandons de configurer les contacts essentiels pour vous assurer que les alertes parviennent aux personnes concernées. Cette exigence n'est pas appliquée par le service Dataflow. Pour en savoir plus, consultez Créer et gérer des canaux de notification.

  2. Autorisations : le compte de service Dataflow (P4SA) nécessite des autorisations IAM spécifiques pour créer et gérer ces règles en votre nom :

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

    Pour les nouveaux projets, ces autorisations sont ajoutées automatiquement. Pour les projets existants, vous devrez peut-être définir manuellement ces autorisations sur le compte P4SA.

Mettre à jour les autorisations P4SA

L'agent de service Dataflow (souvent appelé P4SA, ou compte de service par produit et par projet) est un compte de service géré automatiquement qui est créé lorsque vous activez l'API Dataflow. Son adresse e-mail utilise le format suivant :

service-PROJECT_NUMBER@dataflow-service-producer-prod.

Pour mettre à jour le P4SA, vous devez disposer de l'autorisation resourcemanager.projects.setIamPolicy ou d'un rôle incluant cette autorisation, tel que "Administrateur IAM du projet" (roles/resourcemanager.projectIamAdmin).

Pour accorder les rôles requis à l'aide de la console Google Cloud , procédez comme suit :

  1. Dans la console Google Cloud , accédez à la page IAM.

    Accéder à IAM

  2. Sélectionnez votre projet.

  3. Cochez la case Inclure les attributions de rôles fournies par Google.

  4. Dans la liste des comptes principaux, recherchez la ligne correspondant à l'agent de service Dataflow (service-PROJECT_NUMBER@dataflow-service-producer-prod. ou avec le rôle Agent de service Cloud Dataflow).

  5. Sur cette ligne, cliquez sur Modifier le compte principal.

  6. Dans le volet Modifier les autorisations, cliquez sur  Ajouter un autre rôle.

  7. Dans la liste Sélectionner un rôle, sélectionnez Éditeur Monitoring (roles/monitoring.editor).

  8. Cliquez sur Enregistrer. La propagation de la mise à jour des autorisations peut prendre plusieurs minutes.

Activer les alertes clés en main

Vous pouvez enregistrer un job pour les alertes clés en main à l'aide de la gcloud CLI.

Activer les alertes à l'aide de la gcloud CLI

Ajoutez l'un des indicateurs suivants lors de l'envoi du job pour activer ou désactiver la fonctionnalité :

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

Si votre compte de service ne dispose pas des autorisations requises, la CLI rejette la requête et affiche les autorisations manquantes. Pour en savoir plus, consultez les conditions préalables.

Les paramètres d'alerte clés en main sont conservés lors des mises à jour des jobs. Lorsque vous mettez à jour un job, le paramètre d'alertes clés en main précédent est conservé. Vous n'avez donc pas besoin de spécifier à nouveau l'option --enable-turnkey-alerts ou --no-enable-turnkey-alerts, sauf si vous souhaitez modifier le paramètre.

Suite de règles par défaut

Les alertes clés en main incluent deux règles principales conçues pour les charges de travail de streaming standards, qui se concentrent sur les KPI en temps réel tels que les temps de traitement et l'utilisation des ressources. Les règles fournies par Google sont précédées du préfixe Default Policy: pour l'identification, bien que le service utilise des libellés comme identifiant principal.

Les clients sont automatiquement inscrits à toutes les règles de la suite de règles par défaut. Si nécessaire, vous pouvez désactiver certaines règles par défaut dans les alertes Cloud Monitoring.

Nom de la règle Métrique de base Seuil par défaut Explication
Règle par défaut : backlog estimé job/estimated_backlog_processing_time 30 minutes Estime le temps nécessaire pour effacer le backlog actuel. Un backlog supérieur à 30 minutes indique que le job a du mal à progresser.
Règle par défaut : règle de croissance des vCPU job/current_num_vcpus Utilisation moyenne des vCPU sur une heure multipliée par plus de cinq par rapport à la moyenne sur sept jours Surveille les variations relatives du nombre de processeurs virtuels pour vous aider à évaluer les coûts de job inattendus.

Cycle de vie des règles

  • Règles bêta : ces règles comportent le préfixe BETA dans leur nom et sont susceptibles d'être modifiées ou supprimées à mesure que les seuils sont affinés.
  • Règles en disponibilité générale : une fois qu'une règle est considérée comme stable, le préfixe BETA est supprimé.

Personnaliser et gérer les alertes

Les alertes clés en main servent de point de départ. Nous vous recommandons de les personnaliser en fonction des besoins spécifiques de votre entreprise.

  1. Dans la console Google Cloud , accédez à Cloud Monitoring > Alertes.
  2. Recherchez la règle (par exemple, Règle par défaut : backlog estimé).
  3. Modifiez le seuil en fonction de la valeur de votre choix.

Créer des stratégies personnalisées

Vous pouvez ajouter n'importe quelle règle d'alerte Cloud Monitoring à votre suite d'alertes clés en main en lui ajoutant l'étiquette goog-turnkey-alerts. Cela vous permet de gérer des règles personnalisées spécifiques à votre entreprise en plus de la suite par défaut.

Désactiver ou supprimer des règles d'alerte

Vous pouvez désactiver ou supprimer des règles par défaut spécifiques à l'aide de Monitoring. Lorsque vous désactivez une règle, Monitoring cesse d'évaluer la condition de la règle et aucun nouvel incident n'est créé, mais la configuration de la règle est conservée. Si vous supprimez une règle, elle est définitivement retirée de votre projet. Pour en savoir plus sur la gestion des cycles de vie des règles, consultez Gérer les règles d'alerte et Règles d'alerte désactivées.

Dépannage

Problème Solution
PERMISSION_DENIED Assurez-vous que le P4SA Dataflow dispose des autorisations monitoring.alertPolicies.* requises, listées dans la section Prérequis. Si ces rôles ne sont pas attribués au P4SA, votre pipeline se lance quand même, mais une erreur PERMISSION_DENIED s'affiche dans le résultat de la ligne de commande et dans les journaux de job, indiquant que les alertes par défaut n'ont pas pu être créées.
Aucune alerte reçue Déterminez si la condition d'alerte a été remplie en recherchant des incidents. Vous pouvez afficher les déclenchements d'alertes et les chronologies des incidents dans Monitoring (voir Afficher les incidents et les événements).
Règles en double Cela se produit généralement lorsque plusieurs règles partagent l'étiquette goog-turnkey-alerts et la même configuration de métrique. Dataflow recherche les libellés et les métriques qui se chevauchent plutôt que les correspondances exactes de noms. Examinez vos règles et supprimez l'étiquette des configurations redondantes.