Ustawianie i używanie zmiennych środowiskowych za pomocą skryptów init

Skrypty inicjowania mają dostęp do wszystkich zmiennych środowiskowych znajdujących się w klastrze. Usługa Azure Databricks ustawia wiele zmiennych domyślnych, które mogą być przydatne w logice skryptu inicjowania.

Zmienne środowiskowe ustawione w konfiguracji platformy Spark są dostępne do inicjowania skryptów. Zobacz Zmienne środowiskowe.

Jakie zmienne środowiskowe są domyślnie widoczne dla skryptu init?

Skrypty inicjowania o zakresie klastra i globalne obsługują następujące zmienne środowiskowe:

  • DB_CLUSTER_ID: identyfikator klastra, na którym jest uruchomiony skrypt. Zobacz interfejs API klastrów.
  • DB_CONTAINER_IP: prywatny adres IP kontenera, w którym działa platforma Spark. Skrypt inicjowania jest uruchamiany wewnątrz tego kontenera. Zobacz interfejs API klastrów.
  • DB_IS_DRIVER: czy skrypt jest uruchomiony w węźle sterownika.
  • DB_DRIVER_IP: adres IP węzła sterownika.
  • DB_INSTANCE_TYPE: typ wystąpienia maszyny wirtualnej hosta.
  • DB_CLUSTER_NAME: nazwa klastra, na który jest wykonywany skrypt.
  • DB_IS_JOB_CLUSTER: czy klaster został utworzony w celu uruchomienia zadania. Zobacz Tworzenie zadania.

Jeśli na przykład chcesz uruchomić część skryptu tylko w węźle sterownika, możesz napisać skrypt, taki jak:

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>

Używanie wpisów tajnych w skryptach inicjowania

Podczas odwołuje się do wpisu tajnego można użyć dowolnej prawidłowej nazwy zmiennej. Dostęp do wpisów tajnych, do których odwołuje się zmienna środowiskowa, jest określany przez uprawnienia użytkownika, który skonfigurował klaster. Wpisy tajne przechowywane w zmiennych środowiskowych są dostępne dla wszystkich użytkowników klastra, ale są redacted z wyświetlania w postaci zwykłego tekstu.

Zobacz Odwołanie do wpisu tajnego w zmiennej środowiskowej.