Exécuter des tâches d'analyse dans Cloud Deploy

Cloud Deploy vous permet d'analyser les performances de vos applications déployées à l'aide de la plate-forme de surveillance et des métriques de votre choix. Vous pouvez utiliser les résultats de ces analyses pour effectuer des actions, comme annuler automatiquement le déploiement.

Cloud Deploy est compatible avec Google Cloud Observability et peut être étendu pour prendre en charge d'autres plates-formes de surveillance, telles que Datadog ou Prometheus.

Bien que Cloud Deploy propose la validation du déploiement, que vous pouvez utiliser pour exécuter des conteneurs arbitraires afin de valider un déploiement, l'analyse vous permet d'utiliser les données de télémétrie de Google Cloud Observability ou du service de surveillance de votre choix pour évaluer les performances de vos applications au fil du temps.

Vous pouvez exécuter des jobs d'analyse dans n'importe quel environnement cible (par exemple, staging ou production).

Fournisseurs de métriques acceptés

Cloud Deploy permet d'effectuer des analyses à l'aide de métriques fournies de l'une des manières suivantes :

  • Intégration directe aux règles d'alerte Google Cloud Observability, basée sur la télémétrie et les journaux dans Google Cloud Observability

  • Intégration à un système de métriques non Google (par exemple, Prometheus ou Datadog)

    Ce type d'analyse personnalisée nécessite que votre organisation fournisse un conteneur avec des fonctionnalités permettant de prendre en charge le système de métriques spécifique.

    Google Cloud fournit un exemple d'intégration à Datadog.

Fonctionnement de l'analyse Cloud Deploy

Cette section explique comment fonctionne l'analyse Cloud Deploy à l'aide des règles d'alerte Google Cloud Observability. Si votre organisation crée un conteneur personnalisé pour utiliser un autre fournisseur de métriques, certaines de ces fonctionnalités sont gérées par votre conteneur personnalisé.

  • Configurez les métriques dans le système de métriques de votre choix.

    Cloud Deploy est compatible avec Google Cloud Observability sans aucune personnalisation. Vous pouvez également utiliser le fournisseur de métriques de votre choix en créant un conteneur personnalisé pour traiter la télémétrie.

    En savoir plus

  • Configurer une règle d'alerte

    Si vous utilisez Google Cloud Observability pour collecter des données de télémétrie, vous pouvez utiliser une règle d'alerte pour détecter quand ces données indiquent un problème.

    Si vous utilisez un autre fournisseur de métriques, les alertes sont la responsabilité de cet outil ou de votre conteneur personnalisé.

  • Configurer une tâche d'analyse

    Il s'agit d'une strophe analysis dans le fichier de configuration de votre pipeline de déploiement.

    Le job d'analyse se compose d'un ou de plusieurs contrôles d'analyse, chacun évaluant le comportement de votre application déployée en fonction des journaux ou des métriques de Google Cloud Observability ou de votre fournisseur de métriques. Le job d'analyse s'exécute pendant une durée spécifiée.

  • Déployer votre application

    Le job d'analyse s'exécute après le job de déploiement et après le job de validation, si votre version en inclut un, mais avant tout job post-déploiement, si votre version en inclut un.

  • L'analyse s'exécute

    Une fois votre application déployée (et une fois tout job de validation terminé, le cas échéant), votre fournisseur de métriques collecte des données de télémétrie sur votre application en cours d'exécution. Le job d'analyse attend la durée que vous configurez (duration). Si une alerte est déclenchée (si vous utilisez Google Cloud Observability comme fournisseur de métriques) ou si votre conteneur personnalisé renvoie un code de sortie non nul, le job d'analyse échoue, tout comme votre déploiement.

    Si aucune des vérifications ne détecte de problème, l'analyse se termine à l'expiration de la durée et le déploiement réussit.

Utiliser l'analyse avec les automatisations

Vous pouvez spécifier les automatisations à utiliser avec vos jobs d'analyse.

Par exemple, si vous souhaitez exécuter une analyse sur votre application après son déploiement sur staging, puis promouvoir automatiquement la version sur prod si l'analyse se termine sans alerte, vous pouvez utiliser une automatisation promoteReleaseRule.