Créer un Workspace à l'aide de l'API de compte
Utilisez les Workspace APIs pour déployer un nouveau workspace dans votre compte Databricks.
Objets de configuration requis
Pour créer un Workspace Databricks, vous devez faire référence aux deux objets de configuration suivants. Vous pouvez utiliser des configurations existantes dans votre compte, ou en créer de nouvelles si nécessaire.
- Configuration du stockage : Définit et accorde à Databricks l'accès au compartiment S3 racine où sont stockés les assets du Workspace, tels que les données, les bibliothèques et les logs. Voir Créer une configuration de stockage
- Configuration d'identifiant : Accorde à Databricks l'autorisation de déployer des ressources dans votre compte AWS. Consultez Créer une configuration d'identifiant.
Objets de configuration supplémentaires
Si vous souhaitez utiliser l’une des fonctionnalités suivantes, vous devez faire référence à des objets de configuration spécifiques lorsque vous déployez votre Workspace :
- Configuration réseau : pour déployer le Workspace dans votre propre VPC (VPC géré par le client), vous devez faire référence à une configuration réseau. Consultez Enregistrer votre Virtual Private Cloud (VPC) auprès de Databricks.
- Configuration des clés : Pour utiliser les clés gérées par le client afin de chiffrer les services gérés, le stockage du workspace, ou les deux, vous devez faire référence à une configuration de clé. Consultez Configurer les clés gérées par le client pour le chiffrement.
- Paramètres d'accès privé Pour fournir une connectivité privée avec AWS PrivateLink, vous devez référencer un objet de paramètres d'accès privé. Voir Gérer les paramètres d'accès privé.
Créer une référence de paramètre de workspace
Voici un exemple de commande CLI qui crée un nouveau workspace :
databricks account workspaces create --json '{
"aws_region": "us-west-2",
"workspace_name": "string",
"deployment_name": "workspace-1",
"pricing_tier": "PREMIUM",
"storage_configuration_id": "b43a6064-04c1-4e1c-88b6-d91e5b136b13",
"credentials_id": "ccc64f28-ebdc-4c89-add9-5dcb6d7727d8",
"network_id": "fd0cc5bc-683c-47e9-b15e-144d7744a496",
"private_access_settings_id": "3b3bbcb5-46bd-4b03-944e-97eb44ed7991",
"managed_services_customer_managed_key_id": "849b3d6b-e68e-468d-b3e5-deb08b03c56d",
"storage_customer_managed_key_id": "14138d0f-a575-4ae2-be71-ddfd0b602286",
"custom_tags": {
"property1": "string",
"property2": "string"
}
}'
Paramètres standards
aws_region: la région AWS du plan de calcul du Workspace. Voir clouds et régions Databricks.workspace_name: nom lisible par l'homme pour votre Workspace. Ceci est le nom du workspace que les utilisateurs voient dans l'interface utilisateur Databricks.deployment_name: (Recommandé, mais facultatif) Nom de déploiement unique pour votre Workspace. Pour plus de détails, voir la référence de l'API Workspace.custom_tags: paires clé-valeur qui agissent comme des métadonnées pour organiser les Ressources. Les balises peuvent aider à gérer, identifier, organiser, rechercher et filtrer les ressources, ainsi qu'à surveiller les coûts et à attribuer l'utilisation.pricing_tier: Le niveau de Tarifs du Workspace.PREMIUM,ENTERPRISE, ouCOMMUNITY_EDITIONstorage_configuration_id: Votre ID de configuration de stockage, qui représente votre compartiment S3 racine. Utilisez une configuration existante ou créez une nouvelle configuration de stockage.credentials_id: Votre ID de configuration d'identifiant. Utilisez une configuration existante ou créez une nouvelle configuration d'identifiant.
Configurations avancées
Utilisez les parameter facultatifs suivants pour configurer les fonctionnalités de réseau et de sécurité dans votre Workspace :
network_id: L'ID de configuration réseau. Obligatoire lors du déploiement du Workspace dans un Virtual Private Cloud (VPC) géré par le client. Consultez Enregistrer votre Virtual Private Cloud (VPC) avec Databricks.private_access_settings_id: L'ID de l'objet de paramètres d'accès privé utilisé pour activer AWS PrivateLink. Consultez Gérer les paramètres d'accès privé. Requis pour l'accès PrivateLink pour tous les types de connexion (front-end, back-end, ou les deux). Doit être configuré lorsque vous déployez le Workspace.managed_services_customer_managed_key_id: L'ID de configuration de clé pour les services gérés, qui est le champcustomer_managed_key_idd'un objet de configuration de clé. Utilisé pour chiffrer les services gérés tels que le notebook et les données secrètes dans le plan de contrôle. Si vous chiffrez à la fois les services gérés et le stockage du Workspace, utilisez le même ID dans le champstorage_customer_managed_key_id. Vous pouvez configurer ceci lors de la création du Workspace ou le mettre à jour plus tard. Voir Clés gérées par le client pour les services gérés.storage_customer_managed_key_id: l'ID de configuration de clé pour le stockage du Workspace, qui est le champcustomer_managed_key_idde l'objet de configuration de clé. Si vous chiffrez les services gérés et le stockage du workspace, utilisez le même ID dans le champmanaged_services_customer_managed_key_id. Utilisé uniquement pour chiffrer le stockage du workspace. Doit être configuré lorsque vous déployez le Workspace. Consultez les clés gérées par le client pour le stockage du workspace.
Réponse de création de Workspace
Après avoir appelé l'API de création de Workspace, vous recevrez une réponse similaire à ce qui suit :
{
"account_id": "449e7a5c-69d3-4b8a-aaaf-5c9b713ebc65",
"aws_region": "string",
"creation_time": 0,
"credentials_id": "c7814269-df58-4ca3-85e9-f6672ef43d77",
"custom_tags": {
"property1": "string",
"property2": "string"
},
"deployment_name": "string",
"managed_services_customer_managed_key_id": "faacdc79-6530-4583-a154-5d427a663e53",
"network_id": "d6797cf4-42b9-4cad-8591-9dd91c3f0fc3",
"pricing_tier": "PREMIUM",
"private_access_settings_id": "3b3bbcb5-46bd-4b03-944e-97eb44ed7991",
"storage_configuration_id": "04aae505-1b1e-4cb9-997d-e1c49282675d",
"storage_customer_managed_key_id": "14138d0f-a575-4ae2-be71-ddfd0b602286",
"workspace_id": 1614665312930232,
"workspace_name": "string",
"workspace_status": "PROVISIONING",
"workspace_status_message": "Workspace resources are being set up."
}
Si vous recevez une erreur lors de la création de votre Workspace, consultez Dépanner les erreurs de création de Workspace.
Confirmer le nouveau workspace
Pour vérifier le statut du workspace, appelez l'API get workspace.
Utilisez la valeur workspace_id de la réponse JSON renvoyée lors de la création du Workspace.
Dans la réponse, les valeurs possibles workspace_status sont :
NOT_PROVISIONED: non encore approvisionné.PROVISIONING: Toujours en provisionnement. Patientez quelques minutes et répétez cette requête API.RUNNING: Déploiement réussi et en cours d'exécution.FAILED: déploiement échoué.BANNED: Interdit.CANCELLING: En cours d'annulation.
Consultez Résoudre les problèmes liés aux erreurs de création de Workspace pour savoir comment gérer les valeurs de statut infructueuses.
Par exemple :
curl -X GET
'https://accounts.cloud.databricks.com/api/2.0/accounts/<databricks-account-id>/workspaces/<databricks-workspace-id>' \
--header 'Authorization: Bearer $OAUTH_TOKEN'
Réponse :
{
"workspace_id": 123456789,
"workspace_name": "my-company-example",
"aws_region": "us-west-2",
"creation_time": 1579768294842,
"deployment_name": "my-company-example",
"workspace_status": "RUNNING",
"account_id": "<databricks-account-id>",
"credentials_id": "<aws-credentials-id>",
"storage_configuration_id": "<databricks-storage-config-id>",
"workspace_status_message": "Workspace is running.",
"network_id": "339f16b9-b8a3-4d50-9d1b-7e29e49448c3",
"managed_services_customer_managed_key_id": "<aws-kms-managed-services-key-id>",
"storage_customer_managed_key_id": "<aws-kms-notebook-workspace-storage-id>",
"pricing_tier": "ENTERPRISE"
}
Dans cet exemple, le statut du Workspace (workspace_status) est défini sur RUNNING, donc il a réussi. S’il est PROVISIONING, répétez cette demande API jusqu’à ce qu’elle réussisse.
Le palier de tarification utilise par default le plan associé à votre compte. Voir Niveaux de plateforme AWS.
Testez votre nouveau Workspace une fois son statut RUNNING:
-
Connexion à l'interface utilisateur sur le nouveau Workspace — Confirmez que vous pouvez vous connecter à l'application web à l'URL
https://<deployment-name>.cloud.databricks.com. Par exemple, si le nom de déploiement que vous avez spécifié lors de la création du Workspace estABCSales, votre URL de Workspace esthttps://abcsales.cloud.databricks.com. Connectez-vous à l'aide de votre nom d'utilisateur du compte. -
Connexion à l'API REST sur le nouveau workspace — Confirmez que vous pouvez accéder à l'API REST. L'exemple suivant appelle l'API Utilisateurs du Workspace pour obtenir une liste d'utilisateurs.
Bashcurl -u <user-name> -X GET 'https://<deployment-name>.cloud.databricks.com/api/2.0/scim/v2/Users' \
--header 'Authorization: Bearer $OAUTH_TOKEN'Pour plus d'informations sur l'utilisation des API REST de Databricks, y compris d'autres options d'authentification, consultez l'API Workspace.
Configuration PrivateLink post-déploiement (facultatif)
Cette étape est nécessaire uniquement si vous configurez AWS PrivateLink.
Après la création du Workspace :
- Si vous implémentez une connexion PrivateLink **frontale**, mettez en œuvre les modifications de configuration DNS pertinentes, comme décrit à l'étape 4 : configurer le DNS pour Private Link entrant.
- Créez éventuellement d'autres Endpoint Virtual Private Cloud (VPC), comme décrit dans « Ajouter des Endpoint Virtual Private Cloud (VPC) pour d'autres services AWS ».
Autre configuration post-déploiement facultative
Vous pourriez envisager ces étapes de configuration facultatives pour votre nouveau workspace.
Activer les listes d'accès IP
Configurer les adresses IP autorisées à se connecter à l'application web, aux REST APIs, aux JDBC/ODBC Endpoints, ainsi qu'à DBConnect. Vous pouvez spécifier des listes d'autorisation et des listes de blocage sous forme d'adresses IP ou de plages d'adresses IP. Voir Configurer les listes d’accès IP pour les Workspace.
Activer la table système de Logs d'audit
Databricks vous recommande fortement d'activer la table système des journaux d'audit pour surveiller les activités effectuées et l'utilisation générée par vos utilisateurs Databricks. Votre workspace doit avoir Unity Catalog activé. Consulter la référence des tables système pour les instructions.
Résoudre les problèmes liés aux erreurs de création du Workspace
Les sections suivantes fournissent des solutions aux erreurs courantes de création de Workspace.
Le nombre maximum d'adresses a été atteint
Lorsque Databricks crée un Virtual Private Cloud (VPC) en votre nom, vous devez disposer d'au moins une adresse IP Elastic inutilisée. Dans le cas contraire, le Virtual Private Cloud (VPC) n'est pas créé et l'erreur suivante se produit :
The maximum number of addresses has been reached.
Augmentez le nombre d'IP élastiques et réessayez.
Étapes générales de dépannage
Pour toutes les erreurs de création de workspace, essayez les étapes de dépannage suivantes dans l'ordre indiqué.
Valider le réseau
Si la création du workspace ou les étapes de vérification de l'état indiquent une erreur liée au réseau, appelez l'API de configuration réseau pour vous assurer que les paramètres réseau sont corrects.
Dans la réponse, affichez les champs warning_messages error_messages. Si les deux tableaux sont vides, il n'y a ni avertissements ni erreurs.
Sinon, examinez attentivement les objets JSON d’avertissement et d’erreur :
- Pour les avertissements, l'énumération
warning_typeindique que le problème concernait un sous-réseau ou un groupe de sécurité. Lewarning_messagefournit des informations supplémentaires. Soyez conscient que si vous avez un pare-feu ou une instance NAT (au lieu d'une passerelle NAT), la validation du réseau émet toujours un avertissement. - En cas d'erreurs, l'énumération
error_typeindique que le problème concernait soit les identifiants, le Virtual Private Cloud (VPC), le sous-réseau, le groupe de sécurité ou l'ACL réseau. Leerror_messagefournit des détails supplémentaires.
Corriger les problèmes d'infrastructure
En fonction des erreurs dans la réponse à la requête d'API de configuration réseau API, confirmez que :
- Votre groupe de sécurité est conforme aux exigences du VPC géré par le client.
- Votre politique IAM inter-comptes inclut les autorisations requises. Voir Créer une configuration d'informations d'identification pour la politique à utiliser pour votre type de déploiement.
Mettre à jour le workspace en échec
Pour mettre à jour le Workspace défaillant, appelez l'API de mise à jour du Workspace.
Vous pouvez utiliser la même API pour mettre à jour un workspace en cours d'exécution (déployé avec succès), mais vous ne pouvez modifier que la configuration des identifiants, la configuration réseau et la clé gérée par le client pour les services gérés.
Vous pouvez passer ces champs de configuration du Workspace pour les modifier : credentials_id, storage_configuration_id, network_id, managed_services_customer_managed_key_id et storage_customer_managed_key_id.
Si la valeur workspace_status renvoie PROVISIONING, continuez à vérifier l'état RUNNING à l'aide de l'API de récupération du Workspace.
Si la mise à jour du Workspace échoue, recréez le réseau et le Workspace.
Si l'API de mise à jour du Workspace ne fonctionne pas, vous devez supprimer et recréer le réseau (si vous avez fourni votre propre Virtual Private Cloud (VPC)) et le Workspace échoué dans l'ordre suivant.
-
Supprimer le Workspace à l'aide de l'API de suppression du Workspace.
-
Si vous avez fourni votre propre Virtual Private Cloud (VPC), supprimez la configuration réseau à l'aide de l'API de suppression de configuration réseau.
-
Recréez le réseau en utilisant les bonnes valeurs pour
vpc_id,subnet_idsetsecurity_group_ids. -
Recréez le workspace en utilisant les valeurs correctes pour
credentials_id,storage_configuration_id,network_id,managed_services_customer_managed_key_idetstorage_customer_managed_key_id.Si vous obtenez la valeur
PROVISIONINGdeworkspace_status, continuez à vérifier l'étatRUNNINGà l'aide de l'API du Workspace.