Establecimiento y uso de variables de entorno con scripts de inicialización

Los scripts de inicialización tienen acceso a todas las variables de entorno presentes en un clúster.

Variables de entorno predeterminadas

Azure Databricks establece muchas variables predeterminadas que pueden ser útiles en la lógica del script de inicialización. Los scripts de inicialización globales y de ámbito de clúster admiten las siguientes variables de entorno:

  • DB_CLUSTER_ID: id. del clúster en el que se ejecuta el script. Consulte la API de clústeres.
  • DB_CONTAINER_IP: dirección IP privada del contenedor en el que se ejecuta Spark. El script de inicialización se ejecuta dentro de este contenedor. Consulte la API de clústeres.
  • DB_IS_DRIVER: indica si el script se ejecuta en un nodo de controlador.
  • DB_DRIVER_IP: dirección IP del nodo de controlador.
  • DB_INSTANCE_TYPE: tipo de instancia de la máquina virtual del host.
  • DB_CLUSTER_NAME: nombre del clúster en el que se ejecuta el script.
  • DB_IS_JOB_CLUSTER: indica si el clúster se creó para ejecutar un trabajo. Consulte Configurar cómputo para tareas.

No puede invalidar estas variables de entorno predefinidas.

Establecimiento de variables de entorno personalizadas

Las variables de entorno personalizadas a las que puede acceder desde scripts de inicialización que se ejecutan en el recurso de proceso se pueden establecer en la configuración de Spark. Consulte Variables de entorno.

También es posible establecer variables de entorno mediante el campo spark_env_vars de la API de creación de clústeres o la API de actualización de clústeres.

Usar variables de entorno

En el ejemplo siguiente se usa una variable de entorno predeterminada para ejecutar parte de un script solo en un nodo de controlador:

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>

Secretos en scripts de inicialización

Puede usar cualquier nombre de variable válido al hacer referencia a un secreto. El acceso a los secretos a los que se hace referencia en las variables de entorno viene determinado por los permisos del usuario que configuró el clúster. Todos los usuarios del clúster pueden acceder a los secretos almacenados en las variables de entorno, pero están ocultos en la presentación en texto plano.

Consulte el documento Usar un secreto en una propiedad de configuración de Spark o en una variable de entorno.