Connectivité Private Link
Ce produit n'est pas pris en charge par le
site Datadog que vous avez sélectionné. (
).
La surveillance de Databricks via la connectivité Private Link est en préversion.
Les espaces de travail Databricks déployés à l’aide de Private Link Connectivity sont isolés de l’internet public, ce qui empêche Datadog d’accéder directement aux API Databricks. Pour surveiller ces espaces de travail, déployez un Private Action Runner (PAR) dans votre environnement. Le runner interroge Datadog pour obtenir des requêtes, les exécute localement sur l’API Databricks et renvoie les résultats via votre endpoint VPC Datadog existant.
Architecture
La surveillance Private Link repose sur l’architecture d’interrogation du Private Action Runner. Datadog fournit une version personnalisée de l’image du Private Action Runner qui inclut un script pour interroger l’API Databricks.
Le flux de requêtes fonctionne comme suit :
- Le Private Action Runner contacte le backend Datadog (via l’internet public ou via Private Link) pour interroger et obtenir les requêtes en attente. Si une requête est trouvée, les détails sont renvoyés au runner.
- Les identifiants Databricks (ID client et secret) sont récupérés depuis le stockage de secrets. Un jeton est généré pour la session en appelant l’API Databricks depuis le runner à l’aide de ces identifiants.
- Le runner exécute la requête récupérée sur l’API Databricks. Les résultats sont renvoyés au runner.
- Le runner transmet les résultats au backend Datadog pour traitement.
Toute l’authentification auprès de Datadog est gérée par le Private Action Runner sous-jacent. Une liste d’autorisation configurée localement est définie sur le runner lors de l’installation pour limiter les actions pouvant être effectuées à celles qui sont nécessaires uniquement. Vous pouvez également configurer les contrôles d’accès dans Datadog pour gérer quels utilisateurs et équipes peuvent utiliser le runner. Consultez Gérer l’accès aux Private Action Runners pour plus d’informations.
Installation
Étape 1 : Prérequis Datadog
- Établissez la connectivité vers les endpoints de Datadog API depuis le VPC, en utilisant l’une des méthodes suivantes :
- Sortie vers l’internet public (via une passerelle NAT ou autre)
- Sortie vers Datadog via des endpoints VPC Private Link ou services :
- Créez un compte de service Datadog :
- Accédez à la page Comptes de service.
- Cliquez sur Nouveau compte de service.
- Saisissez un nom et une adresse e-mail pour votre compte de service.
- Sous Attribuer des rôles, sélectionnez le Rôle standard Datadog. Alternativement, sélectionnez un rôle personnalisé disposant de l’autorisation
Connections Resolve. - Cliquez sur Créer un compte de service.
- Assurez-vous que la Remote Configuration est activée pour votre compte Datadog.
Étape 2 : Prérequis Databricks
- Créez un principal de service Databricks (documentation Databricks) :
- En tant qu’administrateur d’espace de travail, connectez-vous à l’espace de travail Databricks.
- Cliquez sur votre nom d’utilisateur dans la barre supérieure et sélectionnez Paramètres.
- Cliquez sur l’onglet Identité et accès.
- À côté de Principaux de service, cliquez sur Gérer.
- Cliquez sur Ajouter un principal de service, puis cliquez sur Ajouter un nouveau et saisissez un nom.
- Alternativement, pour réutiliser un principal de service provenant d’un autre espace de travail, sélectionnez un principal de service existant et ignorez l’étape suivante.
- Cliquez sur Add.
- Générez des secrets pour le principal de service Databricks (documentation Databricks) :
- Sélectionnez le principal de service créé ci-dessus.
- Cliquez sur l’onglet Secrets, puis cliquez sur Générer un secret.
- Définissez la durée de vie du secret en jours (maximum 730 jours).
- Cliquez sur Générer.
- Rendez les informations d’identification Databricks disponibles pour l’exécuteur en utilisant l’une des méthodes suivantes :
- Stockage de secrets dans le cloud (AWS Secrets Manager, AWS Parameter Store, Azure Key Vault ou Google Cloud Secret Manager) : stockez les informations d’identification sous forme d’objet blob JSON :
{"client_id": "<CLIENT_ID>", "client_secret": "<CLIENT_SECRET>"}
Make note of the secret path (AWS ARN, AKV URL, or Google Cloud resource name). You enter this in the integration tile or set it as the DATABRICKS_SECRET_PATH environment variable on the runner container or pod. - Environment variables: Set
DATABRICKS_CLIENT_ID and DATABRICKS_CLIENT_SECRET directly on the runner container or pod. When using this method, leave the Secret Path field blank in the integration tile.
- Provisionnez l’accès à l’espace de travail et les droits pour le principal de service. Consultez Autorisations pour plus de détails.
- Accordez au principal de service les privilèges Administrateur d’espace de travail. Cela permet à Datadog de gérer automatiquement les installations et les mises à jour des scripts d’initialisation. Alternativement, attribuez des autorisations plus granulaires pour la surveillance des tâches, des clusters et des requêtes.
- Cliquez sur l’onglet Identité et accès.
- À côté de Groupes, cliquez sur Gérer.
- Sélectionnez le groupe admins.
- Cliquez sur Ajouter des membres et sélectionnez le principal de service ajouté ci-dessus.
- Cliquez sur Add.
- Pour accéder aux données de coût Databricks ou surveiller les tâches serverless, accordez au principal de service
CAN USE sur l’entrepôt SQL et un accès en lecture aux tables système dans Unity Catalog. Consultez Autorisations pour plus de détails. - Pour surveiller les tâches serverless, ou pour utiliser la surveillance des entrepôts SQL et des requêtes, ajoutez le principal de service au groupe
databricks_pii_access au niveau du compte. Databricks masque le texte des requêtes SQL pour les principaux en dehors de ce groupe. Consultez Accès au texte des requêtes pour plus de détails.
- Enregistrez une application Microsoft Entra ID pour le principal de service (documentation Microsoft Entra) :
- Connectez-vous au centre d’administration Microsoft Entra en tant qu’administrateur d’applications cloud au minimum.
- Accédez à Entra ID > Inscriptions d’applications, puis cliquez sur Nouvelle inscription.
- Saisissez un nom et cliquez sur Enregistrer.
- Sur la page Vue d’ensemble de l’application, notez l’ID d’application (client) et l’ID de répertoire (locataire).
- Générez un secret client pour l’application (documentation Microsoft Entra) :
- Sur la page de l’application, cliquez sur Certificats et secrets.
- Cliquez sur l’onglet Secrets client, puis cliquez sur Nouveau secret client.
- Saisissez une description et une durée de vie, puis cliquez sur Ajouter.
- Copiez la valeur du secret généré. Il ne s’affiche qu’une seule fois.
- Rendez les informations d’identification Databricks disponibles pour l’exécuteur en utilisant l’une des méthodes suivantes :
- Stockage de secrets cloud (AWS Secrets Manager, AWS Parameter Store ou Azure Key Vault) : stockez les informations d’identification sous forme de blob JSON :
{"client_id": "<CLIENT_ID>", "client_secret": "<CLIENT_SECRET>", "tenant_id": "<TENANT_ID>"}
Make note of the secret path (AWS ARN or AKV URL). You enter this in the integration tile or set it as the DATABRICKS_SECRET_PATH environment variable on the runner container or pod. - Environment variables: Set
DATABRICKS_CLIENT_ID, DATABRICKS_CLIENT_SECRET, and DATABRICKS_AZURE_TENANT_ID directly on the runner container or pod. When using this method, leave the Secret Path field blank in the integration tile.
- Ajoutez l’application à Databricks en tant que principal de service géré par Microsoft Entra ID (documentation Databricks) :
- En tant qu’administrateur d’espace de travail, connectez-vous à l’espace de travail Databricks.
- Cliquez sur votre nom d’utilisateur dans la barre supérieure et sélectionnez Paramètres.
- Cliquez sur l’onglet Identité et accès.
- À côté de Principaux de service, cliquez sur Gérer.
- Cliquez sur Ajouter un principal de service, puis cliquez sur Ajouter un nouveau.
- Sélectionnez Géré par Microsoft Entra ID, puis collez l’ID d’application (client) noté ci-dessus.
- Saisissez un nom et cliquez sur Ajouter.
- Provisionnez l’accès à l’espace de travail et les droits pour le principal de service. Consultez Autorisations pour plus de détails.
- Accordez au principal de service les privilèges Administrateur d’espace de travail. Cela permet à Datadog de gérer automatiquement les installations et les mises à jour des scripts d’initialisation. Alternativement, attribuez des autorisations plus granulaires pour la surveillance des tâches, des clusters et des requêtes.
- Cliquez sur l’onglet Identité et accès.
- À côté de Groupes, cliquez sur Gérer.
- Sélectionnez le groupe admins.
- Cliquez sur Ajouter des membres et sélectionnez le principal de service ajouté ci-dessus.
- Cliquez sur Add.
- Pour accéder aux données de coût Databricks ou surveiller les tâches serverless, accordez au principal de service
CAN USE sur l’entrepôt SQL et un accès en lecture aux tables système dans Unity Catalog. Consultez Autorisations pour plus de détails. - Pour surveiller les tâches serverless, ou pour utiliser la surveillance des entrepôts SQL et des requêtes, ajoutez le principal de service au groupe
databricks_pii_access au niveau du compte. Databricks masque le texte des requêtes SQL pour les principaux en dehors de ce groupe. Consultez Accès au texte des requêtes pour plus de détails.
Étape 3 : Configurer le Private Action Runner
Configurez votre Private Action Runner en utilisant l’une des options suivantes.
- Installez le Private Action Runner dans votre cluster Kubernetes (documentation supplémentaire, Helm chart) :
- Accédez à la page Private Action Runner setup.
- Sélectionnez l’option Script, puis cliquez sur Next.
- Suivez les instructions sous Kubernetes.
- Le Private Action Runner devrait apparaître en bas comme “successfully installed”.
- Mettez à jour le
values.yaml existant (en vous référant aux Helm chart values) :- Définissez
image.repository sur gcr.io/datadoghq/dd-data-observability-par. - Définissez
image.tag sur 1.21.0-3.
- Configurez les identifiants sur le Private Action Runner en utilisant l’une des méthodes suivantes :
- Définissez les variables d’environnement
DATABRICKS_CLIENT_ID et DATABRICKS_CLIENT_SECRET directement sur le runner. Si vous utilisez un principal de service géré par Microsoft Entra ID, définissez également DATABRICKS_AZURE_TENANT_ID. Laissez le champ « Secret Path » vide dans la tuile d’intégration. - Utilisez le stockage de secrets cloud. Assurez-vous qu’une identité est attribuée au pod (Azure Workload Identity, AWS IAM Role ou GKE Workload Identity) avec les autorisations nécessaires pour lire le secret créé à l’étape 2, et fournissez le chemin d’accès au secret soit via la variable d’environnement
DATABRICKS_SECRET_PATH, soit en le saisissant dans le champ « Secret Path » de la tuile d’intégration.
- Redémarrez le déploiement pour que ces modifications prennent effet.
Installez le Private Action Runner à l’aide de Docker (documentation supplémentaire) :
Accédez à la page Private Action Runner setup.
Sélectionnez l’option Script, puis cliquez sur Next.
Suivez les instructions sous Docker.
Important : Remplacez gcr.io/datadoghq/private-action-runner:v1.21.0-large par gcr.io/datadoghq/dd-data-observability-par:1.21.0-3.
Le Private Action Runner devrait apparaître en bas comme “successfully installed”.
Configurez les identifiants sur le Private Action Runner en utilisant l’une des méthodes suivantes :
- Définissez les variables d’environnement
DATABRICKS_CLIENT_ID et DATABRICKS_CLIENT_SECRET directement sur le runner. Si vous utilisez un principal de service géré par Microsoft Entra ID, définissez également DATABRICKS_AZURE_TENANT_ID. Laissez le champ « Secret Path » vide dans la tuile d’intégration. - Utilisez le stockage de secrets cloud. Assurez-vous qu’une identité est attribuée à l’instance (Azure Managed Identity, AWS IAM Role ou GCE Service Account) avec les autorisations de lecture du secret créé à l’étape 2, et fournissez le chemin d’accès au secret soit via la variable d’environnement
DATABRICKS_SECRET_PATH, soit en le saisissant dans le champ « Secret Path » de la tuile d’intégration.
Redémarrez le conteneur Docker pour que les modifications prennent effet.
Remarque : D’autres miroirs sont disponibles si gcr.io est inaccessible :
docker.io/datadog/dd-data-observability-parpublic.ecr.aws/datadog/dd-data-observability-pardatadoghq.azurecr.io/dd-data-observability-parasia-docker.pkg.dev/datadoghq/asia.gcr.io/dd-data-observability-par
- Attachez une connexion au Private Action Runner :
- Accédez à la page Private Action Runners.
- Sélectionnez l’exécuteur installé.
- Sélectionnez Finish Setup.
- Sélectionnez Script.
- Définissez Path to File sur
/etc/data-observability/config/script.yaml. - Sélectionnez Next, Confirm Access.
- Ajoutez le compte de service créé dans Étape 1 avec un accès Resolver. Cette étape est requise — l’exécuteur utilise ce compte de service pour authentifier les requêtes Datadog, et l’intégration ne peut pas fonctionner sans lui.
- Sélectionnez Create and Test. Vérifiez que les résultats du test ne renvoient aucune erreur.
- Configurez l’intégration Databricks :
- Accédez à la tuile Databricks integration.
- Sous Credentials, sélectionnez Private Action Runner.
- Sous Connection, sélectionnez la connexion créée à l’étape précédente.
- Sous Service Account, sélectionnez le compte de service créé à l’étape 1.
- Sous Secret Path, saisissez le Secret Path issu de Étape 2. Laissez ce champ vide si vous avez défini les identifiants à l’aide des variables d’environnement
DATABRICKS_CLIENT_ID et DATABRICKS_CLIENT_SECRET, ou si vous avez défini le chemin à l’aide de la variable d’environnement DATABRICKS_SECRET_PATH sur le runner.
- Terminez le reste de la configuration de l’intégration comme décrit dans Configure the Datadog-Databricks integration :
- Saisissez le Workspace Name, le Workspace URL et l’System Tables SQL Warehouse ID.
- Activez les produits qui vous intéressent.
Remarque : Model Serving derrière Private Link n’est pas pris en charge pour le moment.
- Si vous avez activé Jobs Monitoring, déployez le script d’initialisation du Datadog Agent pour surveiller les jobs et les clusters sur le calcul classique. Suivez les instructions de Install the Datadog Agent pour configurer le script d’initialisation, puis redémarrez les clusters en cours d’exécution pour que les modifications prennent effet.
- Cliquez sur Save Databricks Workspace.
- Vérifiez qu’aucune erreur ne s’affiche lors de l’enregistrement.
Validation
Une fois la configuration terminée, les informations sur les jobs et les clusters devraient apparaître rapidement dans Data Observability: Jobs Monitoring.
Pour aller plus loin
Documentation, liens et articles supplémentaires utiles: