Google Cloud Platform

Présentation

Associez votre solution Google Cloud Platform pour visualiser tous vos hosts Google Compute Engine (GCE) dans Datadog. Vos hosts apparaissent dans l’aperçu de l’infrastructure de Datadog. Vous pouvez les trier grâce aux tags de host GCE et aux étiquettes GCE qui leur sont automatiquement attribués par Datadog.

L'intégration GCP de Datadog est conçue pour recueillir TOUTES les métriques en provenance de StackDriver. Datadog s'efforce de mettre régulièrement à jour sa documentation afin d'inclure chaque sous-intégration. Toutefois, les métriques et les services proposés par les différents services cloud étant en permanente évolution, il est possible que la liste ne soit pas actuelle.
IntégrationDescription
App EnginePaaS (plateforme en tant que service) permettant de développer des applications évolutives
Big QueryEntrepôt de données pour entreprise
BigtableService de base de données Big Data NoSQL
CloudSQLService de base de données MySQL
API CloudInterfaces de programmation pour tous les services Google Cloud Platform
Cloud ComposerService d’orchestration de workflows entièrement géré
Cloud DataprocService cloud permettant d’exécuter des clusters Apache Spark et Apache Hadoop
Cloud FilestoreStockage de fichiers entièrement géré hautes performances
Cloud FirestoreBase de données flexible et évolutive pour le développement mobile, web et serveur
Cloud InterconnectConnectivité hybride
Cloud IoTConnexion et gestion de vos appareils en toute sécurité
Cloud Load BalancingRépartition de ressources informatiques à équilibrage de charge
Cloud Memorystore pour RedisService de stockage de données en mémoire entièrement géré
Cloud RouterÉchange d’itinéraires entre votre VPC et les réseaux sur site à l’aide du protocole BGP
Cloud RunPlateforme de calcul gérée qui exécute des conteneurs sans état via HTTP
Cloud TasksFiles d’attente de tâches distribuées
Cloud TPUEntraînement et exécution de modèles d’apprentissage automatique
Compute EngineMachines virtuelles hautes performances
Container EngineKubernetes, géré par Google
DatastoreBase de données NoSQL
FirebasePlateforme mobile pour le développement d’applications
FunctionsPlateforme sans serveur pour la création de microservices basés sur des événements
Machine LearningServices d’apprentissage automatique
Pub/SubService de messagerie en temps réel
SpannerService de base de données relationnelle à évolutivité horizontale et à cohérence forte
Stackdriver LoggingGestion et analyse de logs en temps réel
StorageStockage d’objets unifié
VPNFonctionnalité de réseau géré

Configuration

Collecte de métriques

Installation

L’intégration Google Cloud <> Datadog utilise des comptes de service pour créer une connexion API entre Google Cloud et Datadog. Vous trouverez ci-dessous les instructions à suivre pour créer un compte de service et fournir à Datadog les identifiants du compte de service afin de commencer à effectuer des appels d’API en votre nom.

Remarque : vous devez avoir activé Google Cloud Billing, l’API Stackdriver Monitoring, l’API Compute Engine et l’API Cloud Asset pour le ou les projets que vous souhaitez surveiller.

  1. Consultez la page des identifiants Google Cloud pour le projet Google Cloud que vous souhaitez configurer dans le cadre de l’intégration Datadog.

  2. Cliquez sur Create credentials(en haut de la page) et sélectionnez Service account.

    Paramètres
  3. Saisissez un nom unique pour le compte de service, puis cliquez sur Create.

  4. Ajoutez les rôles suivants : Compute Viewer, Monitoring Viewer et Cloud Asset Viewer. Cliquez sur_Done_.

    Remarque : vous devez être un administrateur clé de compte de service pour sélectionner les rôles Compute Engin et Cloud Asset. Tous les rôles sélectionnés permettent à Datadog de recueillir des métriques, des tags, des événements et des étiquettes utilisateur à votre place.

  5. En bas de la page, parcourez vos comptes de service et sélectionnez celui que vous venez de créer. Cliquez sur Add Key -> Create new key, puis sélectionnez le type JSON. Cliquez sur Create et sur Save. Notez l’emplacement de sauvegarde du fichier : vous en aurez besoin par la suite.

  6. Accédez au carré d’intégration Datadog/Google Cloud.

  7. Dans l’onglet Configuration, sélectionnez Upload Key File pour intégrer ce projet à Datadog.

  8. Si vous le souhaitez, vous pouvez utiliser des tags pour exclure des hosts de cette intégration. Vous trouverez des instructions détaillées à ce sujet ci-dessous.

    paramètres
  9. Cliquez sur Install/Update.

  10. Si vous souhaitez surveiller plusieurs projets, utilisez l’une des méthodes suivantes :

    • Répétez les étapes ci-dessus pour utiliser plusieurs comptes de service.
    • Utilisez le même compte de service en modifiant la valeur de project_id dans le fichier JSON téléchargé à l’étape 6. Importez ensuite le fichier dans Datadog, tel que décrit aux étapes 7 à 10.

Configuration

Si vous le souhaitez, vous pouvez limiter les instances GCE récupérées par Datadog en saisissant des tags dans la zone de texte Limiter la collecte de métriques. Seuls les hosts qui correspondent à l’un des tags définis sont alors importés dans Datadog. Vous pouvez utiliser des wildcards (? pour un caractère unique, * pour plusieurs caractères) pour inclure un grand nombre de hosts, ou encore ! pour exclure certains hosts. L’exemple ci-dessous englobe toutes les instances de taille c1*, mais exclut les hosts de type staging :

datadog:monitored,env:production,!env:staging,instance-type:c1.*

Collecte de logs

Pour les applications exécutées sous GCE ou GKE, l’Agent Datadog peut être utilisé pour la collecte de logs en local. Les logs de service GCP sont recueillis via Stackdriver avant d’être envoyés à un Cloud Pub/Sub grâce à un redirecteur Push HTTP. La collecte de logs repose sur cinq étapes :

  1. Si vous ne l’avez pas déjà fait, configurez d’abord l’intégration Google Cloud Platform.
  2. Créer un Cloud Pub/Sub
  3. Configurer le Pub/Sub pour transmettre les logs à Datadog
  4. Configurer les exportations depuis les logs Stackdriver vers le Pub/Sub.

Avertissement : les Pub/Sub sont sujets aux quotas et aux limitations de Google Cloud. Si votre nombre de logs est supérieur à ces limitations, nous vous conseillons de les décomposer sur plusieurs sujets. Consultez la section Surveiller la redirection de logs pour découvrir comment configurer un monitor de manière à être automatiquement notifié lorsque vous approchez ces limites.

Créer un Cloud Pub/Sub

  1. Accédez à la console Cloud Pub/Sub et créez un sujet.

    Créer un sujet
  2. Donnez un nom clair à ce sujet, comme export-logs-to-datadog, et cliquez sur Save.

Configurer le Pub/Sub pour transmettre les logs à Datadog

  1. Revenez à la page de présentation des sujets Pub/Sub, puis sélectionnez Subscriptions dans le menu de navigation de gauche. Sélectionnez Create Subscription.
  2. Créez un ID d’abonnement et sélectionnez le sujet que vous venez de créer.
  3. Sélectionnez la méthode Push et saisissez https://gcp-intake.logs.datadoghq.com/v1/input/<CLÉ_API_DATADOG>/.
Méthode Push
  1. Configurez des options supplémentaires si vous le souhaitez, telles que Subscription expiration, Acknowledgement deadline, Message retention duration ou Dead lettering.
  2. Cliquez sur Create en bas.

Le Pub/Sub peut désormais recevoir des logs de Stackdriver et les transmettre à Datadog.

  1. Revenez à la page de présentation des sujets Pub/Sub, puis sélectionnez Subscriptions dans le menu de navigation de gauche. Sélectionnez Create Subscription.
  2. Créez un ID d’abonnement et sélectionnez le sujet que vous venez de créer.
  3. Sélectionnez la méthode Push et saisissez https://gcp-intake.logs.datadoghq.eu/v1/input/<CLÉ_API_DATADOG>/.
Méthode Push
  1. Configurez des options supplémentaires si vous le souhaitez, telles que Subscription expiration, Acknowledgement deadline, Message retention duration ou Dead lettering.
  2. Cliquez sur Create en bas.

Exporter les logs de Stackdriver vers le Pub/Sub

  1. Accédez à la page Log Explorer et filtrez les logs à exporter.

  2. Depuis le menu Action, sélectionnez Create Sink.

  3. Nommez le récepteur.

  4. Choisissez Cloud Pub/Sub comme destination et sélectionnez le Pub/Sub créé à cette fin. Remarque : le Pub/Sub peut se situer dans un autre projet.

    Exporter les logs Google Cloud Pub/Sub vers le Pub Sub
  5. Cliquez sur Create Sink et patientez jusqu’à ce que le message de confirmation apparaisse.

Remarque : il est possible de créer plusieurs exportations de Stackdriver vers le même Pub/Sub en utilisant plusieurs récepteurs.

Avertissement : les Pub/Sub sont sujets aux quotas et aux limitations de Google Cloud. Si votre nombre de logs est supérieur à ces limitations, nous vous conseillons de les décomposer sur plusieurs sujets. Consultez la section Surveiller la redirection de logs pour découvrir comment configurer un monitor de manière à être automatiquement notifié lorsque vous approchez ces limites.

Surveiller la redirection de logs

Les Pub/Sub sont sujets aux quotas et aux limitations de Google Cloud. Si votre nombre de logs est supérieur à ces limitations, nous vous conseillons de les décomposer sur plusieurs sujets, en utilisant différents filtres.

Pour être automatiquement notifié lorsque vous atteignez ces quotas, activez l’intégration Métriques Pub/Sub et configurez un monitor sur la métrique gcp.pubsub.subscription.num_outstanding_messages. Filtrez ce monitor sur l’abonnement qui exporte les logs vers Datadog. L’exemple ci-dessous permet de s’assurer que les logs ne dépassent jamais 1 Mo :

Surveillance Pub Sub

Données collectées

Métriques

Consultez les différentes pages des intégrations Google Cloud pour en savoir plus sur les métriques associées.

Événements

Tous les événements de service générés par votre Google Cloud Platform sont transférés à votre flux d’événements Datadog.

Checks de service

L’intégration Google Cloud Platform n’inclut aucun check de service.

Tags

Les tags sont automatiquement attribués selon différentes options de configuration relatives à Google Cloud Platform et Google Compute Engine. Voici la liste des tags automatiquement attribués :

  • Zone
  • Instance-type
  • Instance-id
  • Automatic-restart
  • On-host-maintenance
  • Project
  • Numeric_project_id
  • Nom

En outre, Datadog recueille les éléments suivants en tant que tags :

  • Les hosts avec les étiquettes <key>:<value>.
  • Les étiquettes personnalisées de Google Pub/Sub, GCE, CloudSQL et Cloud Storage.

Dépannage

Mes métadonnées sont incorrectes pour les métriques gcp.logging définies par l’utilisateur

Pour les métriques gcp.logging non standard (c’est-à-dire les métriques qui ne correspondent pas aux métriques de journalisation Datadog par défaut), les métadonnées appliquées peuvent différer de celles de Stackdriver.

Dans ce cas, les métadonnées doivent être définies manuellement sur la page de résumé de la métrique : recherchez et sélectionnez la métrique en question, puis cliquez sur l’icône en forme de crayon à côté des métadonnées.

Besoin d’aide ? Contactez l’assistance Datadog.