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 libellés GCE qui leur sont automatiquement attribués par Datadog.
L'intégration GCP de Datadog est conçue pour recueillir
toutes les métriques Google Cloud. 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 à jour.
Intégration | Description |
---|
App Engine | PaaS (plateforme en tant que service) permettant de développer des applications évolutives |
Big Query | Entrepôt de données pour entreprise |
Bigtable | Service de base de données Big Data NoSQL |
Cloud SQL | Service de base de données MySQL |
API Cloud | Interfaces de programmation pour tous les services Google Cloud Platform |
Cloud Composer | Service d’orchestration de workflows entièrement géré |
Cloud Dataproc | Service cloud permettant d’exécuter des clusters Apache Spark et Apache Hadoop |
Cloud Filestore | Stockage de fichiers entièrement géré hautes performances |
Cloud Firestore | Base de données flexible et évolutive pour le développement mobile, web et serveur |
Cloud Interconnect | Connectivité hybride |
Cloud IoT | Connexion et gestion de vos appareils en toute sécurité |
Cloud Load Balancing | Répartition de ressources informatiques à équilibrage de charge |
Cloud Memorystore pour Redis | Service 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 Run | Plateforme de calcul gérée qui exécute des conteneurs sans état via HTTP |
Cloud Tasks | Files d’attente de tâches distribuées |
Cloud TPU | Entraînement et exécution de modèles d’apprentissage automatique |
Compute Engine | Machines virtuelles hautes performances |
Container Engine | Kubernetes, géré par Google |
Datastore | Base de données NoSQL |
Firebase | Plateforme mobile pour le développement d’applications |
Functions | Plateforme sans serveur pour la création de microservices basés sur des événements |
Kubernetes Engine | Gestionnaire de clusters et système d’orchestration |
Machine Learning | Services d’apprentissage automatique |
Pub/Sub | Service de messagerie en temps réel |
Spanner | Service de base de données relationnelle à évolutivité horizontale et à cohérence forte |
Cloud Logging | Gestion et analyse de logs en temps réel |
Storage | Stockage d’objets unifié |
VPN | Fonctionnalité de réseau géré |
Configuration
Collecte de métriques
Installation
L'emprunt d'identité de compte de service n'est pas disponible pour le site .
Grâce à l’emprunt d’identité de compte de service et à la découverte automatique des projets, vous pouvez intégrer Datadog à Google Cloud.
Cette approche vous permet de surveiller tous les projets accessibles depuis un compte de service, en attribuant des rôles IAM aux projets pertinents. Il est possible d’attribuer ces rôles à des projets spécifiques, mais aussi de les attribuer à l’échelle d’une organisation ou d’un dossier, afin de surveiller des groupes de projets. De cette façon, Datadog découvre et surveille automatiquement tous les projets d’un contexte donné, y compris les nouveaux projets qui intègrent ultérieurement le groupe.
Prérequis
Si votre organisation restreint les identités en fonction de leur domaine, vous devez ajouter l’identité client Datadog à la liste blanche de votre stratégie. L’identité client de Datadog est C0147pk0i
.
Pour utiliser les fonctionnalités d’emprunt d’identité de compte de service et de découverte automatique des projets, et ainsi surveiller vos projets, il est nécessaire d’attribuer certains rôles et d’activer certaines API. Avant de commencer, vérifiez que les API suivantes sont activées pour les projets à surveiller :
1. Créer votre compte de service Google Cloud
- Ouvrez votre console Google Cloud.
- Accédez à IAM & Admin > Service Accounts.
- Cliquez sur Create service account en haut de la page.
- Attribuez un nom unique au compte de service, puis cliquez sur Create and continue.
- Ajoutez les rôles suivants au compte de service :
- Monitoring Viewer
- Compute Viewer
- Cloud Asset Viewer
- Browser
- Cliquez sur Continue, puis sur Done pour terminer la création du compte de service.
2. Ajouter le service principal Datadog à votre compte de service
- Dans Datadog, accédez à Integrations > Google Cloud Platform.
- Cliquez sur Add GCP Account. SI vous n’avez pas encore configuré de projet, vous êtes automatiquement redirigé vers cette page.
- Si vous n’avez pas généré de service principal Datadog pour votre organisation, cliquez sur le bouton Generate Principal.
- Copiez votre service principal Datadog et conservez-le pour la prochaine section.Gardez cette fenêtre ouverte, car vous en aurez besoin lors de la prochaine section.
- Dans la console Google Cloud, sous le menu Service Accounts, recherchez le compte de service que vous avez créé lors de la première section.
- Accédez à l’onglet Permissions, puis cliquez sur Grant Access.
- Collez votre service principal Datadog dans la zone New Principals.
- Attribuez le rôle Service Account Token Creator, puis cliquez sur Save.
Remarque : si vous avez déjà configuré l’accès à l’aide d’un service principal Datadog partagé, vous pouvez révoquer l’autorisation pour ce service principal après avoir suivi ces étapes.
3. Terminer la configuration de l’intégration dans Datadog
- Dans votre console Google Cloud, accédez à l’onglet Service Account > Details, afin de consulter l’adresse e-mail associée à ce compte de service Google. Son format est
<nom-compte-service>@datadog-sandbox.iam.gserviceaccount.com
. - Copiez cette adresse e-mail.
- Revenez sur le carré de configuration de l’intégration dans Datadog (là où vous avez copié votre service principal Datadog lors de la section précédente).
- Dans la zone de texte sous Add Service Account Email, collez l’adresse e-mail que vous avez précédemment copiée.
- Cliquez sur Verify and Save Account.
Les métriques devraient s’afficher dans Datadog après environ 15 minutes.
4. Attribuer des rôles à d’autres projets (facultatif)
Grâce à la découverte automatique de projets, il est beaucoup plus simple d’ajouter de nouveaux projets à surveiller. SI vous attribuez à d’autres projets, dossiers ou organisations un accès à votre compte de service, Datadog découvre ces projets (ainsi que tous les projets imbriqués dans les dossiers ou organisations) et les ajoute automatiquement à votre carré d’intégration.
Vérifiez que vous avez configuré les bonnes autorisations, afin que les rôles attribués disposent de l’accès prévu :
- Project IAM Admin (ou autorisation de plus haut niveau)
- Folder Admin
- Organization Admin
Dans la console Google Cloud, accédez à la page IAM.
Sélectionnez un projet, un dossier ou une organisation.
Pour attribuer un rôle à un service principal qui ne possède pas encore de rôle pour la ressource, cliquez sur Grant Access, puis saisissez l’adresse e-mail du compte de service créé précédemment.
Attribuez les rôles suivants :
- Compute Viewer
- Monitoring Viewer
- Cloud Asset Viewer
Remarque : le rôle Browser est uniquement requis pour le projet par défaut du compte de service.
Cliquez sur Save.
Configuration
Si vous le souhaitez, vous pouvez limiter les instances GCE récupérées par Datadog. Pour ce faire, saisissez des tags dans la zone de texte Limit Metric Collection située dans le menu déroulant d’un projet donné. 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.*
Consultez la documentation Google pour obtenir plus de renseignements sur la création et la gestion de libellés.
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 par l’intermédiaire de Google Cloud Logging et envoyés à un Cloud Pub/Sub grâce à un redirecteur Push HTTP. La collecte de logs repose sur cinq étapes :
- Si vous ne l’avez pas déjà fait, configurez d’abord l’intégration Google Cloud Platform.
- Créer un Cloud Pub/Sub
- Configurer le Pub/Sub pour transmettre les logs à Datadog
- Configurer les exportations depuis les logs Google Cloud vers le Pub/Sub
Avertissement : les Pub/Sub sont inclus dans les quotas et limitations de Google Cloud. Si votre nombre de logs dépasse ces limites, Datadog vous conseille de les répartir sur plusieurs sujets. Consultez la rubrique Surveiller la redirection de logs pour découvrir comment configurer un monitor afin de recevoir automatiquement une notification lorsque vous vous approchez de ces limites.
Créer un Cloud Pub/Sub
Accédez à la console Cloud Pub/Sub et créez un sujet.
Donnez un nom clair à ce sujet, comme export-logs-to-datadog
, et cliquez sur Save.
Transmettre les logs à Datadog
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
.
Créez un ID d’abonnement et sélectionnez le sujet que vous venez de créer.
Sélectionnez la méthode Push
et saisissez ce qui suit : https://gcp-intake.logs.
/api/v2/logs?dd-api-key=<DATADOG_API_KEY>&dd-protocol=gcp
Vous pouvez créer une clé d’API ou choisir une clé d’API existante en accédant à Datadog Organization Settings -> API Keys.
Configurez des options supplémentaires si vous le souhaitez, telles que Subscription expiration, Acknowledgment deadline, Message retention duration ou Dead lettering.
Sous Retry policy, sélectionnez Retry after exponential backoff delay
.
Cliquez sur Create
en bas.
Le Pub/Sub peut désormais recevoir des logs de Google Cloud Logging et les transmettre à Datadog.
Exporter des logs depuis Google Cloud
Accédez à la page Log Explorer et filtrez les logs à exporter.
Dans l’onglet Log Router, sélectionnez Create Sink.
Nommez le récepteur.
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.
Cliquez sur Create Sink et patientez jusqu’à ce que le message de confirmation apparaisse.
Remarque : il est possible de créer plusieurs exportations depuis Google Cloud Logging vers le même Pub/Sub en utilisant plusieurs récepteurs.
Avertissement : les Pub/Sub sont inclus dans les quotas et limitations de Google Cloud. Si votre nombre de logs dépasse ces limites, Datadog vous conseille de les répartir sur plusieurs sujets. Consultez la rubrique Surveiller la redirection de logs pour découvrir comment configurer un monitor afin de recevoir automatiquement une notification lorsque vous vous approchez de ces limites.
Surveiller la redirection de logs
Les Pub/Sub sont inclus dans les quotas et limitations de Google Cloud. Si votre nombre de logs dépasse ces limites, Datadog vous conseille de les répartir sur plusieurs sujets, en utilisant différents filtres.
Pour recevoir automatiquement une alerte lorsque vous atteignez ces quotas, activez l’intégration Pub/Sub et configurez un monitor sur la métrique gcp.pubsub.subscription.num_outstanding_messages
. Filtrez ensuite ce monitor sur l’abonnement qui exporte les logs vers Datadog. L’exemple ci-dessous permet de s’assurer que le nombre de logs ne dépasse jamais 1 000 :
Échantillonner des logs
Vous avez la possibilité d’échantillonner les logs interrogés grâce à la fonction sample. Par exemple, pour inclure uniquement 10 % des logs, utilisez sample(insertId, 0.1)
.
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 Google Cloud Platform sont transférés vers votre flux d’événements Datadog.
Checks de service
L’intégration Google Cloud Platform n’inclut aucun check de service.
Les tags sont automatiquement attribués en fonction d’un ensemble d’options de configuration Google Cloud Platform et Google Compute Engine. Toutes les métriques bénéficient du tag project_id
. Des tags supplémentaires sont recueillis à partir de la plateforme Google Cloud, le cas échéant. Les tags recueillis dépendent du type de métrique.
En outre, Datadog recueille les éléments suivants en tant que tags :
- Les hosts avec les libellés
<key>:<value>
- Les libellés personnalisés de Google Pub/Sub, GCE, Cloud SQL 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, comme 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 Google Cloud Logging.
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.