다음을 통해 공유


Azure Batch의 파일 및 디렉터리

Azure Batch에서 각 작업에는 파일 및 디렉터리를 만들 수 있는 작업 디렉터리가 있습니다. 이 작업 디렉터리를 사용하여 태스크에서 실행하는 프로그램, 작업에서 처리하는 데이터 및 수행하는 처리의 출력을 저장할 수 있습니다. 태스크의 모든 파일 및 디렉터리를 작업 사용자가 소유합니다.

Batch 서비스는 노드에서 파일 시스템의 일부를 루트 디렉터리로 노출합니다. 이 루트 디렉터리가 OS 드라이브가 아닌 VM의 임시 스토리지 드라이브에 있습니다.

태스크는 환경 변수를 참조하여 AZ_BATCH_NODE_ROOT_DIR 루트 디렉터리에 액세스할 수 있습니다. 환경 변수 사용에 대한 자세한 내용은 작업에 대한 환경 설정을 참조하세요.

루트 디렉터리 구조

루트 디렉터리에는 다음 디렉터리 구조가 포함됩니다.

컴퓨팅 노드 디렉터리 구조의 스크린샷.

  • 애플리케이션: 컴퓨팅 노드에 설치된 애플리케이션 패키지의 세부 정보에 대한 정보를 포함합니다. 태스크는 환경 변수를 참조하여 AZ_BATCH_APP_PACKAGE 이 디렉터리에 액세스할 수 있습니다.

  • fsmounts: 디렉터리에는 컴퓨팅 노드에 탑재된 모든 파일 시스템이 포함됩니다. 태스크는 환경 변수를 참조하여 AZ_BATCH_NODE_MOUNTS_DIR 이 디렉터리에 액세스할 수 있습니다. 자세한 내용은 Batch 풀에 가상 파일 시스템 탑재를 참조하세요.

  • 공유: 이 디렉터리에서는 노드에서 실행되는 모든 작업에 대한 읽기/쓰기 권한을 제공합니다. 노드에서 실행되는 모든 작업은 이 디렉터리에서 파일을 만들고, 읽고, 업데이트하고, 삭제할 수 있습니다. 태스크는 환경 변수를 참조하여 AZ_BATCH_NODE_SHARED_DIR 이 디렉터리에 액세스할 수 있습니다.

  • startup: 이 디렉터리가 시작 태스크에서 작업 디렉터리로 사용됩니다. 시작 태스크에 의해 노드에 다운로드되는 모든 파일이 여기에 저장됩니다. 시작 작업은 이 디렉터리 아래에서 파일을 만들고, 읽고, 업데이트하고, 삭제할 수 있습니다. 태스크는 환경 변수를 참조하여 AZ_BATCH_NODE_STARTUP_DIR 이 디렉터리에 액세스할 수 있습니다.

  • volatile: 이 디렉터리 내부용입니다. 이 디렉터리의 파일이나 디렉터리 자체가 나중에 존재할 것이라는 보장은 없습니다.

  • workitems: 이 디렉터리에는 컴퓨팅 노드의 작업 및 해당 작업에 대한 디렉터리가 포함됩니다.

    작업 영역 디렉터리 내에서 노드에서 실행되는 각 태스크에 대해 작업 디렉터리가 만들어집니다. 환경 변수를 참조하여 AZ_BATCH_TASK_DIR 이 디렉터리에 액세스할 수 있습니다.

    작업 디렉터리 내에서 Batch 서비스는 환경 변수에 의해 wd 고유한 경로가 지정된 작업 디렉터리(AZ_BATCH_TASK_WORKING_DIR)를 만듭니다. 이 디렉터리에서는 작업에 대한 읽기/쓰기 권한을 제공합니다. 작업은 이 디렉터리에서 파일을 만들고, 읽고, 업데이트하고, 삭제할 수 있습니다. 이 디렉터리가 작업에 대해 지정된 RetentionTime 제약 조건에 따라 유지됩니다.

    stdout.txt 파일과 stderr.txt 파일은 작업을 실행하는 동안 작업 폴더에 기록됩니다.

중요합니다

노드가 풀에서 제거되면 노드에 저장된 모든 파일이 제거됩니다.

Batch 루트 디렉터리 위치

컴퓨팅 노드 환경 변수의 AZ_BATCH_NODE_ROOT_DIR 값은 VM 크기 및 로컬 임시 디스크의 존재에 따라 결정됩니다.

로컬 임시 디스크가 있음 운영 체제 유형 AZ_BATCH_NODE_ROOT_DIR
아니오 리눅스 /opt/batch/data
리눅스 /mnt/batch 또는 /mnt/resource/batch
아니오 윈도우즈 C:\batch\data
윈도우즈 D:\batch

이러한 환경 변수 값은 구현 세부 정보이며 변경할 수 없는 것으로 간주해서는 안 됩니다. 이러한 값은 언제든지 변경될 수 있으므로 값을 하드 코딩하는 대신 환경 변수를 사용하는 것이 좋습니다.

다음 단계