Azure Databricks 웹 터미널에서 셸 명령 실행
Azure Databricks 웹 터미널은 Databricks CLI 명령을 비롯한 CLI(명령줄 인터페이스)에서 셸 명령을 실행하여 프로그래밍 방식으로 Databricks 개체에 대한 작업을 수행하는 편리하고 대화형 방법을 제공합니다. 이 기능은 기존 UI(사용자 인터페이스)가 완전히 지원하지 않을 수 있는 여러 파일에 대한 일괄 처리 작업과 같은 고급 사용 사례에 특히 유용합니다.
여러 사용자가 하나의 컴퓨팅에서 웹 터미널을 사용할 수 있습니다.
웹 터미널을 사용하여 다음을 수행할 수 있습니다.
- Vim 또는 Emacs를 사용하여 빠른 파일을 편집합니다.
- (클러스터 사용량) 또는
htop
(GPU 사용량) 같은nvidia-smi
명령을 사용하여 리소스 사용량을 모니터링합니다. - Spark가 아닌 Python 스크립트를 실행합니다.
- 와 같은
mv
mkdir
셸 명령을 사용하여 파일 작업을 실행합니다. - 컴퓨팅에서 라이브러리를 설치하고 관리합니다.
- Databricks CLI를 사용하여 Azure Databricks의 다양한 측면을 자동화합니다.
요구 사항
Warning
Azure Databricks는 컴퓨팅의 Spark 드라이버에 포트 7681에서 웹 터미널 서비스를 프록시합니다. 이 웹 프록시는 웹 터미널에서만 사용할 수 있습니다. 컴퓨팅이 시작될 때 포트가 사용되거나 충돌하는 경우 웹 터미널이 예상대로 작동하지 않을 수 있습니다. 포트 7681에서 다른 웹 서비스가 시작되면 컴퓨팅 사용자가 잠재적인 보안 악용에 노출될 수 있습니다. Databricks와 Microsoft는 컴퓨팅에 지원되지 않는 소프트웨어를 설치하여 발생하는 문제에 대해 책임을 지지 않습니다.
- 웹 터미널은 모든 작업 영역 사용자에 대해 기본적으로 사용하지 않도록 설정되어 있습니다. 사용하도록 설정하려면 웹 터미널 사용을 참조 하세요.
- 컴퓨팅에 대한 CAN ATTACH TO 권한입니다.
- 컴퓨팅은 단일 사용자 또는 격리 공유 없음의 액세스 모드를 사용해야 합니다. Databricks Runtime 15.1 이상에서는 공유으로 설정된 액세스 모드도 지원됩니다.
웹 터미널 시작
컴퓨팅 세부 정보 페이지 또는 Notebook에서 웹 터미널을 시작할 수 있습니다.
전자 필기장에서
Notebook에서 웹 터미널을 시작하려면 다음을 수행합니다.
- 컴퓨팅에 Notebook을 연결합니다.
- 전자 필기장의 오른쪽 사이드바 아래쪽에서 아래쪽 패널Open bottom panel in notebook 열기 아이콘을 클릭합니다.
- 또는 연결된 컴퓨팅 드롭다운을 클릭하고 연결된 컴퓨팅을 마우스로 가리킨 다음 웹 터미널을 클릭합니다.
웹 터미널이 화면 아래쪽의 패널에서 열립니다. 패널의 오른쪽 위에 있는 단추를 사용하여 다음을 수행할 수 있습니다.
- 새 탭
에서 새 터미널 세션을 엽니다.
- 터미널 세션을
다시 로드합니다.
- 아래쪽 패널
을 닫습니다. 패널을 다시 열려면 오른쪽 사이드바 아래쪽을 클릭합니다
.
컴퓨팅 세부 정보 페이지에서
컴퓨팅 세부 정보 페이지에서 웹 터미널을 시작하려면 다음을 수행합니다.
- 작업 영역의 사이드바에서 컴퓨팅을 클릭합니다.
- 다목적 컴퓨팅 탭에서 컴퓨팅의 이름을 클릭합니다.
- 시작을 클릭하여 컴퓨팅을 시작합니다.
- 앱 탭에서 웹 터미널을 클릭합니다.
웹 터미널 UI 및 Bash 프롬프트와 함께 새 탭이 열립니다.
웹 터미널 사용
웹 터미널에서 컴퓨팅 드라이버 노드의 컨테이너 내 루트에서 명령을 실행할 수 있습니다.
각 사용자는 최대 100개의 활성 웹 터미널 세션(탭)을 열 수 있습니다. 유휴 웹 터미널 세션이 시간 초과될 수 있으며 웹 터미널 웹 애플리케이션이 다시 연결되어 새로운 셸 프로세스가 생성됩니다. Bash 세션을 유지하려는 경우 Databricks는 tmux 사용을 권장합니다.
Databricks CLI 명령 실행
웹 터미널을 사용하여 Databricks CLI 명령을 실행할 수도 있습니다. 사용 가능한 CLI는 항상 최신 버전이며 인증은 현재 사용자를 기반으로 합니다. 컴퓨팅은 다음 요구 사항을 충족해야 합니다.
- 클러스터에 Databricks Runtime 15.0 이상이 설치되어 있어야 합니다.
- Private Link에 작업 영역을 사용하도록 설정하면 안 됩니다.
웹 터미널을 시작하고 다음 명령을 실행하여 현재 사용자에 대한 정보를 출력합니다.
databricks current-user me
번들 명령도 사용할 수 있으므로 Databricks 작업 영역 내의 웹 터미널에서 직접 Databricks 자산 번들을 만들고 관리할 수 있습니다. 예를 들어 기본 템플릿을 사용하여 간단한 번들을 만들고 배포하고 실행하려면 다음을 수행합니다.
웹 터미널 루트에서 작업 영역 홈으로 이동하여 다음을 실행
bundle init
합니다.cd /Workspace/Users/someone@example.com databricks bundle init
기본 템플릿 프롬프트에 동의한 다음 번들 디렉터리로 변경하고 배포합니다.
cd my_project databricks bundle deploy
Databricks 작업 영역 UI에서 배포된
my_project
번들을 볼 수 있습니다.마지막으로 번들에서 기본 작업을 실행합니다.
databricks bundle run my_project_job
작업 실행으로 이동하여 실행 중인 작업을 확인합니다.
웹 터미널 구성
.bashrc 구성 파일을 사용하여 웹 터미널에 대한 영구 구성을 설정할 수 있습니다.
Databricks는 작업 영역 파일 시스템의 홈 폴더에서 .bashrc 파일을 자동으로 읽어들입니다. 이러한 파일의 설정은 새 터미널 세션을 시작할 때마다 자동으로 활성화됩니다.
웹 터미널 환경을 위해 다른 파일(예: .zshrc)을 포함하려면, .bashrc 파일에서 이를 실행하여 구성을 영구적으로 유지합니다.
텍스트 편집기를 사용하여 구성할 수 있는 모든 구성 파일을 작업 영역 폴더에 저장합니다.
제한 사항
Azure Databricks는 웹 터미널에서 Spark 작업 실행을 지원하지 않습니다.
Azure Databricks 웹 터미널은 다음 컴퓨팅 유형에서 사용할 수 없습니다.
- 작업 컴퓨팅
- 서버리스 컴퓨팅
-
DISABLE_WEB_TERMINAL=true
환경 변수가 설정된 상태로 컴퓨팅이 시작되었습니다. 액세스 모드 Databricks Runtime에서 공유 15.1 미만으로설정하여 시작된 컴퓨팅입니다. 웹 터미널은 Databricks Runtime 15.1 이상의 공유 컴퓨팅에서 사용할 수 있습니다. - Spark 구성
spark.databricks.pyspark.enableProcessIsolation
가true
로 설정되어 컴퓨팅이 시작되었습니다.
초기 페이지 로드 이후 12시간의 하드 제한이 있으며, 그 후에는 활성 상태인 경우에도 모든 연결이 종료됩니다. 웹 터미널을 새로 고쳐 다시 연결할 수 있습니다. Databricks는 tmux를 사용하여 셸 세션을 유지하는 것이 좋습니다.
ARM 컴퓨팅 리소스는 웹 터미널을 사용하여 Git 폴더의 파일을 포함하여 작업 영역 파일에 액세스할 수 없습니다.
Docker Container Services를 사용하도록 설정하면 웹 터미널이 사용하지 않도록 설정됩니다.