Definir e usar variáveis de ambiente com scripts init
Os scripts de inicialização têm acesso a todas as variáveis de ambiente presentes em um cluster. O Azure Databricks define muitas variáveis padrão que podem ser úteis na lógica de script de inicialização.
As variáveis de ambiente definidas na configuração do Spark estão disponíveis para scripts de inicialização. Consulte Variáveis de ambiente.
Quais variáveis de ambiente são expostas ao script init por padrão?
Os scripts de inicialização global e com escopo de cluster suportam as seguintes variáveis de ambiente:
DB_CLUSTER_ID
: a ID do cluster no qual o script está sendo executado. Consulte a API de Clusters.DB_CONTAINER_IP
: o endereço IP privado do contêiner no qual o Spark é executado. O script init é executado dentro deste contêiner. Consulte a API de Clusters.DB_IS_DRIVER
: se o script está sendo executado em um nó de driver.DB_DRIVER_IP
: o endereço IP do nó do driver.DB_INSTANCE_TYPE
: o tipo de instância da VM do host.DB_CLUSTER_NAME
: o nome do cluster no qual o script está sendo executado.DB_IS_JOB_CLUSTER
: se o cluster foi criado para executar um trabalho. Consulte Configurar computação para trabalhos.
Por exemplo, se você quiser executar parte de um script somente em um nó de driver, poderá escrever um script como:
echo $DB_IS_DRIVER
if [[ $DB_IS_DRIVER = "TRUE" ]]; then
<run this part only on driver>
else
<run this part only on workers>
fi
<run this part on both driver and workers>
Usar segredos em scripts init
Você pode usar qualquer nome de variável válido quando fizer referência a um segredo. O acesso a segredos referenciados em variáveis de ambiente é determinado pelas permissões do usuário que configurou o cluster. Os segredos armazenados em variáveis de ambiente são acessíveis por todos os usuários do cluster, mas são editados a partir da exibição de texto sem formatação.
Consulte Usar um segredo em uma propriedade de configuração do Spark ou variável de ambiente.