Wat zijn init-scripts?
Een init-script (initialisatiescript) is een shellscript dat wordt uitgevoerd tijdens het opstarten van elk clusterknooppunt voordat het Apache Spark-stuurprogramma of de uitvoerprogramma-JVM wordt gestart. Dit artikel bevat aanbevelingen voor init-scripts en configuratiegegevens als u deze moet gebruiken.
Aanbevelingen voor init-scripts
Databricks raadt het gebruik van ingebouwde platformfuncties aan in plaats van init-scripts waar mogelijk. Wijdverspreid gebruik van init-scripts kan de migratie naar nieuwe Databricks Runtime-versies vertragen en de acceptatie van sommige Databricks-optimalisaties voorkomen.
Belangrijk
Als u wilt migreren van init-scripts op DBFS, raadpleegt u Init-scripts migreren vanuit DBFS.
De volgende Databricks-functies hebben betrekking op enkele veelvoorkomende gebruiksvoorbeelden voor init-scripts:
- Gebruik rekenbeleid om systeemeigenschappen, omgevingsvariabelen en Spark-configuratieparameters in te stellen. Zie Naslaginformatie over rekenbeleid.
- Voeg bibliotheken toe aan clusterbeleid. Zie Bibliotheken toevoegen aan een beleid.
Als u init-scripts moet gebruiken:
- Init-scripts beheren met behulp van rekenbeleid of init-scripts met clusterbereik in plaats van globale init-scripts. Zie init-scripttypen.
- Bibliotheekinstallatie beheren voor productieomgevingen en interactieve omgevingen met behulp van rekenbeleid. Installeer geen bibliotheken met behulp van init-scripts.
- Gebruik de modus voor gedeelde toegang voor alle workloads. Gebruik alleen de modus voor toegang van één gebruiker als de vereiste functionaliteit niet wordt ondersteund door de modus voor gedeelde toegang.
- Gebruik nieuwe Databricks Runtime-versies en Unity Catalog voor alle workloads.
De volgende tabel bevat aanbevelingen die zijn georganiseerd door de Databricks Runtime-versie en de activering van Unity Catalog.
Omgeving | Aanbeveling |
---|---|
Databricks Runtime 13.3 LTS en hoger met Unity Catalog | Init-scripts opslaan in Unity Catalog-volumes. |
Databricks Runtime 11.3 LTS en hoger zonder Unity Catalog | Init-scripts opslaan als werkruimtebestanden. (De maximale bestandsgrootte is 500 MB). |
Databricks Runtime 10.4 LTS en lager | Sla init-scripts op met behulp van cloudobjectopslag. |
Welke typen init-scripts worden door Azure Databricks ondersteund?
Azure Databricks ondersteunt twee soorten init-scripts: clusterbereik en globaal, maar het gebruik van init-scripts met clusterbereik wordt aanbevolen.
- Clusterbereik: wordt uitgevoerd op elk cluster dat is geconfigureerd met het script. Dit is de aanbevolen manier om een init-script uit te voeren. Zie Init-scripts met clusterbereik gebruiken.
- Globaal: worden uitgevoerd op alle clusters in de werkruimte die zijn geconfigureerd met de modus voor toegang van één gebruiker of de modus voor gedeelde toegang zonder isolatie. Deze init-scripts kunnen onverwachte problemen veroorzaken, zoals bibliotheekconflicten. Alleen gebruikers van werkruimtebeheerders kunnen globale init-scripts maken. Zie Algemene init-scripts gebruiken.
Wanneer u een type init-script wijzigt, moet u alle clusters die worden beïnvloed door het script opnieuw opstarten.
Globale init-scripts worden uitgevoerd vóór init-scripts met clusterbereik.
Belangrijk
Verouderde globale en verouderde init-scripts met de naam van een cluster worden uitgevoerd vóór andere init-scripts. Deze init-scripts zijn het einde van de levensduur, maar zijn mogelijk aanwezig in werkruimten die vóór 21 februari 2023 zijn gemaakt. Zie Init-scripts met de naam Cluster (verouderd) en Global init-scripts (verouderd).
Waar kunnen init-scripts worden geïnstalleerd?
U kunt init-scripts opslaan en configureren vanuit werkruimtebestanden, Unity Catalog-volumes en opslag van cloudobjecten, maar init-scripts worden niet ondersteund in alle clusterconfiguraties en niet naar alle bestanden kan worden verwezen vanuit init-scripts. Zie Aanbevelingen voor init-scripts voor omgevingsaan aanbevelingen voor init-scripts.
De volgende tabel geeft de ondersteuning voor init-scripts aan op basis van de bronlocatie en de clustertoegangsmodus. De vermelde Databricks Runtime-versie is de minimale versie die is vereist om de combinatie te gebruiken. Zie Access-modi voor meer informatie over clustertoegangsmodi.
Notitie
Voor de modus voor gedeelde toegang moet een beheerder init-scripts toevoegen aan een allowlist
. Zie Allowlist-bibliotheken en init-scripts voor gedeelde berekeningen.
Modus voor gedeelde toegang | Modus voor één toegang | Modus voor gedeelde toegang zonder isolatie | |
---|---|---|---|
Werkruimtebestanden | Niet ondersteund | Alle ondersteunde Databricks Runtime-versies. Op versies onder 11.3 LTS worden init-scripts die verwijzen naar andere werkruimtebestanden niet ondersteund. |
Alle ondersteunde Databricks Runtime-versies. |
Volumes | 13.3 LTS en hoger | 13.3 LTS en hoger | Niet ondersteund |
Cloudopslag | 13.3 LTS en hoger | Alle ondersteunde Databricks Runtime-versies | Alle ondersteunde Databricks Runtime-versies |
Init-scripts migreren vanuit DBFS
Waarschuwing
Init-scripts op DBFS hebben het einde van de levensduur bereikt en kunnen niet meer worden gebruikt. U moet uw init-scripts migreren naar een ondersteunde locatie voordat u de berekening kunt starten. Sla init-scripts op unity-catalogusvolumes, als werkruimtebestanden of in de opslag van cloudobjecten op.
Gebruikers die init-scripts moeten migreren vanuit DBFS, kunnen de volgende handleidingen gebruiken. Zorg ervoor dat u het juiste doel voor uw configuratie hebt geïdentificeerd. Zie Aanbevelingen voor init-scripts.