init 스크립트를 사용하여 환경 변수 설정 및 사용

Init 스크립트는 클러스터에 있는 모든 환경 변수에 액세스할 수 있습니다. Azure Databricks는 init 스크립트 논리에 유용할 수 있는 많은 기본 변수를 설정합니다.

Spark 구성에 설정된 환경 변수는 스크립트를 초기화할 수 있습니다. 환경 변수를 참조하세요.

기본적으로 init 스크립트에 노출되는 환경 변수는 무엇인가요?

클러스터 범위 및 글로벌 init 스크립트는 다음 환경 변수를 지원합니다.

  • DB_CLUSTER_ID: 스크립트가 실행 중인 클러스터의 ID입니다. 클러스터 API를 참조하세요.
  • DB_CONTAINER_IP: Spark가 실행되는 컨테이너의 개인 IP 주소입니다. init 스크립트는 이 컨테이너 내에서 실행됩니다. 클러스터 API를 참조하세요.
  • DB_IS_DRIVER: 스크립트가 드라이버 노드에서 실행 중인지 여부입니다.
  • DB_DRIVER_IP: 드라이버 노드의 IP 주소입니다.
  • DB_INSTANCE_TYPE: 호스트 VM의 인스턴스 유형입니다.
  • DB_CLUSTER_NAME: 스크립트가 실행 중인 클러스터의 이름입니다.
  • DB_IS_JOB_CLUSTER: 작업을 실행하기 위해 클러스터를 만들었는지 여부입니다. 작업 만들기를 참조하세요.

예를 들어 드라이버 노드에서만 스크립트의 일부를 실행하려는 경우 스크립트를 다음과 같이 작성할 수 있습니다.

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>

init 스크립트에서 비밀 사용

비밀을 참조할 때 유효한 변수 이름을 사용할 수 있습니다. 환경 변수에서 참조되는 비밀에 대한 액세스는 클러스터를 구성한 사용자의 권한에 따라 결정됩니다. 환경 변수에 저장된 비밀은 클러스터의 모든 사용자가 액세스할 수 있지만 일반 텍스트 표시에서 수정됩니다.

환경 변수에서 비밀 참조를 참조하세요.