BatchTaskCreateOptions interface

Azure Batch Task를 생성하는 매개변수.

속성

affinityInfo

배치 서비스가 새로운 작업을 시작할 컴퓨트 노드를 선택하는 데 사용할 수 있는 로컬리티 힌트입니다.

applicationPackageReferences

명령줄을 실행하기 전에 배치 서비스가 컴퓨트 노드에 배포할 패키지 목록입니다. 애플리케이션 패키지는 작업 디렉터리가 아닌 공유 디렉터리에 다운로드되어 배포됩니다. 따라서, 참조된 패키지가 이미 노드에 있고 최신 상태라면 재다운로드되지 않습니다; 컴퓨트 노드에 존재하는 기존 복사본을 사용합니다. 예를 들어, 패키지가 삭제되었거나 다운로드가 실패하여 참조된 패키지를 설치할 수 없다면, 작업은 실패합니다.

commandLine

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일입니다.

containerSettings

작업이 실행되는 컨테이너 설정입니다. 이 작업을 실행할 풀에 containerConfiguration 설정이 있다면, 이 또한 설정되어야 합니다. 이 작업을 실행할 풀에 containerConfiguration 설정이 없다면, 이 설정은 하지 않아야 합니다. 이 명령이 명시되면, 노드 내 Azure Batch 디렉터리의 루트인 AZ_BATCH_NODE_ROOT_DIR 아래에 있는 모든 디렉터리가 재귀적으로 컨테이너에 매핑되고, 모든 작업 환경 변수가 컨테이너에 매핑되며, 작업 명령줄이 컨테이너에서 실행됩니다. AZ_BATCH_NODE_ROOT_DIR 외부에서 생성된 컨테이너 파일은 호스트 디스크에 반영되지 않을 수 있어, 배치 파일 API가 해당 파일에 접근할 수 없습니다.

dependsOn

이 작업이 의존하는 작업들. 이 작업은 해당 작업에 의존하는 모든 작업이 성공적으로 완료될 때까지 예약되지 않습니다. 만약 이 작업 중 하나라도 실패하여 재시도 횟수를 모두 소진하면, 이 작업은 절대 예약되지 않습니다. 만약 작업에 usesTaskDependencies가 true로 설정되어 있지 않고 이 요소가 존재한다면, TaskDependenciesNotSpecifiedOnJob 오류 코드와 함께 요청이 실패합니다.

displayName

작업의 표시명입니다. 표시 이름은 고유할 필요가 없으며 최대 길이 1024까지 유니코드 문자를 포함할 수 있습니다.

environmentSettings

작업 환경 변수 설정 목록입니다.

exitConditions

작업이 완료되었을 때 배치 서비스가 어떻게 반응해야 하는지에 대한 질문입니다.

id

작업 내에서 작업을 고유하게 식별하는 문자열입니다. ID는 하이픈과 밑줄을 포함한 영숫자 문자의 조합을 포함할 수 있으며 64자를 초과할 수 없습니다. ID는 대소문자 보존 및 대소문자 민감성 기능이 있습니다(즉, 한 직무 내에 두 개의 ID가 사건에 따라 다를 수 없습니다).

multiInstanceSettings

작업이 다중 인스턴스 작업임을 나타내며, 다중 인스턴스 작업을 실행하는 방법에 대한 정보를 포함하는 객체입니다.

outputFiles

명령줄을 실행한 후 배치 서비스가 컴퓨트 노드에서 업로드하는 파일 목록입니다. 다중 인스턴스 작업의 경우, 파일은 주 작업이 실행되는 컴퓨트 노드에서만 업로드됩니다.

requiredSlots

작업이 실행에 필요한 스케줄링 슬롯 수. 기본값은 1입니다. 작업은 컴퓨팅 노드에 충분한 빈 스케줄링 슬롯이 있을 때만 실행되도록 스케줄링할 수 있습니다. 다중 인스턴스 작업의 경우, 1.

resourceFiles

명령줄을 실행하기 전에 Batch 서비스가 컴퓨팅 노드에 다운로드할 파일 목록입니다. 다중 인스턴스 작업의 경우, 자원 파일은 주 작업이 실행되는 컴퓨트 노드에만 다운로드됩니다. 리소스 파일 목록에 대한 최대 크기가 있습니다. 최대 크기를 초과하면 요청이 실패하고 응답 오류 코드는 RequestEntityTooLarge가 됩니다. 이 경우 ResourceFiles 컬렉션의 크기를 줄여야 합니다. 이 작업은 .zip 파일, 애플리케이션 패키지 또는 Docker 컨테이너를 사용하여 수행할 수 있습니다.

userIdentity

작업이 실행되는 사용자 신원입니다. 만약 이 옵션을 누락할 경우, 해당 작업은 해당 작업에 고유한 비관리자 사용자로 실행됩니다.

속성 세부 정보

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

작업 환경 변수 설정 목록입니다.

environmentSettings?: EnvironmentSetting[]

속성 값

exitConditions

작업이 완료되었을 때 배치 서비스가 어떻게 반응해야 하는지에 대한 질문입니다.

exitConditions?: 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

속성 값