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:

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.

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 Alle ondersteunde Databricks Runtime-versies
Volumes 13.3 LTS 13.3 LTS Niet ondersteund
Cloudopslag 13.3 LTS 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.