BatchTaskCreateOptions interface
Azure Batch Task를 생성하는 매개변수.
속성
| affinity |
배치 서비스가 새로운 작업을 시작할 컴퓨트 노드를 선택하는 데 사용할 수 있는 로컬리티 힌트입니다. |
| application |
명령줄을 실행하기 전에 배치 서비스가 컴퓨트 노드에 배포할 패키지 목록입니다. 애플리케이션 패키지는 작업 디렉터리가 아닌 공유 디렉터리에 다운로드되어 배포됩니다. 따라서, 참조된 패키지가 이미 노드에 있고 최신 상태라면 재다운로드되지 않습니다; 컴퓨트 노드에 존재하는 기존 복사본을 사용합니다. 예를 들어, 패키지가 삭제되었거나 다운로드가 실패하여 참조된 패키지를 설치할 수 없다면, 작업은 실패합니다. |
| command |
Task의 명령줄입니다. 다중 인스턴스 작업의 경우, 명령줄이 주 작업과 모든 하위 작업이 조정 명령줄 실행을 마친 후 주 작업으로 실행됩니다. 명령줄은 셸에서 실행되지 않으므로 환경 변수 확장과 같은 셸 기능을 활용할 수 없습니다. 이런 기능을 활용하고 싶다면, 명령줄에서 셸을 호출해야 합니다. 예를 들어 Windows에서는 "cmd /c MyCommand"를, Linux에서는 "/bin/sh -c MyCommand"를 사용하는 식입니다. 명령줄이 파일 경로를 참조하는 경우 상대 경로(작업 작업 디렉터리를 기준으로)를 사용하거나 Batch 제공 환경 변수(https://dotnet.territoriali.olinfo.it/azure/batch/batch-compute-node-environment-variables)를 사용해야 합니다. |
| constraints | 이 작업에 적용되는 실행 제약 조건들. 제약 조건을 지정하지 않으면, maxTaskRetryCount는 작업에 지정된 maxTaskRetryCount이고, maxWallClockTime은 무한이며, retentionTime은 7일입니다. |
| container |
작업이 실행되는 컨테이너 설정입니다. 이 작업을 실행할 풀에 containerConfiguration 설정이 있다면, 이 또한 설정되어야 합니다. 이 작업을 실행할 풀에 containerConfiguration 설정이 없다면, 이 설정은 하지 않아야 합니다. 이 명령이 명시되면, 노드 내 Azure Batch 디렉터리의 루트인 AZ_BATCH_NODE_ROOT_DIR 아래에 있는 모든 디렉터리가 재귀적으로 컨테이너에 매핑되고, 모든 작업 환경 변수가 컨테이너에 매핑되며, 작업 명령줄이 컨테이너에서 실행됩니다. AZ_BATCH_NODE_ROOT_DIR 외부에서 생성된 컨테이너 파일은 호스트 디스크에 반영되지 않을 수 있어, 배치 파일 API가 해당 파일에 접근할 수 없습니다. |
| depends |
이 작업이 의존하는 작업들. 이 작업은 해당 작업에 의존하는 모든 작업이 성공적으로 완료될 때까지 예약되지 않습니다. 만약 이 작업 중 하나라도 실패하여 재시도 횟수를 모두 소진하면, 이 작업은 절대 예약되지 않습니다. 만약 작업에 usesTaskDependencies가 true로 설정되어 있지 않고 이 요소가 존재한다면, TaskDependenciesNotSpecifiedOnJob 오류 코드와 함께 요청이 실패합니다. |
| display |
작업의 표시명입니다. 표시 이름은 고유할 필요가 없으며 최대 길이 1024까지 유니코드 문자를 포함할 수 있습니다. |
| environment |
작업 환경 변수 설정 목록입니다. |
| exit |
작업이 완료되었을 때 배치 서비스가 어떻게 반응해야 하는지에 대한 질문입니다. |
| id | 작업 내에서 작업을 고유하게 식별하는 문자열입니다. ID는 하이픈과 밑줄을 포함한 영숫자 문자의 조합을 포함할 수 있으며 64자를 초과할 수 없습니다. ID는 대소문자 보존 및 대소문자 민감성 기능이 있습니다(즉, 한 직무 내에 두 개의 ID가 사건에 따라 다를 수 없습니다). |
| multi |
작업이 다중 인스턴스 작업임을 나타내며, 다중 인스턴스 작업을 실행하는 방법에 대한 정보를 포함하는 객체입니다. |
| output |
명령줄을 실행한 후 배치 서비스가 컴퓨트 노드에서 업로드하는 파일 목록입니다. 다중 인스턴스 작업의 경우, 파일은 주 작업이 실행되는 컴퓨트 노드에서만 업로드됩니다. |
| required |
작업이 실행에 필요한 스케줄링 슬롯 수. 기본값은 1입니다. 작업은 컴퓨팅 노드에 충분한 빈 스케줄링 슬롯이 있을 때만 실행되도록 스케줄링할 수 있습니다. 다중 인스턴스 작업의 경우, 1. |
| resource |
명령줄을 실행하기 전에 Batch 서비스가 컴퓨팅 노드에 다운로드할 파일 목록입니다. 다중 인스턴스 작업의 경우, 자원 파일은 주 작업이 실행되는 컴퓨트 노드에만 다운로드됩니다. 리소스 파일 목록에 대한 최대 크기가 있습니다. 최대 크기를 초과하면 요청이 실패하고 응답 오류 코드는 RequestEntityTooLarge가 됩니다. 이 경우 ResourceFiles 컬렉션의 크기를 줄여야 합니다. 이 작업은 .zip 파일, 애플리케이션 패키지 또는 Docker 컨테이너를 사용하여 수행할 수 있습니다. |
| user |
작업이 실행되는 사용자 신원입니다. 만약 이 옵션을 누락할 경우, 해당 작업은 해당 작업에 고유한 비관리자 사용자로 실행됩니다. |
속성 세부 정보
affinityInfo
배치 서비스가 새로운 작업을 시작할 컴퓨트 노드를 선택하는 데 사용할 수 있는 로컬리티 힌트입니다.
affinityInfo?: BatchAffinityInfo
속성 값
applicationPackageReferences
명령줄을 실행하기 전에 배치 서비스가 컴퓨트 노드에 배포할 패키지 목록입니다. 애플리케이션 패키지는 작업 디렉터리가 아닌 공유 디렉터리에 다운로드되어 배포됩니다. 따라서, 참조된 패키지가 이미 노드에 있고 최신 상태라면 재다운로드되지 않습니다; 컴퓨트 노드에 존재하는 기존 복사본을 사용합니다. 예를 들어, 패키지가 삭제되었거나 다운로드가 실패하여 참조된 패키지를 설치할 수 없다면, 작업은 실패합니다.
applicationPackageReferences?: BatchApplicationPackageReference[]
속성 값
commandLine
Task의 명령줄입니다. 다중 인스턴스 작업의 경우, 명령줄이 주 작업과 모든 하위 작업이 조정 명령줄 실행을 마친 후 주 작업으로 실행됩니다. 명령줄은 셸에서 실행되지 않으므로 환경 변수 확장과 같은 셸 기능을 활용할 수 없습니다. 이런 기능을 활용하고 싶다면, 명령줄에서 셸을 호출해야 합니다. 예를 들어 Windows에서는 "cmd /c MyCommand"를, Linux에서는 "/bin/sh -c MyCommand"를 사용하는 식입니다. 명령줄이 파일 경로를 참조하는 경우 상대 경로(작업 작업 디렉터리를 기준으로)를 사용하거나 Batch 제공 환경 변수(https://dotnet.territoriali.olinfo.it/azure/batch/batch-compute-node-environment-variables)를 사용해야 합니다.
commandLine: string
속성 값
string
constraints
이 작업에 적용되는 실행 제약 조건들. 제약 조건을 지정하지 않으면, maxTaskRetryCount는 작업에 지정된 maxTaskRetryCount이고, maxWallClockTime은 무한이며, retentionTime은 7일입니다.
constraints?: BatchTaskConstraints
속성 값
containerSettings
작업이 실행되는 컨테이너 설정입니다. 이 작업을 실행할 풀에 containerConfiguration 설정이 있다면, 이 또한 설정되어야 합니다. 이 작업을 실행할 풀에 containerConfiguration 설정이 없다면, 이 설정은 하지 않아야 합니다. 이 명령이 명시되면, 노드 내 Azure Batch 디렉터리의 루트인 AZ_BATCH_NODE_ROOT_DIR 아래에 있는 모든 디렉터리가 재귀적으로 컨테이너에 매핑되고, 모든 작업 환경 변수가 컨테이너에 매핑되며, 작업 명령줄이 컨테이너에서 실행됩니다. AZ_BATCH_NODE_ROOT_DIR 외부에서 생성된 컨테이너 파일은 호스트 디스크에 반영되지 않을 수 있어, 배치 파일 API가 해당 파일에 접근할 수 없습니다.
containerSettings?: BatchTaskContainerSettings
속성 값
dependsOn
이 작업이 의존하는 작업들. 이 작업은 해당 작업에 의존하는 모든 작업이 성공적으로 완료될 때까지 예약되지 않습니다. 만약 이 작업 중 하나라도 실패하여 재시도 횟수를 모두 소진하면, 이 작업은 절대 예약되지 않습니다. 만약 작업에 usesTaskDependencies가 true로 설정되어 있지 않고 이 요소가 존재한다면, TaskDependenciesNotSpecifiedOnJob 오류 코드와 함께 요청이 실패합니다.
dependsOn?: BatchTaskDependencies
속성 값
displayName
작업의 표시명입니다. 표시 이름은 고유할 필요가 없으며 최대 길이 1024까지 유니코드 문자를 포함할 수 있습니다.
displayName?: string
속성 값
string
environmentSettings
exitConditions
id
작업 내에서 작업을 고유하게 식별하는 문자열입니다. ID는 하이픈과 밑줄을 포함한 영숫자 문자의 조합을 포함할 수 있으며 64자를 초과할 수 없습니다. ID는 대소문자 보존 및 대소문자 민감성 기능이 있습니다(즉, 한 직무 내에 두 개의 ID가 사건에 따라 다를 수 없습니다).
id: string
속성 값
string
multiInstanceSettings
작업이 다중 인스턴스 작업임을 나타내며, 다중 인스턴스 작업을 실행하는 방법에 대한 정보를 포함하는 객체입니다.
multiInstanceSettings?: MultiInstanceSettings
속성 값
outputFiles
명령줄을 실행한 후 배치 서비스가 컴퓨트 노드에서 업로드하는 파일 목록입니다. 다중 인스턴스 작업의 경우, 파일은 주 작업이 실행되는 컴퓨트 노드에서만 업로드됩니다.
outputFiles?: OutputFile[]
속성 값
requiredSlots
작업이 실행에 필요한 스케줄링 슬롯 수. 기본값은 1입니다. 작업은 컴퓨팅 노드에 충분한 빈 스케줄링 슬롯이 있을 때만 실행되도록 스케줄링할 수 있습니다. 다중 인스턴스 작업의 경우, 1.
requiredSlots?: number
속성 값
number
resourceFiles
명령줄을 실행하기 전에 Batch 서비스가 컴퓨팅 노드에 다운로드할 파일 목록입니다. 다중 인스턴스 작업의 경우, 자원 파일은 주 작업이 실행되는 컴퓨트 노드에만 다운로드됩니다. 리소스 파일 목록에 대한 최대 크기가 있습니다. 최대 크기를 초과하면 요청이 실패하고 응답 오류 코드는 RequestEntityTooLarge가 됩니다. 이 경우 ResourceFiles 컬렉션의 크기를 줄여야 합니다. 이 작업은 .zip 파일, 애플리케이션 패키지 또는 Docker 컨테이너를 사용하여 수행할 수 있습니다.
resourceFiles?: ResourceFile[]
속성 값
userIdentity
작업이 실행되는 사용자 신원입니다. 만약 이 옵션을 누락할 경우, 해당 작업은 해당 작업에 고유한 비관리자 사용자로 실행됩니다.
userIdentity?: UserIdentity