O que são init script?
Um init script (script de inicialização) é um script de shell que é executado durante startup de cada nó do cluster antes de o driver do Apache Spark ou o executor JVM começar. Este artigo fornece recomendações para informações de script de inicialização e configuração, caso o senhor precise usá-las.
Recomendações para init script
A Databricks recomenda o uso do recurso de plataforma integrada em vez do script de inicialização sempre que possível. O uso generalizado do script de inicialização pode retardar a migração para novas versões do Databricks Runtime e impedir a adoção de algumas otimizações do Databricks.
Importante
Se precisar migrar do init script no DBFS, consulte Migrar init script do DBFS.
Por exemplo, o site Databricks recomenda o uso de políticas compute para definir propriedades do sistema, variáveis ambientais e parâmetros de configuração Spark. Consulte a referência de políticacompute .
Se o senhor precisar usar o script de inicialização:
Gerenciar o script de inicialização usando políticas compute ou script de inicialização com escopo de clusters em vez de script de inicialização global. Consulte init script types.
Gerenciar a instalação de bibliotecas para ambientes de produção e interativos usando as políticas do site compute. Não instale o biblioteca usando o script de inicialização.
Use o modo de acesso compartilhado para todas as cargas de trabalho. Use o modo de acesso de usuário único somente se a funcionalidade necessária não for compatível com o modo de acesso compartilhado.
Use as novas versões do Databricks Runtime e o Unity Catalog para todas as cargas de trabalho.
A tabela a seguir fornece recomendações organizadas por versão do Databricks Runtime e habilitação do Unity Catalog.
Ambiente |
Recomendação |
---|---|
Databricks Runtime 13.3 LTS e acima com Unity Catalog. |
Armazene o script de inicialização em Unity Catalog volumes. |
Cargas de trabalho sem o Unity Catalog em que init script não faz referência a outros arquivos. |
Armazenar o script de inicialização como arquivos de espaço de trabalho. (O limite de tamanho do arquivo é de 500 MB). |
Cargas de trabalho sem o Unity Catalog em que init script faz referência a outros arquivos, como biblioteca, arquivos de configuração ou scripts de shell. |
Armazene init script usando armazenamento de objetosclouds . |
Quais tipos de init script o Databricks oferece suporte?
O Databricks oferece suporte a dois tipos de script de inicialização: com escopo de clusters e global, mas recomenda-se o uso de script de inicialização com escopo de clusters.
Com escopo de cluster: execução em cada cluster configurado com o script. Esta é a maneira recomendada de executar um init script. Consulte Usar init scriptcom escopo definido clusters.
Global: execução em todos os clusters do site workspace configurados com modo de acesso de usuário único ou modo de acesso compartilhado sem isolamento. Esses scripts de inicialização podem causar problemas inesperados, como conflitos de biblioteca. Somente os usuários administradores do workspace podem criar um script de inicialização global. Consulte Usar script de inicialização global.
Sempre que você alterar qualquer tipo de init script, deverá reiniciar todos os clusters afetados pelo script.
Execução do script de inicialização global antes do script de inicialização com escopo de clusters.
Onde o script de inicialização pode ser instalado?
O senhor pode armazenar e configurar o script de inicialização a partir de arquivos workspace, volumes Unity Catalog e armazenamento de objetos cloud, mas o script de inicialização não é compatível com todas as configurações cluster e nem todos os arquivos podem ser referenciados a partir do script de inicialização. Para obter recomendações de ambiente para o script de inicialização, consulte Recomendações para o script de inicialização.
A tabela a seguir indica o suporte ao script de inicialização com base no local de origem e no modo de acesso aos clusters. A versão do Databricks Runtime listada é a versão mínima necessária para usar a combinação. Para obter informações sobre os modos de acesso aos clusters, consulte Modos de acesso.
Observação
O modo de acesso compartilhado exige que um administrador adicione o script de inicialização a um allowlist
. Consulte a biblioteca Allowlist e o script de inicialização em computecompartilhado.
Modo de acesso compartilhado |
Modo de acesso único |
Modo de acesso compartilhado sem isolamento |
|
---|---|---|---|
workspace arquivos |
Não suportado |
Todas as versões suportadas do Databricks Runtime. Nas versões abaixo 11.3 LTS, o script de inicialização que faz referência a outros arquivos workspace não é compatível. |
Todas as versões suportadas do Databricks Runtime. |
Volumes |
13.3 LTS e acima |
13.3 LTS e acima |
Não suportado |
armazenamento em nuvens |
13.3 LTS e acima |
Todas as versões suportadas do Databricks Runtime |
Todas as versões suportadas do Databricks Runtime |
Migrar init script do DBFS
Aviso
O script init em DBFS chegou ao fim da vida útil e não pode mais ser usado. O senhor deve migrar seu script de inicialização para um local compatível antes de começar compute. Armazene o script de inicialização em Unity Catalog Volumes, como arquivos workspace ou no armazenamento de objetos cloud.
Os usuários que precisam migrar init script do DBFS podem usar o guia a seguir. Certifique-se de ter identificado o destino correto para sua configuração. Consulte Recomendações para init script.