Fürthatókörű init szkriptek
A fürt hatókörű init-szkriptjei a fürtkonfigurációban definiált init szkriptek. A fürt hatókörű init-szkriptjei a létrehozott fürtökre és a feladatok futtatásához létrehozott fürtökre is érvényesek.
A fürt hatókörű init-szkriptjeit a felhasználói felületen, a parancssori felületen és a Clusters API meghívásával konfigurálhatja. Ez a szakasz ezeknek a feladatoknak a felhasználói felületen történő végrehajtására összpontosít. A többi metódust a Databricks CLI és a Clusters API ismerteti.
Tetszőleges számú szkriptet adhat hozzá, és a szkriptek egymás után, a megadott sorrendben lesznek végrehajtva.
Ha egy fürt hatókörű init-szkript nem nulla kilépési kódot ad vissza, a fürt indítása meghiúsul. A fürt hatókörű init-szkriptjeinek hibaelhárításához konfigurálhatja a fürtnaplók kézbesítését , és megvizsgálhatja az init szkriptnaplót. Lásd: Init-szkriptnaplózás.
Fürt hatókörű init-szkript konfigurálása a felhasználói felületen
Ez a szakasz az Azure Databricks felhasználói felületén futó init-szkript futtatására konfigurálja a fürtöket.
A Databricks azt javasolja, hogy az összes init-szkriptet fürthatókörű init-szkriptekként kezelje. Ha megosztott vagy egyfelhasználós hozzáférési móddal használja a számítást, tárolja az init szkripteket Unity Catalog-kötetekben. Ha a számítást elkülönítés nélküli megosztott hozzáférési móddal használja, használjon munkaterületfájlokat init-szkriptekhez.
Megosztott hozzáférési mód esetén init-szkripteket kell hozzáadnia a allowlist
. Lásd: Allowlist-kódtárak és init-szkriptek megosztott számításon.
Ha a felhasználói felületet egy fürt init-szkript futtatására való konfigurálásához szeretné használni, hajtsa végre az alábbi lépéseket:
- A fürtkonfigurációs lapon kattintson a Speciális beállítások váltógombra.
- A lap alján kattintson az Init Scripts fülre .
- A Forrás legördülő listában válassza ki a Munkaterület, a Kötet vagy az ABFSS forrástípust.
- Adja meg az init szkript elérési útját, például az alábbi példák egyikét:
- A munkaterület fájljaiban tárolt init-szkript esetén:
/Workspace/<path-to-script>/<script-name>.sh
- Unity Catalog-kötetekkel tárolt init-szkript esetén:
/Volumes/<catalog>/<schema>/<volume>/<path-to-script>/<script-name>.sh
- Objektumtárolóval tárolt init szkript esetén:
abfss://container-name@storage-account-name.dfs.core.windows.net/path/to/init-script
- A munkaterület fájljaiban tárolt init-szkript esetén:
- Kattintson a Hozzáadás gombra.
Egyfelhasználós hozzáférési módban a rendszer a hozzárendelt tag (felhasználó vagy szolgáltatásnév) identitását használja.
Megosztott hozzáférési módban a rendszer a fürttulajdonos identitását használja.
Feljegyzés
Az elkülönítés nélküli megosztott hozzáférési mód nem támogatja a köteteket, de ugyanazt az identitás-hozzárendelést használja, mint a megosztott hozzáférési mód.
Ha el szeretne távolítani egy szkriptet a fürtkonfigurációból, kattintson a szkript jobb oldalán található kuka ikonra. Amikor megerősíti a törlést, a rendszer kérni fogja a fürt újraindítását. Ha szeretné, törölheti a szkriptfájlt abból a helyről, ahová feltöltötte.
Feljegyzés
Ha init szkriptet konfigurál az ABFSS-forrástípussal , hozzáférési hitelesítő adatokat kell konfigurálnia.
A Databricks a Microsoft Entra ID szolgáltatásnevek használatát javasolja az Azure Data Lake Storage Gen2-ben tárolt init-szkriptekhez való hozzáférés kezeléséhez. A beállítás elvégzéséhez használja a következő csatolt dokumentációt:
Hozzon létre egy egyszerű szolgáltatást olvasási és listaengedélyekkel a kívánt blobokon. Lásd: Access Storage szolgáltatásnévvel > Microsoft Entra ID (Azure Active Directory).
Mentse a hitelesítő adatait titkos kulcsok használatával. Lásd: Titkos kódok kezelése.
Állítsa be a tulajdonságokat a Spark-konfigurációban és a környezeti változókban fürt létrehozásakor, ahogyan az alábbi példában látható:
Spark-konfiguráció:
spark.hadoop.fs.azure.account.auth.type.<storage-account>.dfs.core.windows.net OAuth spark.hadoop.fs.azure.account.oauth.provider.type.<storage-account>.dfs.core.windows.net org.apache.hadoop.fs.azurebfs.oauth2.ClientCredsTokenProvider spark.hadoop.fs.azure.account.oauth2.client.id.<storage-account>.dfs.core.windows.net <application-id> spark.hadoop.fs.azure.account.oauth2.client.secret.<storage-account>.dfs.core.windows.net {{secrets/<secret-scope>/<service-credential-key>}} spark.hadoop.fs.azure.account.oauth2.client.endpoint.<storage-account>.dfs.core.windows.net https://login.microsoftonline.com/<tenant-id>/oauth2/token
Környezeti változók:
SERVICE_CREDENTIAL={{secrets/<secret-scope>/<service-credential-key>}}
(Nem kötelező) Init-szkriptek újrabontása az azcopy vagy az Azure CLI használatával.
Hivatkozhat a fürtkonfiguráció során beállított környezeti változókra az init-szkripteken belül, hogy átadja az ellenőrzés titkos kulcsaként tárolt hitelesítő adatokat.
Figyelmeztetés
A DBFS fürthatókörű init-szkriptjei életciklusuk végéhez kötöttek. A felhasználói felületen található DBFS-beállítás bizonyos munkaterületeken létezik az örökölt számítási feladatok támogatásához, és nem ajánlott. A DBFS-ben tárolt összes init-szkriptet át kell telepíteni. A migrálási utasításokért lásd : Init-szkriptek migrálása a DBFS-ből.
Fürt hatókörű init-szkriptjeinek hibaelhárítása
- A szkriptnek a konfigurált helyen kell léteznie. Ha a szkript nem létezik, a fürt indítása vagy a végrehajtók vertikális felskálázása sikertelenséget eredményez.
- Az init szkript nem lehet nagyobb 64 KB-nál. Ha egy szkript túllépi ezt a méretet, a fürt nem indul el, és hibaüzenet jelenik meg a fürtnaplóban.