Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Cette page explique comment désactiver les bibliothèques Python préinstallées sur une application Databricks mise à l’échelle horizontale, gérer vos propres dépendances et réactiver les bibliothèques préinstallées ultérieurement. Le retrait n’est disponible que pour les applications à mise à l’échelle horizontale qui ont été converties depuis une application standard. Consultez Convertir une application standard pour utiliser la mise à l’échelle horizontale. La mise à l’échelle horizontale est en version bêta.
Lorsque vous convertissez une application standard en application à mise à l’échelle horizontale, Azure Databricks associe l’application convertie aux bibliothèques Python préinstallées afin que les instructions d’importation existantes de votre application continuent de fonctionner. Optez pour exécuter l’application sur une image de système d’exploitation de base propre et déclarez vous-même chaque bibliothèque.
Désactiver les bibliothèques préinstallées
Le refus indique à Azure Databricks de créer votre prochain déploiement à partir d’une image de base du système d’exploitation propre. Les bibliothèques préinstallées ne sont plus disponibles, sauf si vous les déclarez dans requirements.txt ou pyproject.toml.
Pour désactiver :
- Dans la page des détails de l’application, cliquez sur Modifier.
- Dans l’étape Configure, décochez la case Utiliser les bibliothèques Python préinstallées.
- Cliquez sur Enregistrer. Le déploiement en cours d’exécution n’est pas affecté.
- Déployez à nouveau votre application à partir de l’onglet Déploiements . Ce nouveau déploiement s’appuie sur l’image de système d’exploitation de base propre.
Flux de travail recommandé
Vos dépendances peuvent inclure des bibliothèques préinstallées de manière transitive. Il n’est donc pas toujours clair quelles bibliothèques votre application nécessitent directement. Recherchez les bibliothèques manquantes dans une application de test avant de désactiver cela en production :
- Créez une nouvelle application avec mise à l’échelle horizontale. Les nouvelles applications à mise à l’échelle horizontale s’exécutent déjà sur l’image propre du système d’exploitation de base, ce qui correspond à votre objectif après désinscription.
- Déployez la source de votre application de production sur l’application de test. Mettez à jour
requirements.txt(oupyproject.toml) et redéployez jusqu’au démarrage de l’application de test, répond aux demandes et réussit vos tests. - Copiez les déclarations de dépendance finales dans la source de votre application de production.
- Sur l’application de production, suivez les étapes décrites dans Désactiver les bibliothèques préinstallées et déployez la source mise à jour.
L’environnement de production continue de fonctionner sur l’image avec les bibliothèques préinstallées jusqu’à ce que votre nouveau déploiement réussisse les vérifications d’intégrité ; cette approche évite ainsi toute interruption de service pendant que vous identifiez les dépendances manquantes dans l’application de test.
Résoudre les erreurs après la désactivation
L’échec le plus courant après la désinscription est un ModuleNotFoundError au démarrage de l’application, causé par un framework ou une bibliothèque que votre code a importé implicitement depuis l’ensemble préinstallé. Pour la résoudre :
- Ouvrez l’onglet Journaux dans la page de détails de l’application.
- Recherchez le nom du module manquant dans les journaux de génération ou d’exécution.
- Ajoutez le package correspondant à
requirements.txt(oupyproject.toml) et redéployez.
Un nouveau déploiement remplace uniquement le déploiement en cours d’exécution si le processus d’application reste en cours d’exécution pendant les premières secondes après le démarrage. Un déploiement avec désactivation qui échoue immédiatement en raison d’une importation manquante ne prend jamais le relais, et le trafic continue d’être dirigé vers le déploiement précédent, fonctionnel, le temps de corriger la liste des dépendances. La vérification de démarrage est superficielle. Testez donc que votre application répond réellement aux demandes après la désactivation plutôt que de s’appuyer sur la vérification pour intercepter les déploiements rompus.
Réactiver les bibliothèques préinstallées
Pour revenir aux bibliothèques préinstallées après la désactivation :
- Dans la page des détails de l’application, cliquez sur Modifier.
- Dans l’étape Configure, cochez la case Utiliser les bibliothèques Python préinstallées.
- Cliquez sur Enregistrer.
- Déployez à nouveau votre application à partir de l’onglet Déploiements . Ce nouveau déploiement s’appuie sur l’image de base avec les bibliothèques préinstallées.
Vos requirements.txt et pyproject.toml continuent de s’appliquer ; toutes les déclarations explicites que vous avez ajoutées pendant que vous aviez choisi de ne pas participer sont donc conservées.
Note
La conversion d’une application horizontalement mise à l’échelle vers une application standard restaure également les bibliothèques préinstallées : l’application standard est reconstruite avec elles, que vous ayez refusé ou non. Si vous convertissez ultérieurement l’application en mise à l’échelle horizontalement, elle inclut les bibliothèques préinstallées jusqu’à ce que vous vous désinscrire.