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 :
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 :
-
Créez un fichier nommé
.databrickscfgdans votre répertoire personnel :- Unix, Linux, macOS :
~/.databrickscfg - Windows:
%USERPROFILE%\.databrickscfg
- Unix, Linux, macOS :
-
Ajouter un profil avec le format suivant :
[<profile-name>]
<field-name> = <field-value>Remplacez les espaces réservés :
<profile-name>: Un nom unique commeDEFAULT,DEVELOPMENT, ouPRODUCTION<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 :
databricks workspace list --profile DEVELOPMENT
Avec la variable d'environnement :
export DATABRICKS_CONFIG_PROFILE=DEVELOPMENT
databricks workspace list
Avec le SDK 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,DEVELOPMENTouSTAGINGau lieu de noms génériques. - Protégez votre fichier
.databrickscfgen définissant des autorisations de fichier restreintes (lisible uniquement par votre utilisateur). - Ne commit pas
.databrickscfgdans 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
.databrickscfgse trouve dans votre répertoire personnel. - Vous utilisez le nom de profil exact.
- Le fichier n'est pas nommé
.databrickscfg.txtou 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
hostest 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 :
# 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.