Surveiller et optimiser les ressources de jobs en affichant les métriques

Ce document explique comment surveiller et essayer d'optimiser les ressources d'une tâche de traitement par lot en affichant des métriques dans Cloud Monitoring. Pour en savoir plus sur les ressources sur lesquelles une tâche s'exécute, consultez la section Ressources de tâche.

Pour chaque job, Monitoring fournit des métriques de base, telles que le nombre et du trafic réseau. Cependant, certaines métriques, telles que la mémoire l'utilisation du processus ne peuvent être collectées que si un job installe l'agent Ops. Les métriques associées aux ressources d'un job vous aident à évaluer les performances et l'utilisation de chaque ressource. Ces informations peuvent vous aider à identifier les améliorations à apporter aux futures itérations de la tâche. Par exemple, vous pouvez supprimer les ressources inutilisées pour optimiser les coûts, ou améliorer ou augmenter les ressources surchargées pour permettent d'améliorer les performances.

Avant de commencer

  1. Si vous n'avez jamais utilisé Batch auparavant, consultez Premiers pas avec Batch et activez Batch en suivant la les conditions préalables pour les projets et les utilisateurs.
  2. Facultatif : Pour collecter des métriques supplémentaires pour une tâche, créez et exécutez une tâche qui installe automatiquement l'agent Ops.
  3. Si ce n'est pas déjà fait, activez l'API Monitoring pour votre projet :

    Enable the API

  4. Pour obtenir les autorisations nécessaires pour afficher les métriques d'observabilité, demandez à votre administrateur de vous accorder le Lecteur de métriques Monitoring (roles/monitoring.metricViewer) sur le 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.

Afficher les métriques des ressources de jobs

Observer et surveiller les VM dans la documentation Compute Engine fournit des informations conceptuelles pertinentes sur les métriques de VM, Cependant, il est recommandé d'utiliser d'autres méthodes Métriques de VM pour les jobs Batch. Plus précisément, La documentation Compute Engine explique comment afficher les métriques à l'aide du des tableaux de bord Monitoring prédéfinis pour Compute Engine pages Compute Engine dans la console Google Cloud. Mais surtout, ces méthodes n'affichent pas d'informations sur les VM ayant ont été supprimées. Par conséquent, n'utilisez ces méthodes que si vous souhaitez seulement afficher pour les jobs Batch en cours d'exécution.

Affichez les métriques des tâches par lot en cours d'exécution et terminées à l'aide des graphiques de l'explorateur de métriques, comme expliqué dans cette section. Notez que les graphiques sont temporaires, sauf si vous les enregistrez dans des tableaux de bord personnalisés.

Pour créer un graphique permettant d'afficher une ou plusieurs métriques, procédez comme suit :

  1. Facultatif: Si vous prévoyez d'enregistrer le graphique, identifier ou créer un tableau de bord personnalisé pour le graphique.
  2. Créez un graphique de l'Explorateur de métriques pour une ou plusieurs métriques.

    Sans filtres, chaque métrique de VM d'un graphique inclut les données de toutes les VM de votre projet. Si vous le souhaitez, vous pouvez filtrer le graphique pour n'inclure de tous les jobs Batch ou des jobs Batch spécifiques, ajoutez les éléments suivants : filtre:

    group=RESOURCE_GROUP_NAME
    

    Remplacez RESOURCE_GROUP_NAME par le nom d'un groupe de ressources pour les tâches de traitement par lot. Pour en savoir plus, consultez Créez des groupes de ressources pour filtrer les métriques dans ce document.

Créer des groupes de ressources pour filtrer les métriques

Vous pouvez utiliser des groupes de ressources comme filtres personnalisables. pour les graphiques de l'Explorateur de métriques. Pour créer un groupe de ressources pour tous les jobs Batch ou des jobs Batch spécifiques dans votre projet, procédez comme suit:

  1. Sélectionnez le libellé à utiliser. en tant que critères d'appartenance en fonction des emplois que vous souhaitez inclure dans le groupe:

    • Toutes les tâches Batch : utilisez l'étiquette batch-node prédéfinie, qui est automatiquement appliquée à toutes les ressources de toutes les tâches Batch et qui a une valeur nulle.
    • Jobs Batch spécifiques:utilisez une étiquette appliquée aux les ressources que pour des jobs Batch spécifiques.

      Par exemple, si vous souhaitez créer un groupe basé sur une tâche complète ou partielle utilisez le nom prédéfini du libellé batch-job-id avec une valeur spécifique. Le libellé batch-job-id est automatiquement appliqué à toutes les ressources pour toutes les tâches de traitement par lot et défini avec le nom de la tâche.

      Si vous utilisez une étiquette personnalisée, vous devez également appliquer la méthode étiquette personnalisée à toutes les ressources des jobs Batch qui que vous souhaitez inclure dans le groupe lorsque vous créez les jobs.

  2. Assurez-vous que votre projet comporte au moins un job avec l'étiquette sélectionnée et que cette tâche est à l'état RUNNING. Sinon, ce libellé ne sera pas s'affichent en option lorsque vous essayez de créer le groupe de ressources.

  3. Créez un groupe de ressources. Lorsque vous spécifiez les critères d'appartenance, procédez comme suit :

    1. Définissez le Type sur Tag.
    2. Définissez le champ Balise sur le nom du libellé sélectionné. Définissez ensuite les champs suivants en fonction des valeurs de libellé que vous souhaitez inclure dans le groupe.

      Par exemple, si vous voulez que ce groupe inclue tous les lots , définissez Tag sur batch-node et Opérateur sur Exists. Sinon, vous voulez que ce groupe inclue des jobs Batch dont le nom commence par test, définissez Tag sur batch-job-id, définissez Opérateur sur Commence par et Valeur sur test.

Étape suivante