Aller au contenu principal

Profils de configuration Databricks

Un profil de configuration Databricks stocke les paramètres d'authentification dans le fichier .databrickscfg. Les profils de configuration facilitent le basculement entre différents workspaces, environnements ou méthodes d'authentification sans modifier votre code.

Les outils, SDK, scripts et applications peuvent référencer des profils de configuration pour s'authentifier auprès de Databricks. Tous les outils et SDK qui implémentent l'authentification unifiée prennent en charge les profils de configuration.

Qu'est-ce qu'un profil de configuration ?

Un profil de configuration est une section nommée dans le fichier .databrickscfg qui contient les éléments suivants :

  • Informations d'identification d'authentification, telles que des jetons ou des informations d'identification de Service Principal
  • L’URL du Databricks Workspace ou du compte
  • Paramètres facultatifs spécifiques à votre méthode d’authentification.

Créez plusieurs profils dans un seul fichier .databrickscfg pour gérer les connexions à différents Workspace ou environnements tels que le développement, la préproduction et la production.

Créer un profil de configuration

Créez un profil de configuration en utilisant la CLI Databricks ou en modifiant manuellement le fichier .databrickscfg.

Créer un profil avec le CLI

Le moyen le plus simple de créer un profil de configuration pour l'authentification interactive des utilisateurs est avec la CLI Databricks :

Bash
databricks auth login --host <workspace-url>

La CLI ouvre votre navigateur Web pour terminer le flux d’authentification. Après vous être connecté, l'interface CLI enregistre les identifiants en tant que profil de configuration.

Créer un profil manuellement

Pour créer un profil de configuration manuellement :

  1. Créez un fichier nommé .databrickscfg dans votre répertoire personnel :

    • Unix, Linux, macOS : ~/.databrickscfg
    • Windows: %USERPROFILE%\.databrickscfg
  2. Ajouter un profil avec le format suivant :

    [<profile-name>]
    <field-name> = <field-value>

    Remplacez les espaces réservés :

    • <profile-name>: Un nom unique comme DEFAULT, DEVELOPMENT, ou PRODUCTION
    • <field-name> et <field-value>: Les champs d’authentification pour votre méthode d’authentification

Par exemple, pour l'authentification OAuth machine-à-machine (M2M), le fichier .databrickscfg ressemble à ceci :

[DEFAULT]
host = https://<workspace-url>
client_id = <client-id>
client_secret = <client-secret>

Créer plusieurs profils

Définissez plusieurs profils dans le même fichier .databrickscfg pour gérer différents workspaces ou environnements. Chaque profil doit avoir un nom unique.

[DEFAULT]
host = https://production-workspace-url
client_id = <production-client-id>
client_secret = <production-client-secret>

[DEVELOPMENT]
host = https://dev-workspace-url
client_id = <dev-client-id>
client_secret = <dev-client-secret>

[STAGING]
host = https://staging-workspace-url
client_id = <staging-client-id>
client_secret = <staging-client-secret>

Combiner les types d'authentification

Définissez plusieurs méthodes d'authentification dans des profils distincts au sein de votre fichier de configuration. Ceci est utile lorsque vous souhaitez utiliser des identifiants différents pour des workflows ou des outils différents. Par exemple, vous pouvez utiliser l'authentification cloud native pour une utilisation interactive et les informations d'identification OAuth pour l'automatisation :

[DEFAULT]
host = https://<workspace-url>

[SERVICE_PRINCIPAL]
host = https://<workspace-url>
client_id = <client-id>
client_secret = <client-secret>

Pour plus d'informations sur les types d'authentification et leurs champs obligatoires, consultez l'authentification unifiée Databricks.

Utiliser un profil de configuration

Après avoir créé un profil de configuration, référencez-le dans vos outils et votre code. Si vous ne spécifiez pas de nom de profil, les outils et SDK Databricks utilisent automatiquement le profil DEFAULT.

Pour utiliser un profil autre que DEFAULT, spécifiez le nom du profil :

Avec la CLI Databricks :

Bash
databricks workspace list --profile DEVELOPMENT

Avec la variable d'environnement :

Bash
export DATABRICKS_CONFIG_PROFILE=DEVELOPMENT
databricks workspace list

Avec le SDK Python :

Python
from databricks.sdk import WorkspaceClient

# Specify profile in code
w = WorkspaceClient(profile="DEVELOPMENT")

# Or use environment variable DATABRICKS_CONFIG_PROFILE

Bonnes pratiques

  • Utilisez le profil DEFAULT pour votre workspace le plus courant afin de minimiser la nécessité de spécifier des noms de profil.
  • Utilisez des noms de profil descriptifs comme PRODUCTION, DEVELOPMENT ou STAGING au lieu de noms génériques.
  • Protégez votre fichier .databrickscfg en définissant des autorisations de fichier restreintes (lisible uniquement par votre utilisateur).
  • Ne commit pas .databrickscfg dans le contrôle de version. Ajoutez-le à votre fichier .gitignore.
  • Utilisez les principaux de service pour les charges de travail de production au lieu des jetons d'accès personnels.
  • Renouvelez régulièrement les identifiants et mettez à jour vos profils en conséquence.

Dépannage

Si le profil est introuvable, veuillez vérifier les éléments suivants :

  • Le fichier .databrickscfg se trouve dans votre répertoire personnel.
  • Vous utilisez le nom de profil exact.
  • Le fichier n'est pas nommé .databrickscfg.txt ou quelque chose de similaire.

Si l'authentification échoue, vérifiez les éléments suivants :

  • Vos informations d'identification sont à jour et n'ont pas expiré.
  • L'URL host est correcte.
  • Vous disposez des autorisations requises pour les Opérations que vous tentez d'effectuer.

Testez vos profils de configuration à l'aide de la CLI Databricks :

Bash
# Inspect a specific profile
databricks auth env --profile DEVELOPMENT

# List all profiles
databricks auth profiles

Pour plus d’informations, voir Tester vos profils de configuration.

Ressources supplémentaires