Référence de la configuration du Pool
Cet article décrit les paramètres disponibles lors de la création d'un pool à l'aide de l'interface utilisateur. Pour savoir comment utiliser la CLI Databricks pour créer un pool, consultez les commandes de la CLI Databricks. Pour savoir comment utiliser l'API REST pour créer un pool, consultez l'API des pools d'instances.
Si votre charge de travail prend en charge le calcul serverless, Databricks recommande d'utiliser le calcul serverless au lieu des pools pour tirer parti d'un compute évolutif et toujours disponible. Voir Se connecter au compute Serverless.
Taille du Pool
Lorsque vous créez un Pool, afin de contrôler sa taille, vous pouvez définir trois paramètres : instances inactives minimales, capacité maximale et arrêt automatique des instances inactives.
Nombre minimal d'instances inactives
Le nombre minimal d'instances que le Pool maintient inactives. Ces instances ne se terminent pas, quels que soient les paramètres d'arrêt automatique. Si un cluster consomme des instances inactives du pool, Databricks provisionne des instances supplémentaires pour maintenir le minimum.
Capacité maximale
Le nombre maximal d'instances que le Pool peut allouer. Si elle est définie, cette valeur contraint *toutes les instances* (inactives + utilisées). Si un cluster utilisant le Pool demande plus d'instances que ce nombre pendant l'autoscaling, la requête échoue avec une erreur INSTANCE_POOL_MAX_CAPACITY_FAILURE.
Cette configuration est *facultative*. Databricks recommande de définir une valeur uniquement dans les circonstances suivantes :
- Vous avez un quota d'instances que vous devez respecter.
- Vous voulez protéger un ensemble de travaux de l'impact sur un autre ensemble de travaux. Par exemple, supposez que votre quota d'instances soit de 100 et que vous ayez les équipes A et B qui doivent exécuter des jobs. Vous pouvez créer le pool A avec un maximum de 50 et le pool B avec un maximum de 50 afin que les deux équipes partagent équitablement le quota de 100.
- Vous devez plafonner les coûts.
Arrêt automatique des instances inactives
Le temps en minutes au-delà de la valeur définie dans Instances inactives minimales pendant lequel les instances peuvent rester inactives avant d'être arrêtées par le pool.
Types d'instances
Un pool se compose d'instances inactives maintenues prêtes pour de nouveaux clusters et d'instances utilisées par les clusters en cours d'exécution. Toutes ces instances sont du même type de fournisseur d'instances, sélectionné lors de la création d'un Pool.
Le type d'instance d'un Pool ne peut pas être modifié. Les clusters attachés à un pool utilisent le même type d'instance pour les nœuds driver et worker. Différentes familles de types d'instances conviennent à différents cas d'utilisation, tels que les charges de travail gourmandes en mémoire ou en compute.
Databricks fournit toujours un avis d'obsolescence d'un an avant de cesser la prise en charge d'un type d'instance.
Version préchargée de Databricks Runtime
Vous pouvez accélérer le démarrage des clusters en sélectionnant une version de Databricks Runtime à charger sur les instances inactives du pool. Si un utilisateur sélectionne ce runtime lorsqu'il crée un cluster soutenu par le pool, ce cluster se lancera encore plus rapidement qu'un cluster soutenu par le pool qui n'utilise pas une version préchargée de Databricks Runtime.
Définir cette option sur None ralentit les lancements de cluster, car cela provoque le download à la demande de la version de Databricks Runtime vers les instances inactives du Pool. Lorsque le cluster libère les instances du Pool, la version de Databricks Runtime reste mise en cache sur ces instances. La prochaine opération de création de cluster qui utilise la même version de Databricks Runtime pourrait bénéficier de ce comportement de mise en cache, mais ce n'est pas garanti.
Image Docker préchargée
Les images Docker sont prises en charge avec les pools si vous utilisez l'API de pools d'instances pour créer le pool. Consultez Utiliser Databricks Container Services avec un pool d'instances pour plus d'informations.
Tags de Pool
Les tags de Pool vous permettent de surveiller facilement le coût des ressources cloud utilisées par les différents groupes de votre organisation. Vous pouvez spécifier des tags sous forme de paires clé-valeur lorsque vous créez un Pool, et Databricks applique ces tags aux ressources cloud comme les machines virtuelles et les volumes de disque ainsi qu'aux rapports d'utilisation des DBU.
Par commodité, Databricks applique trois tags default à chaque Pool : Vendor,
DatabricksInstancePoolId et DatabricksInstancePoolCreatorId. Vous pouvez également ajouter des balises personnalisées lorsque vous créez un pool. Vous pouvez ajouter jusqu’à 43 tags personnalisés.
Tags personnalisés
Pour ajouter des tags supplémentaires au Pool, accédez à l'tab **Tabs** au bas de la page **Créer un Pool**. Cliquez sur le bouton + Add , puis saisissez la paire clé-valeur.
Les clusters basés sur un Pool héritent des tags default et personnalisés de la configuration du Pool. Pour des informations détaillées sur la façon dont les tags de Pool et les Cluster Tags fonctionnent ensemble, consultez Utiliser des tags pour attribuer et suivre l'utilisation.
Configurations AWS
Lorsque vous configurez les instances AWS d'un pool, vous pouvez choisir la zone de disponibilité (AZ), si vous souhaitez utiliser des instances spot et le prix spot maximal, ainsi que le type et la taille du volume EBS. Tous les clusters attachés au pool héritent de ces configurations.
Zones de disponibilité
Le choix d'une zone de disponibilité spécifique (AZ) pour un pool est utile principalement si votre organisation a acheté des instances réservées dans des zones de disponibilité spécifiques. Pour plus d'informations sur les AZ, consultez les zones de disponibilité AWS.
Auto-AZ avec des Pools
Si vous utilisez un type d'instance Fleet avec votre pool, vous pouvez sélectionner **auto** comme zone de disponibilité. Lorsque vous utilisez auto-AZ, la zone de disponibilité est sélectionnée automatiquement en fonction de la capacité disponible du fournisseur cloud. Le Pool sera déplacé vers la meilleure AZ juste avant chaque événement de montée en charge à partir de zéro, et restera fixé à une seule AZ tant que le Pool ne sera pas vide. Pour plus d'informations, consultez les types d'instances AWS Fleet.
Les clusters que vous attachez à un Pool héritent de la zone de disponibilité du Pool. Vous ne pouvez pas spécifier la zone de disponibilité pour les clusters individuels dans les Pools.
Instances Spot
Vous pouvez spécifier si vous voulez que le Pool utilise des instances Spot. Un pool peut être soit entièrement composé d'instances Spot, soit entièrement composé d'instances à la demande.
Vous pouvez également définir le prix spot maximum à utiliser lors du lancement d'instances spot. Ceci est défini en pourcentage du prix à la demande correspondant. Par default, Databricks définit le prix spot maximum à 100 % du prix à la demande. Consultez les tarifs spot AWS.
Volumes EBS
Databricks provisionne des volumes EBS pour chaque instance comme suit :
- Un volume racine d’instance EBS non chiffré de 30 Go, utilisé uniquement par le système d’exploitation hôte et les services internes de Databricks.
- Un volume racine de conteneur EBS chiffré de 150 Go utilisé par le Worker Spark. Ceci héberge les services Spark et les Logs.
- (HIPAA uniquement) un volume de Logs Worker EBS chiffré de 75 Go qui stocke les Logs des services internes de Databricks.
Ajouter des volumes de shuffle EBS
Pour ajouter des volumes de shuffle, sélectionnez SSD à usage général dans la liste déroulante Type de volume EBS .
By default, les sorties de shuffle Spark vont sur le disque local de l'instance. Pour les types d’instances qui ne disposent pas de disque local, ou si vous souhaitez augmenter votre espace de stockage de brassage Spark, vous pouvez spécifier des volumes EBS supplémentaires. Ceci est particulièrement utile pour éviter les erreurs d'espace disque insuffisant lorsque vous exécutez des Jobs Spark qui produisent de grandes sorties de brassage.
Databricks chiffre ces volumes EBS pour les instances à la demande et les instances Spot. En savoir plus sur les volumes AWS EBS.
Limites AWS EBS
Assurez-vous que vos limites AWS EBS sont suffisamment élevées pour satisfaire les exigences d'exécution de toutes les instances dans tous les Pools. Pour des informations sur les limites EBS par default et comment les modifier, consultez Amazon Elastic Block Store (EBS) Limits.
Dimensionnement automatique du stockage local
Si vous ne souhaitez pas allouer un nombre fixe de volumes EBS au moment de la création du Pool, utilisez le dimensionnement automatique du stockage local. Avec le dimensionnement automatique du stockage local, Databricks surveille la quantité d'espace disque disponible sur les workers Spark de votre Pool. Si un Worker commence à manquer d'espace disque, Databricks attache automatiquement un nouveau volume EBS au Worker avant qu'il ne soit à court d'espace disque. Les volumes EBS sont attachés jusqu'à une limite de 5 To d'espace disque total par instance (incluant le stockage local de l'instance).
Pour configurer le stockage à dimensionnement automatique, sélectionnez Activer le dimensionnement automatique du stockage local .
Les volumes EBS attachés à une instance ne sont détachés que lorsque l'instance est renvoyée à AWS. C'est-à-dire que les volumes EBS ne sont jamais détachés d'une instance tant qu'elle est dans le Pool. Pour réduire l'utilisation d'EBS, Databricks recommande de configurer la taille du Pool.
- Databricks utilise les volumes Amazon EBS GP3 pour étendre le stockage local d'une instance. La default AWS capacité limite pour ces volumes est de 50 TiB. Pour éviter d'atteindre cette limite, les administrateurs doivent demander une augmentation de cette limite en fonction de leurs besoins d'utilisation.
- Si vous souhaitez utiliser le stockage local à mise à l'échelle automatique, le rôle IAM ou les clés utilisés pour créer votre compte doivent inclure les autorisations
ec2:AttachVolume,ec2:CreateVolume,ec2:DeleteVolumeetec2:DescribeVolumes. Pour la liste complète des autorisations et les instructions sur la façon de mettre à jour votre rôle IAM ou vos clés existants, consultez Créer une configuration d'informations d'identification.