Microsoft.Batch batchAccounts/pools 2021-01-01
Bicep 리소스 정의
batchAccounts/pools 리소스 종류는 다음을 대상으로 하는 작업으로 배포할 수 있습니다.
- 리소스 그룹 - 리소스 그룹 배포 명령 참조
각 API 버전에서 변경된 속성 목록은 변경 로그참조하세요.
리소스 형식
Microsoft.Batch/batchAccounts/pools 리소스를 만들려면 템플릿에 다음 Bicep을 추가합니다.
resource symbolicname 'Microsoft.Batch/batchAccounts/pools@2021-01-01' = {
parent: resourceSymbolicName
identity: {
type: 'string'
userAssignedIdentities: {
{customized property}: {}
}
}
name: 'string'
properties: {
applicationLicenses: [
'string'
]
applicationPackages: [
{
id: 'string'
version: 'string'
}
]
certificates: [
{
id: 'string'
storeLocation: 'string'
storeName: 'string'
visibility: [
'string'
]
}
]
deploymentConfiguration: {
cloudServiceConfiguration: {
osFamily: 'string'
osVersion: 'string'
}
virtualMachineConfiguration: {
containerConfiguration: {
containerImageNames: [
'string'
]
containerRegistries: [
{
password: 'string'
registryServer: 'string'
username: 'string'
}
]
type: 'DockerCompatible'
}
dataDisks: [
{
caching: 'string'
diskSizeGB: int
lun: int
storageAccountType: 'string'
}
]
diskEncryptionConfiguration: {
targets: [
'string'
]
}
extensions: [
{
autoUpgradeMinorVersion: bool
name: 'string'
protectedSettings: any(Azure.Bicep.Types.Concrete.AnyType)
provisionAfterExtensions: [
'string'
]
publisher: 'string'
settings: any(Azure.Bicep.Types.Concrete.AnyType)
type: 'string'
typeHandlerVersion: 'string'
}
]
imageReference: {
id: 'string'
offer: 'string'
publisher: 'string'
sku: 'string'
version: 'string'
}
licenseType: 'string'
nodeAgentSkuId: 'string'
nodePlacementConfiguration: {
policy: 'string'
}
windowsConfiguration: {
enableAutomaticUpdates: bool
}
}
}
displayName: 'string'
interNodeCommunication: 'string'
metadata: [
{
name: 'string'
value: 'string'
}
]
mountConfiguration: [
{
azureBlobFileSystemConfiguration: {
accountKey: 'string'
accountName: 'string'
blobfuseOptions: 'string'
containerName: 'string'
relativeMountPath: 'string'
sasKey: 'string'
}
azureFileShareConfiguration: {
accountKey: 'string'
accountName: 'string'
azureFileUrl: 'string'
mountOptions: 'string'
relativeMountPath: 'string'
}
cifsMountConfiguration: {
mountOptions: 'string'
password: 'string'
relativeMountPath: 'string'
source: 'string'
username: 'string'
}
nfsMountConfiguration: {
mountOptions: 'string'
relativeMountPath: 'string'
source: 'string'
}
}
]
networkConfiguration: {
endpointConfiguration: {
inboundNatPools: [
{
backendPort: int
frontendPortRangeEnd: int
frontendPortRangeStart: int
name: 'string'
networkSecurityGroupRules: [
{
access: 'string'
priority: int
sourceAddressPrefix: 'string'
sourcePortRanges: [
'string'
]
}
]
protocol: 'string'
}
]
}
publicIPAddressConfiguration: {
ipAddressIds: [
'string'
]
provision: 'string'
}
subnetId: 'string'
}
scaleSettings: {
autoScale: {
evaluationInterval: 'string'
formula: 'string'
}
fixedScale: {
nodeDeallocationOption: 'string'
resizeTimeout: 'string'
targetDedicatedNodes: int
targetLowPriorityNodes: int
}
}
startTask: {
commandLine: 'string'
containerSettings: {
containerRunOptions: 'string'
imageName: 'string'
registry: {
password: 'string'
registryServer: 'string'
username: 'string'
}
workingDirectory: 'string'
}
environmentSettings: [
{
name: 'string'
value: 'string'
}
]
maxTaskRetryCount: int
resourceFiles: [
{
autoStorageContainerName: 'string'
blobPrefix: 'string'
fileMode: 'string'
filePath: 'string'
httpUrl: 'string'
storageContainerUrl: 'string'
}
]
userIdentity: {
autoUser: {
elevationLevel: 'string'
scope: 'string'
}
userName: 'string'
}
waitForSuccess: bool
}
taskSchedulingPolicy: {
nodeFillType: 'string'
}
taskSlotsPerNode: int
userAccounts: [
{
elevationLevel: 'string'
linuxUserConfiguration: {
gid: int
sshPrivateKey: 'string'
uid: int
}
name: 'string'
password: 'string'
windowsUserConfiguration: {
loginMode: 'string'
}
}
]
vmSize: 'string'
}
}
속성 값
ApplicationPackageReference
이름 | 묘사 | 값 |
---|---|---|
아이디 | 설치할 애플리케이션 패키지의 ID입니다. 풀과 동일한 일괄 처리 계정 내에 있어야 합니다. 특정 버전에 대한 참조이거나 기본 버전(있는 경우)일 수 있습니다. | string(필수) |
버전 | 이 버전을 생략하고 이 애플리케이션에 대해 기본 버전을 지정하지 않으면 오류 코드 InvalidApplicationPackageReferences와 함께 요청이 실패합니다. REST API를 직접 호출하는 경우 HTTP 상태 코드는 409입니다. | 문자열 |
AutoScaleSettings
이름 | 묘사 | 값 |
---|---|---|
evaluationInterval | 생략하면 기본값은 15분(PT15M)입니다. | 문자열 |
식 | 풀에서 원하는 수의 컴퓨팅 노드에 대한 수식입니다. | string(필수) |
AutoUserSpecification
이름 | 묘사 | 값 |
---|---|---|
elevationLevel | 기본값은 nonAdmin입니다. | 'Admin' 'NonAdmin' |
범위 | 기본값은 Pool입니다. 풀이 Windows를 실행하는 경우 작업 간에 더 엄격한 격리가 필요한 경우 작업 값을 지정해야 합니다. 예를 들어 태스크가 다른 작업에 영향을 미칠 수 있는 방식으로 레지스트리를 변경하거나 일반 작업에서 액세스할 수 없지만 시작 태스크에서 액세스할 수 있어야 하는 풀에 인증서를 지정한 경우입니다. | 'Pool' '작업' |
AzureBlobFileSystemConfiguration
이름 | 묘사 | 값 |
---|---|---|
accountKey | 이 속성은 sasKey와 함께 사용할 수 없으며 하나를 지정해야 합니다. | 문자열 |
accountName | Azure Storage 계정 이름입니다. | string(필수) |
blobfuseOptions | Windows의 '순 사용' 옵션과 Linux의 '탑재' 옵션입니다. | 문자열 |
containerName | Azure Blob Storage 컨테이너 이름입니다. | string(필수) |
relativeMountPath | 모든 파일 시스템은 Batch 탑재 디렉터리를 기준으로 탑재되며 AZ_BATCH_NODE_MOUNTS_DIR 환경 변수를 통해 액세스할 수 있습니다. | string(필수) |
sasKey | 이 속성은 accountKey와 함께 사용할 수 없으며 하나를 지정해야 합니다. | 문자열 |
AzureFileShareConfiguration
이름 | 묘사 | 값 |
---|---|---|
accountKey | Azure Storage 계정 키입니다. | string(필수) |
accountName | Azure Storage 계정 이름입니다. | string(필수) |
azureFileUrl | 'https://{account}.file.core.windows.net/' 형식입니다. | string(필수) |
mountOptions | Windows의 '순 사용' 옵션과 Linux의 '탑재' 옵션입니다. | 문자열 |
relativeMountPath | 모든 파일 시스템은 Batch 탑재 디렉터리를 기준으로 탑재되며 AZ_BATCH_NODE_MOUNTS_DIR 환경 변수를 통해 액세스할 수 있습니다. | string(필수) |
BatchPoolIdentity
이름 | 묘사 | 값 |
---|---|---|
형 | Batch 풀에 사용되는 ID의 형식입니다. | 'None' 'UserAssigned'(필수) |
userAssignedIdentities | Batch 풀과 연결된 사용자 ID 목록입니다. 사용자 ID 사전 키 참조는 '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}' 형식의 ARM 리소스 ID입니다. | BatchPoolIdentityUserAssignedIdentities |
BatchPoolIdentityUserAssignedIdentities
이름 | 묘사 | 값 |
---|
CertificateReference
이름 | 묘사 | 값 |
---|---|---|
아이디 | 풀에 설치할 인증서의 정규화된 ID입니다. 풀과 동일한 일괄 처리 계정 내에 있어야 합니다. | string(필수) |
storeLocation | 기본값은 currentUser입니다. 이 속성은 Windows 노드로 구성된 풀(즉, cloudServiceConfiguration을 사용하여 만들거나 Windows 이미지 참조를 사용하여 virtualMachineConfiguration을 사용하여 생성됨)에만 적용됩니다. Linux 컴퓨팅 노드의 경우 인증서는 작업 디렉터리 내의 디렉터리에 저장되고 AZ_BATCH_CERTIFICATES_DIR 환경 변수는 이 위치를 쿼리하기 위해 태스크에 제공됩니다. 'remoteUser'의 표시 유형이 있는 인증서의 경우 사용자의 홈 디렉터리(예: /home/{user-name}/certs)에 'certs' 디렉터리가 만들어지고 인증서가 해당 디렉터리에 배치됩니다. | 'CurrentUser' 'LocalMachine' |
storeName | 이 속성은 Windows 노드로 구성된 풀(즉, cloudServiceConfiguration을 사용하여 만들거나 Windows 이미지 참조를 사용하여 virtualMachineConfiguration을 사용하여 생성됨)에만 적용됩니다. 일반적인 저장소 이름에는 My, Root, CA, Trust, Disallowed, TrustedPeople, TrustedPublisher, AuthRoot, AddressBook 등이 있지만 사용자 지정 저장소 이름도 사용할 수 있습니다. 기본값은 My입니다. | 문자열 |
시정 | 컴퓨팅 노드의 사용자 계정이 인증서의 프라이빗 데이터에 액세스할 수 있어야 합니다. | 다음 중 어느 것을 포함하는 문자열 배열: 'RemoteUser' 'StartTask' '작업' |
CifsMountConfiguration
이름 | 묘사 | 값 |
---|---|---|
mountOptions | Windows의 '순 사용' 옵션과 Linux의 '탑재' 옵션입니다. | 문자열 |
암호 | CIFS 파일 시스템에 대한 인증에 사용할 암호입니다. | string(필수) |
relativeMountPath | 모든 파일 시스템은 Batch 탑재 디렉터리를 기준으로 탑재되며 AZ_BATCH_NODE_MOUNTS_DIR 환경 변수를 통해 액세스할 수 있습니다. | string(필수) |
근원 | 탑재할 파일 시스템의 URI입니다. | string(필수) |
사용자 이름 | CIFS 파일 시스템에 대한 인증에 사용할 사용자입니다. | string(필수) |
CloudServiceConfiguration
이름 | 묘사 | 값 |
---|---|---|
osFamily | 가능한 값은 Windows Server 2008 R2 SP1과 동일한 2 - OS 제품군 2입니다. 3 - WINDOWS Server 2012와 동일한 OS 제품군 3. 4 - WINDOWS Server 2012 R2와 동일한 OS 제품군 4 5 - WINDOWS Server 2016에 해당하는 OS 제품군 5. 6 - WINDOWS Server 2019에 해당하는 OS 제품군 6. 자세한 내용은 Azure 게스트 OS 릴리스(https://azure.microsoft.com/documentation/articles/cloud-services-guestos-update-matrix/#releases)를 참조하세요. | string(필수) |
osVersion | 기본값은 지정된 OS 제품군의 최신 운영 체제 버전을 지정하는 *입니다. | 문자열 |
Components81XseeSchemasBatchpoolidentityPropertiesUserassignedidentitiesAdditionalproperties
이름 | 묘사 | 값 |
---|
ContainerConfiguration
이름 | 묘사 | 값 |
---|---|---|
containerImageNames | "docker pull"에 지정된 것처럼 전체 이미지 참조입니다. 이미지가 대체 레지스트리로 정규화되지 않는 한 이미지는 기본 Docker 레지스트리에서 원본이 됩니다. | string[] |
containerRegistries | 자격 증명이 필요한 프라이빗 레지스트리에서 이미지를 다운로드해야 하는 경우 해당 자격 증명을 여기에 제공해야 합니다. | ContainerRegistry[] |
형 | 사용할 컨테이너 기술입니다. | 'DockerCompatible'(필수) |
ContainerRegistry
이름 | 묘사 | 값 |
---|---|---|
암호 | 레지스트리 서버에 로그인할 암호입니다. | string(필수) |
registryServer | 생략하면 기본값은 "docker.io"입니다. | 문자열 |
사용자 이름 | 레지스트리 서버에 로그인할 사용자 이름입니다. | string(필수) |
DataDisk
이름 | 묘사 | 값 |
---|---|---|
캐싱 | 값은 다음과 같습니다. none - 디스크의 캐싱 모드를 사용할 수 없습니다. readOnly - 디스크의 캐싱 모드는 읽기 전용입니다. readWrite - 디스크의 캐싱 모드를 읽고 씁니다. 캐싱의 기본값은 none입니다. 캐싱 옵션에 대한 자세한 내용은 다음을 참조하세요. https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/. |
'None' 'ReadOnly' 'ReadWrite' |
diskSizeGB | 새 데이터 디스크를 만들 때의 초기 디스크 크기(GB)입니다. | int(필수) |
lun | lun은 각 데이터 디스크를 고유하게 식별하는 데 사용됩니다. 여러 디스크를 연결하는 경우 각각 고유한 lun이 있어야 합니다. 값은 0에서 63 사이여야 합니다. | int(필수) |
storageAccountType | 생략하면 기본값은 "Standard_LRS"입니다. 값은 다음과 같습니다. Standard_LRS - 데이터 디스크는 표준 로컬 중복 스토리지를 사용해야 합니다. Premium_LRS - 데이터 디스크는 프리미엄 로컬 중복 스토리지를 사용해야 합니다. |
'Premium_LRS' 'Standard_LRS' |
DeploymentConfiguration
이름 | 묘사 | 값 |
---|---|---|
cloudServiceConfiguration | 이 속성과 virtualMachineConfiguration은 함께 사용할 수 없으며 속성 중 하나를 지정해야 합니다. Batch 계정이 poolAllocationMode 속성을 'UserSubscription'으로 설정하여 만든 경우 이 속성을 지정할 수 없습니다. | cloudServiceConfiguration |
virtualMachineConfiguration | 이 속성과 cloudServiceConfiguration은 함께 사용할 수 없으며 속성 중 하나를 지정해야 합니다. | VirtualMachineConfiguration |
DiskEncryptionConfiguration
이름 | 묘사 | 값 |
---|---|---|
대상 | Linux 풀에서는 "TemporaryDisk"만 지원됩니다. Windows 풀에서 "OsDisk" 및 "TemporaryDisk"를 지정해야 합니다. | 다음 중 어느 것을 포함하는 문자열 배열: 'OsDisk' 'TemporaryDisk' |
EnvironmentSetting
이름 | 묘사 | 값 |
---|---|---|
이름 | 환경 변수의 이름입니다. | string(필수) |
값 | 환경 변수의 값입니다. | 문자열 |
FixedScaleSettings
이름 | 묘사 | 값 |
---|---|---|
nodeDeallocationOption | 생략하면 기본값은 Requeue입니다. | 'Requeue' 'RetainedData' 'TaskCompletion' 'Terminate' |
resizeTimeout | 기본값은 15분입니다. 시간 제한 값은 ISO 8601 형식을 사용합니다. 예를 들어 10분 동안 PT10M을 사용합니다. 최소값은 5분입니다. 5분 미만의 값을 지정하면 Batch 서비스가 오류와 함께 요청을 거부합니다. REST API를 직접 호출하는 경우 HTTP 상태 코드는 400(잘못된 요청)입니다. | 문자열 |
targetDedicatedNodes | targetDedicatedNodes 중 하나 이상을 targetLowPriorityNodes를 설정해야 합니다. | int |
targetLowPriorityNodes | targetDedicatedNodes 중 하나 이상을 targetLowPriorityNodes를 설정해야 합니다. | int |
ImageReference
이름 | 묘사 | 값 |
---|---|---|
아이디 | 이 속성은 다른 속성과 함께 사용할 수 없습니다. 공유 이미지 갤러리 이미지에는 Azure Batch 계정과 동일한 지역에 복제본이 있어야 합니다. Batch 서비스와 통신하는 Batch 노드 에이전트의 방화벽 설정에 대한 자세한 내용은 /azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration을 참조하세요. | 문자열 |
제공 | 예를 들어 UbuntuServer 또는 WindowsServer입니다. | 문자열 |
게시자 | 예를 들어 Canonical 또는 MicrosoftWindowsServer입니다. | 문자열 |
sku | 예를 들어 18.04-LTS 또는 2019-Datacenter입니다. | 문자열 |
버전 | 'latest' 값을 지정하여 최신 버전의 이미지를 선택할 수 있습니다. 생략하면 기본값은 'latest'입니다. | 문자열 |
InboundNatPool
이름 | 묘사 | 값 |
---|---|---|
backendPort | Batch 풀 내에서 고유해야 합니다. 허용되는 값은 22, 3389, 29876 및 29877을 제외하고 1에서 65535 사이입니다. 예약된 값이 제공되면 HTTP 상태 코드 400으로 요청이 실패합니다. | int(필수) |
frontendPortRangeEnd | 허용되는 값 범위는 Batch 서비스에서 예약한 포트 50000에서 55000 사이를 제외하고 1에서 65534 사이입니다. 풀 내의 모든 범위는 고유해야 하며 겹칠 수 없습니다. 예약되거나 겹치는 값이 제공되면 HTTP 상태 코드 400으로 요청이 실패합니다. | int(필수) |
frontendPortRangeStart | 허용되는 값은 예약된 포트 50000에서 55000을 제외하고 1에서 65534 사이의 범위입니다. 풀 내의 모든 범위는 고유해야 하며 겹칠 수 없습니다. 예약되거나 겹치는 값이 제공되면 HTTP 상태 코드 400으로 요청이 실패합니다. | int(필수) |
이름 | 이름은 Batch 풀 내에서 고유해야 하며 문자, 숫자, 밑줄, 마침표 및 하이픈을 포함할 수 있습니다. 이름은 문자 또는 숫자로 시작해야 하고 문자, 숫자 또는 밑줄로 끝나야 하며 77자를 초과할 수 없습니다. 잘못된 값이 제공되면 HTTP 상태 코드 400으로 요청이 실패합니다. | string(필수) |
networkSecurityGroupRules | Batch 풀의 모든 엔드포인트에서 지정할 수 있는 최대 규칙 수는 25개입니다. 네트워크 보안 그룹 규칙을 지정하지 않으면 지정된 backendPort에 대한 인바운드 액세스를 허용하는 기본 규칙이 만들어집니다. 네트워크 보안 그룹 규칙의 최대 수를 초과하는 경우 HTTP 상태 코드 400으로 요청이 실패합니다. | networkSecurityGroupRule |
프로토콜 | 엔드포인트의 프로토콜입니다. | 'TCP' 'UDP'(필수) |
LinuxUserConfiguration
이름 | 묘사 | 값 |
---|---|---|
gid | uid 및 gid 속성은 함께 지정하거나 지정하지 않아야 합니다. 지정하지 않으면 기본 운영 체제에서 gid를 선택합니다. | int |
sshPrivateKey | 프라이빗 키는 암호로 보호되어서는 안 됩니다. 프라이빗 키는 풀의 enableInterNodeCommunication 속성이 true일 때 Linux 풀의 노드 간에 SSH에 대한 비대칭 키 기반 인증을 자동으로 구성하는 데 사용됩니다(enableInterNodeCommunication이 false이면 무시됨). 이 작업은 키 쌍을 사용자의 .ssh 디렉터리에 배치하여 수행합니다. 지정하지 않으면 암호 없는 SSH가 노드 간에 구성되지 않습니다(사용자의 .ssh 디렉터리를 수정하지 않음). | 문자열 |
uid | uid 및 gid 속성은 함께 지정하거나 지정하지 않아야 합니다. 지정하지 않으면 기본 운영 체제에서 uid를 선택합니다. | int |
MetadataItem
이름 | 묘사 | 값 |
---|---|---|
이름 | 메타데이터 항목의 이름입니다. | string(필수) |
값 | 메타데이터 항목의 값입니다. | string(필수) |
Microsoft.Batch/batchAccounts/pools
이름 | 묘사 | 값 |
---|---|---|
신원 | Batch 풀에 사용되는 ID의 형식입니다. | BatchPoolIdentity |
이름 | 리소스 이름 | 문자열 제약 조건: 최소 길이 = 1 최대 길이 = 1 패턴 = ^[a-zA-Z0-9_-]+$ (필수) |
부모 | Bicep에서 자식 리소스에 대한 부모 리소스를 지정할 수 있습니다. 자식 리소스가 부모 리소스 외부에서 선언된 경우에만 이 속성을 추가해야 합니다. 자세한 내용은 부모 리소스외부의 자식 리소스 |
형식 리소스의 기호 이름: batchAccounts |
속성 | 풀과 연결된 속성입니다. | PoolProperties |
MountConfiguration
이름 | 묘사 | 값 |
---|---|---|
azureBlobFileSystemConfiguration | 이 속성은 다른 모든 속성과 함께 사용할 수 없습니다. | AzureBlobFileSystemConfiguration |
azureFileShareConfiguration | 이 속성은 다른 모든 속성과 함께 사용할 수 없습니다. | AzureFileShareConfiguration |
cifsMountConfiguration | 이 속성은 다른 모든 속성과 함께 사용할 수 없습니다. | CifsMountConfiguration |
nfsMountConfiguration | 이 속성은 다른 모든 속성과 함께 사용할 수 없습니다. | NFSMountConfiguration |
NetworkConfiguration
이름 | 묘사 | 값 |
---|---|---|
endpointConfiguration | 풀 엔드포인트 구성은 virtualMachineConfiguration 속성이 있는 풀에서만 지원됩니다. | poolEndpointConfiguration |
publicIPAddressConfiguration | 이 속성은 virtualMachineConfiguration 속성이 있는 풀에서만 지원됩니다. | PublicIPAddressConfiguration |
subnetId | 가상 네트워크는 Azure Batch 계정과 동일한 지역 및 구독에 있어야 합니다. 지정된 서브넷에는 풀의 노드 수를 수용하기에 충분한 사용 가능한 IP 주소가 있어야 합니다. 서브넷에 사용 가능한 IP 주소가 충분하지 않으면 풀에서 컴퓨팅 노드를 부분적으로 할당하고 크기 조정 오류가 발생합니다. 'MicrosoftAzureBatch' 서비스 주체에는 지정된 VNet에 대한 '클래식 가상 머신 기여자' Role-Based RBAC(Access Control) 역할이 있어야 합니다. 지정된 서브넷은 Azure Batch 서비스의 통신이 컴퓨팅 노드에서 작업을 예약할 수 있도록 허용해야 합니다. 지정된 VNet에 연결된 NSG(네트워크 보안 그룹)가 있는지 확인하여 확인할 수 있습니다. 지정된 서브넷의 컴퓨팅 노드에 대한 통신이 NSG에 의해 거부되면 Batch 서비스는 컴퓨팅 노드의 상태를 사용할 수 없도록 설정합니다. 지정된 VNet에 연결된 NSG(네트워크 보안 그룹)가 있는 경우 인바운드 통신에 대해 몇 가지 예약된 시스템 포트를 사용하도록 설정해야 합니다. 가상 머신 구성을 사용하여 만든 풀의 경우 29876 및 29877 포트와 Linux용 포트 22 및 Windows용 포트 3389를 사용하도록 설정합니다. 클라우드 서비스 구성을 사용하여 만든 풀의 경우 포트 10100, 20100 및 30100을 사용하도록 설정합니다. 또한 포트 443에서 Azure Storage에 대한 아웃바운드 연결을 사용하도록 설정합니다. cloudServiceConfiguration 풀의 경우 '클래식' VNET만 지원됩니다. 자세한 내용은 다음을 참조하세요. /azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration | 문자열 |
NetworkSecurityGroupRule
이름 | 묘사 | 값 |
---|---|---|
접근 | 지정된 IP 주소, 서브넷 범위 또는 태그에 대해 수행해야 하는 작업입니다. | '허용' 'Deny'(필수) |
우선권 | 풀 내의 우선 순위는 고유해야 하며 우선 순위 순서대로 평가됩니다. 숫자가 낮을수록 우선 순위가 높습니다. 예를 들어 순서 번호가 150, 250 및 350인 규칙을 지정할 수 있습니다. 순서 번호가 150인 규칙이 순서가 250인 규칙보다 우선합니다. 허용되는 우선 순위는 150~4096입니다. 예약되거나 중복된 값이 제공되면 HTTP 상태 코드 400으로 요청이 실패합니다. | int(필수) |
sourceAddressPrefix | 유효한 값은 단일 IP 주소(예: 10.10.10.10), IP 서브넷(예: 192.168.1.0/24), 기본 태그 또는 *(모든 주소의 경우)입니다. 다른 값이 제공되면 HTTP 상태 코드 400으로 요청이 실패합니다. | string(필수) |
sourcePortRanges | 유효한 값은 '*'(모든 포트 0 - 65535) 또는 포트 또는 포트 범위 배열(예: 100-200)입니다. 포트는 0~65535 범위여야 하며 포트 범위 또는 포트는 겹칠 수 없습니다. 다른 값이 제공되면 HTTP 상태 코드 400으로 요청이 실패합니다. 기본값은 *입니다. | string[] |
NFSMountConfiguration
이름 | 묘사 | 값 |
---|---|---|
mountOptions | Windows의 '순 사용' 옵션과 Linux의 '탑재' 옵션입니다. | 문자열 |
relativeMountPath | 모든 파일 시스템은 Batch 탑재 디렉터리를 기준으로 탑재되며 AZ_BATCH_NODE_MOUNTS_DIR 환경 변수를 통해 액세스할 수 있습니다. | string(필수) |
근원 | 탑재할 파일 시스템의 URI입니다. | string(필수) |
NodePlacementConfiguration
이름 | 묘사 | 값 |
---|---|---|
정책 | Batch 서비스에서 노드를 프로비전하는 데 사용하는 할당 정책입니다. 지정하지 않으면 Batch는 지역 정책을 사용합니다. | '지역' '영역' |
PoolEndpointConfiguration
이름 | 묘사 | 값 |
---|---|---|
inboundNatPools | Batch 풀당 최대 인바운드 NAT 풀 수는 5개입니다. 인바운드 NAT 풀의 최대 수를 초과하는 경우 HTTP 상태 코드 400으로 요청이 실패합니다. IPAddressProvisioningType이 NoPublicIPAddresses인 경우 이를 지정할 수 없습니다. | InboundNatPool[] (필수) |
PoolProperties
이름 | 묘사 | 값 |
---|---|---|
applicationLicenses | 애플리케이션 라이선스 목록은 사용 가능한 Batch 서비스 애플리케이션 라이선스의 하위 집합이어야 합니다. 지원되지 않는 라이선스가 요청되면 풀 만들기가 실패합니다. | string[] |
applicationPackages | 애플리케이션 패키지 참조에 대한 변경 내용은 풀에 조인하는 모든 새 컴퓨팅 노드에 영향을 주지만 다시 부팅하거나 이미지로 다시 설치할 때까지 풀에 이미 있는 컴퓨팅 노드에는 영향을 미치지 않습니다. 지정된 풀에는 최대 10개의 애플리케이션 패키지 참조가 있습니다. | applicationPackageReference |
인증서 | Windows 컴퓨팅 노드의 경우 Batch 서비스는 지정된 인증서 저장소 및 위치에 인증서를 설치합니다. Linux 컴퓨팅 노드의 경우 인증서는 작업 디렉터리 내의 디렉터리에 저장되고 AZ_BATCH_CERTIFICATES_DIR 환경 변수는 이 위치를 쿼리하기 위해 태스크에 제공됩니다. 'remoteUser'의 표시 유형이 있는 인증서의 경우 사용자의 홈 디렉터리(예: /home/{user-name}/certs)에 'certs' 디렉터리가 만들어지고 인증서가 해당 디렉터리에 배치됩니다. | CertificateReference[] |
deploymentConfiguration | CloudServiceConfiguration을 사용하면 노드가 PaaS(Azure Cloud Services)를 사용하여 만들어야 하는 반면 VirtualMachineConfiguration은 Azure Virtual Machines(IaaS)를 사용합니다. | DeploymentConfiguration |
displayName | 표시 이름은 고유할 필요가 없으며 최대 길이 1024까지 유니코드 문자를 포함할 수 있습니다. | 문자열 |
interNodeCommunication | 이렇게 하면 풀에 할당할 수 있는 노드에 제한이 적용됩니다. 이 값을 사용하도록 설정하면 요청된 노드 수가 풀에 할당될 가능성을 줄일 수 있습니다. 지정하지 않으면 이 값은 기본적으로 'Disabled'로 설정됩니다. | '사용 안 함' 'Enabled' |
메타데이터 | Batch 서비스는 메타데이터에 어떤 의미도 할당하지 않습니다. 사용자 코드를 사용하기 위한 것입니다. | MetadataItem[] |
mountConfiguration | Azure Files, NFS, CIFS/SMB 및 Blobfuse를 지원합니다. | MountConfiguration[] |
networkConfiguration | 풀에 대한 네트워크 구성입니다. | networkConfiguration |
scaleSettings | 풀의 원하는 크기를 정의합니다. 요청된 targetDedicatedNodes가 지정된 'fixedScale'이나 주기적으로 다시 평가되는 수식을 정의하는 'autoScale'일 수 있습니다. 이 속성을 지정하지 않으면 풀은 targetDedicatedNodes가 0인 고정된 배율을 갖습니다. | ScaleSettings |
startTask | PATCH(업데이트) 작업에서 이 속성을 빈 개체로 설정하여 풀에서 시작 작업을 제거할 수 있습니다. | StartTask |
taskSchedulingPolicy | 지정하지 않으면 기본값이 분산됩니다. | TaskSchedulingPolicy |
taskSlotsPerNode | 기본값은 1입니다. 최대값은 풀의 vmSize 코어 수의 4배 또는 256의 작은 값입니다. | int |
userAccounts | 풀의 각 노드에서 만들 사용자 계정 목록입니다. | userAccount |
vmSize | Cloud Services 풀에 사용 가능한 가상 머신 크기(cloudServiceConfiguration으로 만든 풀)에 대한 자세한 내용은 Cloud Services 크기(https://azure.microsoft.com/documentation/articles/cloud-services-sizes-specs/)를 참조하세요. Batch는 ExtraSmall을 제외한 모든 Cloud Services VM 크기를 지원합니다. Virtual Machines Marketplace(virtualMachineConfiguration으로 만든 풀)의 이미지를 사용하여 풀에 사용할 수 있는 VM 크기에 대한 자세한 내용은 Virtual Machines 크기(linux)(https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) 또는 Virtual Machines(Windows)의 크기(https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/)를 참조하세요. Batch는 STANDARD_A0 및 Premium Storage(STANDARD_GS, STANDARD_DS 및 STANDARD_DSV2 시리즈)를 제외한 모든 Azure VM 크기를 지원합니다. | 문자열 |
PublicIPAddressConfiguration
이름 | 묘사 | 값 |
---|---|---|
ipAddressIds | 여기에 지정된 IP 수는 풀의 최대 크기를 제한합니다. 전용 노드 100개 또는 우선 순위가 낮은 노드 100개는 각 공용 IP에 할당할 수 있습니다. 예를 들어 250개의 전용 VM이 필요한 풀에는 3개 이상의 공용 IP가 지정되어 있어야 합니다. 이 컬렉션의 각 요소는 /subscriptions/{subscription}/resourceGroups/{group}/providers/Microsoft.Network/publicIPAddresses/{ip}형식입니다. | string[] |
제공 | 기본값은 BatchManaged입니다. | 'BatchManaged' 'NoPublicIPAddresses' 'UserManaged' |
ResourceFile
이름 | 묘사 | 값 |
---|---|---|
autoStorageContainerName | autoStorageContainerName, storageContainerUrl 및 httpUrl 속성은 상호 배타적이며 그 중 하나를 지정해야 합니다. | 문자열 |
blobPrefix | 이 속성은 autoStorageContainerName 또는 storageContainerUrl을 사용하는 경우에만 유효합니다. 이 접두사는 부분 파일 이름 또는 하위 디렉터리일 수 있습니다. 접두사를 지정하지 않으면 컨테이너의 모든 파일이 다운로드됩니다. | 문자열 |
fileMode | 이 속성은 Linux 컴퓨팅 노드에 다운로드되는 파일에만 적용됩니다. Windows 노드에 다운로드할 resourceFile에 대해 지정된 경우 무시됩니다. Linux 노드에 대해 이 속성을 지정하지 않으면 기본값인 0770이 파일에 적용됩니다. | 문자열 |
filePath | httpUrl 속성을 지정하면 filePath가 필요하며 파일 이름을 포함하여 파일을 다운로드할 경로를 설명합니다. 그렇지 않으면 autoStorageContainerName 또는 storageContainerUrl 속성이 지정된 경우 filePath는 선택 사항이며 파일을 다운로드할 디렉터리입니다. filePath가 디렉터리로 사용되는 경우 입력 데이터와 이미 연결된 모든 디렉터리 구조가 전체로 유지되고 지정된 filePath 디렉터리에 추가됩니다. 지정된 상대 경로가 작업의 작업 디렉터리에서 분리될 수 없습니다(예: '..'을 사용). | 문자열 |
httpUrl | autoStorageContainerName, storageContainerUrl 및 httpUrl 속성은 상호 배타적이며 그 중 하나를 지정해야 합니다. URL이 Azure Blob Storage인 경우 익명 액세스를 사용하여 읽을 수 있어야 합니다. 즉, Batch 서비스는 Blob을 다운로드할 때 자격 증명을 제공하지 않습니다. Azure Storage에서 Blob에 대한 이러한 URL을 가져오는 방법에는 Blob에 대한 읽기 권한을 부여하는 SAS(공유 액세스 서명)를 포함하거나 공용 액세스를 허용하도록 Blob 또는 해당 컨테이너에 대한 ACL을 설정하는 두 가지 방법이 있습니다. | 문자열 |
storageContainerUrl | autoStorageContainerName, storageContainerUrl 및 httpUrl 속성은 상호 배타적이며 그 중 하나를 지정해야 합니다. 익명 액세스를 사용하여 이 URL을 읽을 수 있고 나열할 수 있어야 합니다. 즉, Batch 서비스는 Blob을 다운로드할 때 자격 증명을 제공하지 않습니다. Azure Storage에서 Blob에 대한 이러한 URL을 가져오는 방법에는 Blob에 대한 읽기 및 목록 권한을 부여하는 SAS(공유 액세스 서명)를 포함하거나 공용 액세스를 허용하도록 Blob 또는 해당 컨테이너에 대한 ACL을 설정하는 두 가지 방법이 있습니다. | 문자열 |
ScaleSettings
이름 | 묘사 | 값 |
---|---|---|
autoScale | 이 속성과 fixedScale은 함께 사용할 수 없으며 속성 중 하나를 지정해야 합니다. | AutoScaleSettings |
fixedScale | 이 속성과 자동 크기 조정은 함께 사용할 수 없으며 속성 중 하나를 지정해야 합니다. | FixedScaleSettings |
StartTask
이름 | 묘사 | 값 |
---|---|---|
commandLine | 명령줄은 셸에서 실행되지 않으므로 환경 변수 확장과 같은 셸 기능을 활용할 수 없습니다. 이러한 기능을 활용하려면 명령줄에서 셸을 호출해야 합니다(예: Windows에서 "cmd /c MyCommand"를 사용하거나 Linux에서 "/bin/sh -c MyCommand"). startTask의 다른 속성이 지정된 경우 필수입니다. | 문자열 |
containerSettings | 이 옵션을 지정하면 AZ_BATCH_NODE_ROOT_DIR 아래의 모든 디렉터리(노드의 Azure Batch 디렉터리 루트)가 컨테이너에 매핑되고, 모든 작업 환경 변수가 컨테이너에 매핑되고, 태스크 명령줄이 컨테이너에서 실행됩니다. | TaskContainerSettings |
environmentSettings | 시작 작업에 대한 환경 변수 설정 목록입니다. | EnvironmentSetting[] |
maxTaskRetryCount | Batch 서비스는 종료 코드가 0이 아닌 경우 작업을 다시 시도합니다. 이 값은 특히 재시도 횟수를 제어합니다. Batch 서비스는 작업을 한 번 시도한 다음 이 제한까지 다시 시도할 수 있습니다. 예를 들어 최대 재시도 횟수가 3인 경우 Batch는 작업을 최대 4번(초기 시도 1회, 재시도 3회)을 시도합니다. 최대 재시도 횟수가 0이면 Batch 서비스에서 작업을 다시 시도하지 않습니다. 최대 재시도 횟수가 -1이면 Batch 서비스는 제한 없이 작업을 다시 시도합니다. | int |
resourceFiles | 명령줄을 실행하기 전에 Batch 서비스가 컴퓨팅 노드에 다운로드할 파일 목록입니다. | ResourceFile |
userIdentity | 생략하면 태스크가 작업에 고유한 비관리 사용자로 실행됩니다. | UserIdentity |
waitForSuccess | true이고 컴퓨팅 노드에서 시작 작업이 실패하면 Batch 서비스는 최대 재시도 횟수(maxTaskRetryCount)까지 시작 작업을 다시 시도합니다. 모든 재시도 후에도 작업이 성공적으로 완료되지 않은 경우 Batch 서비스는 컴퓨팅 노드를 사용할 수 없도록 표시하고 작업을 예약하지 않습니다. 이 조건은 노드 상태 및 예약 오류 세부 정보를 통해 검색할 수 있습니다. false이면 Batch 서비스는 시작 작업이 완료될 때까지 기다리지 않습니다. 이 경우 시작 태스크가 계속 실행되는 동안 다른 태스크가 컴퓨팅 노드에서 실행을 시작할 수 있습니다. 시작 작업이 실패하더라도 노드에서 새 작업이 계속 예약됩니다. 기본값은 true입니다. | bool |
TaskContainerSettings
이름 | 묘사 | 값 |
---|---|---|
containerRunOptions | 이러한 추가 옵션은 Batch 서비스에서 제어하는 옵션 외에도 "docker create" 명령에 대한 인수로 제공됩니다. | 문자열 |
imageName | "docker pull"에 지정된 것처럼 전체 이미지 참조입니다. 이미지 이름의 일부로 태그가 제공되지 않으면 ":latest" 태그가 기본값으로 사용됩니다. | string(필수) |
레지스트리 | 풀을 만들 때 이미 제공된 경우 이 설정을 생략할 수 있습니다. | ContainerRegistry |
workingDirectory | 컨테이너 작업 디렉터리의 위치를 나타내는 플래그입니다. 기본값은 'taskWorkingDirectory'입니다. | 'ContainerImageDefault' 'TaskWorkingDirectory' |
TaskSchedulingPolicy
이름 | 묘사 | 값 |
---|---|---|
nodeFillType | 태스크를 컴퓨팅 노드에 분산하는 방법 | 'Pack' 'Spread'(필수) |
UserAccount
이름 | 묘사 | 값 |
---|---|---|
elevationLevel | nonAdmin - 자동 사용자는 상승된 액세스 권한이 없는 표준 사용자입니다. admin - 자동 사용자는 상승된 액세스 권한을 가진 사용자이며 전체 관리자 권한으로 작동합니다. 기본값은 nonAdmin입니다. | 'Admin' 'NonAdmin' |
linuxUserConfiguration | Windows 풀에 지정된 경우 이 속성은 무시됩니다. 지정하지 않으면 기본 옵션을 사용하여 사용자가 만들어집니다. | LinuxUserConfiguration |
이름 | 사용자 계정의 이름입니다. | string(필수) |
암호 | 사용자 계정의 암호입니다. | string(필수) |
windowsUserConfiguration | 이 속성은 사용자가 Windows 풀에 있는 경우에만 지정할 수 있습니다. 지정하지 않은 경우 Windows 풀에서 기본 옵션을 사용하여 사용자를 만듭니다. | WindowsUserConfiguration |
UserIdentity
이름 | 묘사 | 값 |
---|---|---|
autoUser | userName 및 autoUser 속성은 상호 배타적입니다. 둘 다 지정해야 하지만 둘 다 지정하지는 않습니다. | AutoUserSpecification |
userName | userName 및 autoUser 속성은 상호 배타적입니다. 둘 다 지정해야 하지만 둘 다 지정하지는 않습니다. | 문자열 |
VirtualMachineConfiguration
이름 | 묘사 | 값 |
---|---|---|
containerConfiguration | 지정된 경우 태스크가 컨테이너에서 실행되도록 풀의 각 노드에서 설치가 수행됩니다. 이 풀에서 실행되는 모든 일반 작업 및 작업 관리자 작업은 containerSettings 속성을 지정해야 하며, 다른 모든 작업에서 지정할 수 있습니다. | ContainerConfiguration |
dataDisks | 풀의 컴퓨팅 노드에 빈 데이터 디스크가 연결되어 있어야 하는 경우 이 속성을 지정해야 합니다. | dataDisk |
diskEncryptionConfiguration | 지정된 경우 노드 프로비전 중에 풀의 각 노드에서 암호화가 수행됩니다. | diskEncryptionConfiguration |
확장 | 지정된 경우 이 구성에 언급된 확장이 각 노드에 설치됩니다. | VMExtension |
imageReference | 사용자 지정 Virtual Machine의 Azure Virtual Machines Marketplace 이미지 또는 Azure 이미지 리소스에 대한 참조입니다. Azure Batch에서 확인된 모든 imageReferences 목록을 얻으려면 '지원되는 노드 에이전트 SKU 나열' 작업을 참조하세요. | imageReference |
licenseType | 이는 Windows 운영 체제를 포함하는 이미지에만 적용되며 배포될 노드에 대해 유효한 온-프레미스 라이선스를 보유하는 경우에만 사용해야 합니다. 생략하면 온-프레미스 라이선스 할인이 적용되지 않습니다. 값은 다음과 같습니다. Windows_Server - 온-프레미스 라이선스는 Windows Server용입니다. Windows_Client - 온-프레미스 라이선스는 Windows 클라이언트용입니다. |
문자열 |
nodeAgentSkuId | Batch 노드 에이전트는 풀의 각 노드에서 실행되는 프로그램이며 노드와 Batch 서비스 간의 명령 및 제어 인터페이스를 제공합니다. 여러 운영 체제에 대해 SKU라고 하는 노드 에이전트의 구현이 다릅니다. 선택한 이미지 참조와 일치하는 노드 에이전트 SKU를 지정해야 합니다. 확인된 이미지 참조 목록과 함께 지원되는 노드 에이전트 SKU 목록을 얻으려면 '지원되는 노드 에이전트 SKU 나열' 작업을 참조하세요. | string(필수) |
nodePlacementConfiguration | 이 구성은 풀의 노드를 물리적으로 할당하는 방법에 대한 규칙을 지정합니다. | nodePlacementConfiguration |
windowsConfiguration | imageReference가 Linux OS 이미지를 지정하는 경우 이 속성을 지정해서는 안 됩니다. | windowsConfiguration |
VMExtension
이름 | 묘사 | 값 |
---|---|---|
autoUpgradeMinorVersion | 배포 시 사용할 수 있는 경우 확장에서 최신 부 버전을 사용해야 하는지 여부를 나타냅니다. 그러나 배포된 후에는 이 속성이 true로 설정되어 있더라도 재배포하지 않는 한 확장은 부 버전을 업그레이드하지 않습니다. | bool |
이름 | 가상 머신 확장의 이름입니다. | string(필수) |
protectedSettings | 확장에는 protectedSettings 또는 protectedSettingsFromKeyVault 또는 보호된 설정이 전혀 포함될 수 없습니다. | 어떤 |
provisionAfterExtensions | 이 확장을 프로비전해야 하는 확장 이름 컬렉션입니다. | string[] |
게시자 | 확장 처리기 게시자의 이름입니다. | string(필수) |
설정 | 확장에 대한 JSON 형식의 공용 설정입니다. | 어떤 |
형 | 확장의 형식입니다. | string(필수) |
typeHandlerVersion | 스크립트 처리기의 버전입니다. | 문자열 |
WindowsConfiguration
이름 | 묘사 | 값 |
---|---|---|
enableAutomaticUpdates | 생략하면 기본값이 true입니다. | bool |
WindowsUserConfiguration
이름 | 묘사 | 값 |
---|---|---|
loginMode | 사용자의 로그인 모드를 지정합니다. VirtualMachineConfiguration 풀의 기본값은 대화형 모드이며 CloudServiceConfiguration 풀의 경우 일괄 처리 모드입니다. | 'Batch' 'Interactive' |
빠른 시작 샘플
다음 빠른 시작 샘플은 이 리소스 유형을 배포합니다.
Bicep 파일 | 묘사 |
---|---|
공용 IP 주소가 없는 Azure Batch 풀 |
이 템플릿은 공용 IP 주소 없이 Azure Batch 간소화된 노드 통신 풀을 만듭니다. |
ARM 템플릿 리소스 정의
batchAccounts/pools 리소스 종류는 다음을 대상으로 하는 작업으로 배포할 수 있습니다.
- 리소스 그룹 - 리소스 그룹 배포 명령 참조
각 API 버전에서 변경된 속성 목록은 변경 로그참조하세요.
리소스 형식
Microsoft.Batch/batchAccounts/pools 리소스를 만들려면 템플릿에 다음 JSON을 추가합니다.
{
"type": "Microsoft.Batch/batchAccounts/pools",
"apiVersion": "2021-01-01",
"name": "string",
"identity": {
"type": "string",
"userAssignedIdentities": {
"{customized property}": {
}
}
},
"properties": {
"applicationLicenses": [ "string" ],
"applicationPackages": [
{
"id": "string",
"version": "string"
}
],
"certificates": [
{
"id": "string",
"storeLocation": "string",
"storeName": "string",
"visibility": [ "string" ]
}
],
"deploymentConfiguration": {
"cloudServiceConfiguration": {
"osFamily": "string",
"osVersion": "string"
},
"virtualMachineConfiguration": {
"containerConfiguration": {
"containerImageNames": [ "string" ],
"containerRegistries": [
{
"password": "string",
"registryServer": "string",
"username": "string"
}
],
"type": "DockerCompatible"
},
"dataDisks": [
{
"caching": "string",
"diskSizeGB": "int",
"lun": "int",
"storageAccountType": "string"
}
],
"diskEncryptionConfiguration": {
"targets": [ "string" ]
},
"extensions": [
{
"autoUpgradeMinorVersion": "bool",
"name": "string",
"protectedSettings": {},
"provisionAfterExtensions": [ "string" ],
"publisher": "string",
"settings": {},
"type": "string",
"typeHandlerVersion": "string"
}
],
"imageReference": {
"id": "string",
"offer": "string",
"publisher": "string",
"sku": "string",
"version": "string"
},
"licenseType": "string",
"nodeAgentSkuId": "string",
"nodePlacementConfiguration": {
"policy": "string"
},
"windowsConfiguration": {
"enableAutomaticUpdates": "bool"
}
}
},
"displayName": "string",
"interNodeCommunication": "string",
"metadata": [
{
"name": "string",
"value": "string"
}
],
"mountConfiguration": [
{
"azureBlobFileSystemConfiguration": {
"accountKey": "string",
"accountName": "string",
"blobfuseOptions": "string",
"containerName": "string",
"relativeMountPath": "string",
"sasKey": "string"
},
"azureFileShareConfiguration": {
"accountKey": "string",
"accountName": "string",
"azureFileUrl": "string",
"mountOptions": "string",
"relativeMountPath": "string"
},
"cifsMountConfiguration": {
"mountOptions": "string",
"password": "string",
"relativeMountPath": "string",
"source": "string",
"username": "string"
},
"nfsMountConfiguration": {
"mountOptions": "string",
"relativeMountPath": "string",
"source": "string"
}
}
],
"networkConfiguration": {
"endpointConfiguration": {
"inboundNatPools": [
{
"backendPort": "int",
"frontendPortRangeEnd": "int",
"frontendPortRangeStart": "int",
"name": "string",
"networkSecurityGroupRules": [
{
"access": "string",
"priority": "int",
"sourceAddressPrefix": "string",
"sourcePortRanges": [ "string" ]
}
],
"protocol": "string"
}
]
},
"publicIPAddressConfiguration": {
"ipAddressIds": [ "string" ],
"provision": "string"
},
"subnetId": "string"
},
"scaleSettings": {
"autoScale": {
"evaluationInterval": "string",
"formula": "string"
},
"fixedScale": {
"nodeDeallocationOption": "string",
"resizeTimeout": "string",
"targetDedicatedNodes": "int",
"targetLowPriorityNodes": "int"
}
},
"startTask": {
"commandLine": "string",
"containerSettings": {
"containerRunOptions": "string",
"imageName": "string",
"registry": {
"password": "string",
"registryServer": "string",
"username": "string"
},
"workingDirectory": "string"
},
"environmentSettings": [
{
"name": "string",
"value": "string"
}
],
"maxTaskRetryCount": "int",
"resourceFiles": [
{
"autoStorageContainerName": "string",
"blobPrefix": "string",
"fileMode": "string",
"filePath": "string",
"httpUrl": "string",
"storageContainerUrl": "string"
}
],
"userIdentity": {
"autoUser": {
"elevationLevel": "string",
"scope": "string"
},
"userName": "string"
},
"waitForSuccess": "bool"
},
"taskSchedulingPolicy": {
"nodeFillType": "string"
},
"taskSlotsPerNode": "int",
"userAccounts": [
{
"elevationLevel": "string",
"linuxUserConfiguration": {
"gid": "int",
"sshPrivateKey": "string",
"uid": "int"
},
"name": "string",
"password": "string",
"windowsUserConfiguration": {
"loginMode": "string"
}
}
],
"vmSize": "string"
}
}
속성 값
ApplicationPackageReference
이름 | 묘사 | 값 |
---|---|---|
아이디 | 설치할 애플리케이션 패키지의 ID입니다. 풀과 동일한 일괄 처리 계정 내에 있어야 합니다. 특정 버전에 대한 참조이거나 기본 버전(있는 경우)일 수 있습니다. | string(필수) |
버전 | 이 버전을 생략하고 이 애플리케이션에 대해 기본 버전을 지정하지 않으면 오류 코드 InvalidApplicationPackageReferences와 함께 요청이 실패합니다. REST API를 직접 호출하는 경우 HTTP 상태 코드는 409입니다. | 문자열 |
AutoScaleSettings
이름 | 묘사 | 값 |
---|---|---|
evaluationInterval | 생략하면 기본값은 15분(PT15M)입니다. | 문자열 |
식 | 풀에서 원하는 수의 컴퓨팅 노드에 대한 수식입니다. | string(필수) |
AutoUserSpecification
이름 | 묘사 | 값 |
---|---|---|
elevationLevel | 기본값은 nonAdmin입니다. | 'Admin' 'NonAdmin' |
범위 | 기본값은 Pool입니다. 풀이 Windows를 실행하는 경우 작업 간에 더 엄격한 격리가 필요한 경우 작업 값을 지정해야 합니다. 예를 들어 태스크가 다른 작업에 영향을 미칠 수 있는 방식으로 레지스트리를 변경하거나 일반 작업에서 액세스할 수 없지만 시작 태스크에서 액세스할 수 있어야 하는 풀에 인증서를 지정한 경우입니다. | 'Pool' '작업' |
AzureBlobFileSystemConfiguration
이름 | 묘사 | 값 |
---|---|---|
accountKey | 이 속성은 sasKey와 함께 사용할 수 없으며 하나를 지정해야 합니다. | 문자열 |
accountName | Azure Storage 계정 이름입니다. | string(필수) |
blobfuseOptions | Windows의 '순 사용' 옵션과 Linux의 '탑재' 옵션입니다. | 문자열 |
containerName | Azure Blob Storage 컨테이너 이름입니다. | string(필수) |
relativeMountPath | 모든 파일 시스템은 Batch 탑재 디렉터리를 기준으로 탑재되며 AZ_BATCH_NODE_MOUNTS_DIR 환경 변수를 통해 액세스할 수 있습니다. | string(필수) |
sasKey | 이 속성은 accountKey와 함께 사용할 수 없으며 하나를 지정해야 합니다. | 문자열 |
AzureFileShareConfiguration
이름 | 묘사 | 값 |
---|---|---|
accountKey | Azure Storage 계정 키입니다. | string(필수) |
accountName | Azure Storage 계정 이름입니다. | string(필수) |
azureFileUrl | 'https://{account}.file.core.windows.net/' 형식입니다. | string(필수) |
mountOptions | Windows의 '순 사용' 옵션과 Linux의 '탑재' 옵션입니다. | 문자열 |
relativeMountPath | 모든 파일 시스템은 Batch 탑재 디렉터리를 기준으로 탑재되며 AZ_BATCH_NODE_MOUNTS_DIR 환경 변수를 통해 액세스할 수 있습니다. | string(필수) |
BatchPoolIdentity
이름 | 묘사 | 값 |
---|---|---|
형 | Batch 풀에 사용되는 ID의 형식입니다. | 'None' 'UserAssigned'(필수) |
userAssignedIdentities | Batch 풀과 연결된 사용자 ID 목록입니다. 사용자 ID 사전 키 참조는 '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}' 형식의 ARM 리소스 ID입니다. | BatchPoolIdentityUserAssignedIdentities |
BatchPoolIdentityUserAssignedIdentities
이름 | 묘사 | 값 |
---|
CertificateReference
이름 | 묘사 | 값 |
---|---|---|
아이디 | 풀에 설치할 인증서의 정규화된 ID입니다. 풀과 동일한 일괄 처리 계정 내에 있어야 합니다. | string(필수) |
storeLocation | 기본값은 currentUser입니다. 이 속성은 Windows 노드로 구성된 풀(즉, cloudServiceConfiguration을 사용하여 만들거나 Windows 이미지 참조를 사용하여 virtualMachineConfiguration을 사용하여 생성됨)에만 적용됩니다. Linux 컴퓨팅 노드의 경우 인증서는 작업 디렉터리 내의 디렉터리에 저장되고 AZ_BATCH_CERTIFICATES_DIR 환경 변수는 이 위치를 쿼리하기 위해 태스크에 제공됩니다. 'remoteUser'의 표시 유형이 있는 인증서의 경우 사용자의 홈 디렉터리(예: /home/{user-name}/certs)에 'certs' 디렉터리가 만들어지고 인증서가 해당 디렉터리에 배치됩니다. | 'CurrentUser' 'LocalMachine' |
storeName | 이 속성은 Windows 노드로 구성된 풀(즉, cloudServiceConfiguration을 사용하여 만들거나 Windows 이미지 참조를 사용하여 virtualMachineConfiguration을 사용하여 생성됨)에만 적용됩니다. 일반적인 저장소 이름에는 My, Root, CA, Trust, Disallowed, TrustedPeople, TrustedPublisher, AuthRoot, AddressBook 등이 있지만 사용자 지정 저장소 이름도 사용할 수 있습니다. 기본값은 My입니다. | 문자열 |
시정 | 컴퓨팅 노드의 사용자 계정이 인증서의 프라이빗 데이터에 액세스할 수 있어야 합니다. | 다음 중 어느 것을 포함하는 문자열 배열: 'RemoteUser' 'StartTask' '작업' |
CifsMountConfiguration
이름 | 묘사 | 값 |
---|---|---|
mountOptions | Windows의 '순 사용' 옵션과 Linux의 '탑재' 옵션입니다. | 문자열 |
암호 | CIFS 파일 시스템에 대한 인증에 사용할 암호입니다. | string(필수) |
relativeMountPath | 모든 파일 시스템은 Batch 탑재 디렉터리를 기준으로 탑재되며 AZ_BATCH_NODE_MOUNTS_DIR 환경 변수를 통해 액세스할 수 있습니다. | string(필수) |
근원 | 탑재할 파일 시스템의 URI입니다. | string(필수) |
사용자 이름 | CIFS 파일 시스템에 대한 인증에 사용할 사용자입니다. | string(필수) |
CloudServiceConfiguration
이름 | 묘사 | 값 |
---|---|---|
osFamily | 가능한 값은 Windows Server 2008 R2 SP1과 동일한 2 - OS 제품군 2입니다. 3 - WINDOWS Server 2012와 동일한 OS 제품군 3. 4 - WINDOWS Server 2012 R2와 동일한 OS 제품군 4 5 - WINDOWS Server 2016에 해당하는 OS 제품군 5. 6 - WINDOWS Server 2019에 해당하는 OS 제품군 6. 자세한 내용은 Azure 게스트 OS 릴리스(https://azure.microsoft.com/documentation/articles/cloud-services-guestos-update-matrix/#releases)를 참조하세요. | string(필수) |
osVersion | 기본값은 지정된 OS 제품군의 최신 운영 체제 버전을 지정하는 *입니다. | 문자열 |
Components81XseeSchemasBatchpoolidentityPropertiesUserassignedidentitiesAdditionalproperties
이름 | 묘사 | 값 |
---|
ContainerConfiguration
이름 | 묘사 | 값 |
---|---|---|
containerImageNames | "docker pull"에 지정된 것처럼 전체 이미지 참조입니다. 이미지가 대체 레지스트리로 정규화되지 않는 한 이미지는 기본 Docker 레지스트리에서 원본이 됩니다. | string[] |
containerRegistries | 자격 증명이 필요한 프라이빗 레지스트리에서 이미지를 다운로드해야 하는 경우 해당 자격 증명을 여기에 제공해야 합니다. | ContainerRegistry[] |
형 | 사용할 컨테이너 기술입니다. | 'DockerCompatible'(필수) |
ContainerRegistry
이름 | 묘사 | 값 |
---|---|---|
암호 | 레지스트리 서버에 로그인할 암호입니다. | string(필수) |
registryServer | 생략하면 기본값은 "docker.io"입니다. | 문자열 |
사용자 이름 | 레지스트리 서버에 로그인할 사용자 이름입니다. | string(필수) |
DataDisk
이름 | 묘사 | 값 |
---|---|---|
캐싱 | 값은 다음과 같습니다. none - 디스크의 캐싱 모드를 사용할 수 없습니다. readOnly - 디스크의 캐싱 모드는 읽기 전용입니다. readWrite - 디스크의 캐싱 모드를 읽고 씁니다. 캐싱의 기본값은 none입니다. 캐싱 옵션에 대한 자세한 내용은 다음을 참조하세요. https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/. |
'None' 'ReadOnly' 'ReadWrite' |
diskSizeGB | 새 데이터 디스크를 만들 때의 초기 디스크 크기(GB)입니다. | int(필수) |
lun | lun은 각 데이터 디스크를 고유하게 식별하는 데 사용됩니다. 여러 디스크를 연결하는 경우 각각 고유한 lun이 있어야 합니다. 값은 0에서 63 사이여야 합니다. | int(필수) |
storageAccountType | 생략하면 기본값은 "Standard_LRS"입니다. 값은 다음과 같습니다. Standard_LRS - 데이터 디스크는 표준 로컬 중복 스토리지를 사용해야 합니다. Premium_LRS - 데이터 디스크는 프리미엄 로컬 중복 스토리지를 사용해야 합니다. |
'Premium_LRS' 'Standard_LRS' |
DeploymentConfiguration
이름 | 묘사 | 값 |
---|---|---|
cloudServiceConfiguration | 이 속성과 virtualMachineConfiguration은 함께 사용할 수 없으며 속성 중 하나를 지정해야 합니다. Batch 계정이 poolAllocationMode 속성을 'UserSubscription'으로 설정하여 만든 경우 이 속성을 지정할 수 없습니다. | cloudServiceConfiguration |
virtualMachineConfiguration | 이 속성과 cloudServiceConfiguration은 함께 사용할 수 없으며 속성 중 하나를 지정해야 합니다. | VirtualMachineConfiguration |
DiskEncryptionConfiguration
이름 | 묘사 | 값 |
---|---|---|
대상 | Linux 풀에서는 "TemporaryDisk"만 지원됩니다. Windows 풀에서 "OsDisk" 및 "TemporaryDisk"를 지정해야 합니다. | 다음 중 어느 것을 포함하는 문자열 배열: 'OsDisk' 'TemporaryDisk' |
EnvironmentSetting
이름 | 묘사 | 값 |
---|---|---|
이름 | 환경 변수의 이름입니다. | string(필수) |
값 | 환경 변수의 값입니다. | 문자열 |
FixedScaleSettings
이름 | 묘사 | 값 |
---|---|---|
nodeDeallocationOption | 생략하면 기본값은 Requeue입니다. | 'Requeue' 'RetainedData' 'TaskCompletion' 'Terminate' |
resizeTimeout | 기본값은 15분입니다. 시간 제한 값은 ISO 8601 형식을 사용합니다. 예를 들어 10분 동안 PT10M을 사용합니다. 최소값은 5분입니다. 5분 미만의 값을 지정하면 Batch 서비스가 오류와 함께 요청을 거부합니다. REST API를 직접 호출하는 경우 HTTP 상태 코드는 400(잘못된 요청)입니다. | 문자열 |
targetDedicatedNodes | targetDedicatedNodes 중 하나 이상을 targetLowPriorityNodes를 설정해야 합니다. | int |
targetLowPriorityNodes | targetDedicatedNodes 중 하나 이상을 targetLowPriorityNodes를 설정해야 합니다. | int |
ImageReference
이름 | 묘사 | 값 |
---|---|---|
아이디 | 이 속성은 다른 속성과 함께 사용할 수 없습니다. 공유 이미지 갤러리 이미지에는 Azure Batch 계정과 동일한 지역에 복제본이 있어야 합니다. Batch 서비스와 통신하는 Batch 노드 에이전트의 방화벽 설정에 대한 자세한 내용은 /azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration을 참조하세요. | 문자열 |
제공 | 예를 들어 UbuntuServer 또는 WindowsServer입니다. | 문자열 |
게시자 | 예를 들어 Canonical 또는 MicrosoftWindowsServer입니다. | 문자열 |
sku | 예를 들어 18.04-LTS 또는 2019-Datacenter입니다. | 문자열 |
버전 | 'latest' 값을 지정하여 최신 버전의 이미지를 선택할 수 있습니다. 생략하면 기본값은 'latest'입니다. | 문자열 |
InboundNatPool
이름 | 묘사 | 값 |
---|---|---|
backendPort | Batch 풀 내에서 고유해야 합니다. 허용되는 값은 22, 3389, 29876 및 29877을 제외하고 1에서 65535 사이입니다. 예약된 값이 제공되면 HTTP 상태 코드 400으로 요청이 실패합니다. | int(필수) |
frontendPortRangeEnd | 허용되는 값 범위는 Batch 서비스에서 예약한 포트 50000에서 55000 사이를 제외하고 1에서 65534 사이입니다. 풀 내의 모든 범위는 고유해야 하며 겹칠 수 없습니다. 예약되거나 겹치는 값이 제공되면 HTTP 상태 코드 400으로 요청이 실패합니다. | int(필수) |
frontendPortRangeStart | 허용되는 값은 예약된 포트 50000에서 55000을 제외하고 1에서 65534 사이의 범위입니다. 풀 내의 모든 범위는 고유해야 하며 겹칠 수 없습니다. 예약되거나 겹치는 값이 제공되면 HTTP 상태 코드 400으로 요청이 실패합니다. | int(필수) |
이름 | 이름은 Batch 풀 내에서 고유해야 하며 문자, 숫자, 밑줄, 마침표 및 하이픈을 포함할 수 있습니다. 이름은 문자 또는 숫자로 시작해야 하고 문자, 숫자 또는 밑줄로 끝나야 하며 77자를 초과할 수 없습니다. 잘못된 값이 제공되면 HTTP 상태 코드 400으로 요청이 실패합니다. | string(필수) |
networkSecurityGroupRules | Batch 풀의 모든 엔드포인트에서 지정할 수 있는 최대 규칙 수는 25개입니다. 네트워크 보안 그룹 규칙을 지정하지 않으면 지정된 backendPort에 대한 인바운드 액세스를 허용하는 기본 규칙이 만들어집니다. 네트워크 보안 그룹 규칙의 최대 수를 초과하는 경우 HTTP 상태 코드 400으로 요청이 실패합니다. | networkSecurityGroupRule |
프로토콜 | 엔드포인트의 프로토콜입니다. | 'TCP' 'UDP'(필수) |
LinuxUserConfiguration
이름 | 묘사 | 값 |
---|---|---|
gid | uid 및 gid 속성은 함께 지정하거나 지정하지 않아야 합니다. 지정하지 않으면 기본 운영 체제에서 gid를 선택합니다. | int |
sshPrivateKey | 프라이빗 키는 암호로 보호되어서는 안 됩니다. 프라이빗 키는 풀의 enableInterNodeCommunication 속성이 true일 때 Linux 풀의 노드 간에 SSH에 대한 비대칭 키 기반 인증을 자동으로 구성하는 데 사용됩니다(enableInterNodeCommunication이 false이면 무시됨). 이 작업은 키 쌍을 사용자의 .ssh 디렉터리에 배치하여 수행합니다. 지정하지 않으면 암호 없는 SSH가 노드 간에 구성되지 않습니다(사용자의 .ssh 디렉터리를 수정하지 않음). | 문자열 |
uid | uid 및 gid 속성은 함께 지정하거나 지정하지 않아야 합니다. 지정하지 않으면 기본 운영 체제에서 uid를 선택합니다. | int |
MetadataItem
이름 | 묘사 | 값 |
---|---|---|
이름 | 메타데이터 항목의 이름입니다. | string(필수) |
값 | 메타데이터 항목의 값입니다. | string(필수) |
Microsoft.Batch/batchAccounts/pools
이름 | 묘사 | 값 |
---|---|---|
apiVersion | api 버전 | '2021-01-01' |
신원 | Batch 풀에 사용되는 ID의 형식입니다. | BatchPoolIdentity |
이름 | 리소스 이름 | 문자열 제약 조건: 최소 길이 = 1 최대 길이 = 1 패턴 = ^[a-zA-Z0-9_-]+$ (필수) |
속성 | 풀과 연결된 속성입니다. | PoolProperties |
형 | 리소스 종류 | 'Microsoft.Batch/batchAccounts/pools' |
MountConfiguration
이름 | 묘사 | 값 |
---|---|---|
azureBlobFileSystemConfiguration | 이 속성은 다른 모든 속성과 함께 사용할 수 없습니다. | AzureBlobFileSystemConfiguration |
azureFileShareConfiguration | 이 속성은 다른 모든 속성과 함께 사용할 수 없습니다. | AzureFileShareConfiguration |
cifsMountConfiguration | 이 속성은 다른 모든 속성과 함께 사용할 수 없습니다. | CifsMountConfiguration |
nfsMountConfiguration | 이 속성은 다른 모든 속성과 함께 사용할 수 없습니다. | NFSMountConfiguration |
NetworkConfiguration
이름 | 묘사 | 값 |
---|---|---|
endpointConfiguration | 풀 엔드포인트 구성은 virtualMachineConfiguration 속성이 있는 풀에서만 지원됩니다. | poolEndpointConfiguration |
publicIPAddressConfiguration | 이 속성은 virtualMachineConfiguration 속성이 있는 풀에서만 지원됩니다. | PublicIPAddressConfiguration |
subnetId | 가상 네트워크는 Azure Batch 계정과 동일한 지역 및 구독에 있어야 합니다. 지정된 서브넷에는 풀의 노드 수를 수용하기에 충분한 사용 가능한 IP 주소가 있어야 합니다. 서브넷에 사용 가능한 IP 주소가 충분하지 않으면 풀에서 컴퓨팅 노드를 부분적으로 할당하고 크기 조정 오류가 발생합니다. 'MicrosoftAzureBatch' 서비스 주체에는 지정된 VNet에 대한 '클래식 가상 머신 기여자' Role-Based RBAC(Access Control) 역할이 있어야 합니다. 지정된 서브넷은 Azure Batch 서비스의 통신이 컴퓨팅 노드에서 작업을 예약할 수 있도록 허용해야 합니다. 지정된 VNet에 연결된 NSG(네트워크 보안 그룹)가 있는지 확인하여 확인할 수 있습니다. 지정된 서브넷의 컴퓨팅 노드에 대한 통신이 NSG에 의해 거부되면 Batch 서비스는 컴퓨팅 노드의 상태를 사용할 수 없도록 설정합니다. 지정된 VNet에 연결된 NSG(네트워크 보안 그룹)가 있는 경우 인바운드 통신에 대해 몇 가지 예약된 시스템 포트를 사용하도록 설정해야 합니다. 가상 머신 구성을 사용하여 만든 풀의 경우 29876 및 29877 포트와 Linux용 포트 22 및 Windows용 포트 3389를 사용하도록 설정합니다. 클라우드 서비스 구성을 사용하여 만든 풀의 경우 포트 10100, 20100 및 30100을 사용하도록 설정합니다. 또한 포트 443에서 Azure Storage에 대한 아웃바운드 연결을 사용하도록 설정합니다. cloudServiceConfiguration 풀의 경우 '클래식' VNET만 지원됩니다. 자세한 내용은 다음을 참조하세요. /azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration | 문자열 |
NetworkSecurityGroupRule
이름 | 묘사 | 값 |
---|---|---|
접근 | 지정된 IP 주소, 서브넷 범위 또는 태그에 대해 수행해야 하는 작업입니다. | '허용' 'Deny'(필수) |
우선권 | 풀 내의 우선 순위는 고유해야 하며 우선 순위 순서대로 평가됩니다. 숫자가 낮을수록 우선 순위가 높습니다. 예를 들어 순서 번호가 150, 250 및 350인 규칙을 지정할 수 있습니다. 순서 번호가 150인 규칙이 순서가 250인 규칙보다 우선합니다. 허용되는 우선 순위는 150~4096입니다. 예약되거나 중복된 값이 제공되면 HTTP 상태 코드 400으로 요청이 실패합니다. | int(필수) |
sourceAddressPrefix | 유효한 값은 단일 IP 주소(예: 10.10.10.10), IP 서브넷(예: 192.168.1.0/24), 기본 태그 또는 *(모든 주소의 경우)입니다. 다른 값이 제공되면 HTTP 상태 코드 400으로 요청이 실패합니다. | string(필수) |
sourcePortRanges | 유효한 값은 '*'(모든 포트 0 - 65535) 또는 포트 또는 포트 범위 배열(예: 100-200)입니다. 포트는 0~65535 범위여야 하며 포트 범위 또는 포트는 겹칠 수 없습니다. 다른 값이 제공되면 HTTP 상태 코드 400으로 요청이 실패합니다. 기본값은 *입니다. | string[] |
NFSMountConfiguration
이름 | 묘사 | 값 |
---|---|---|
mountOptions | Windows의 '순 사용' 옵션과 Linux의 '탑재' 옵션입니다. | 문자열 |
relativeMountPath | 모든 파일 시스템은 Batch 탑재 디렉터리를 기준으로 탑재되며 AZ_BATCH_NODE_MOUNTS_DIR 환경 변수를 통해 액세스할 수 있습니다. | string(필수) |
근원 | 탑재할 파일 시스템의 URI입니다. | string(필수) |
NodePlacementConfiguration
이름 | 묘사 | 값 |
---|---|---|
정책 | Batch 서비스에서 노드를 프로비전하는 데 사용하는 할당 정책입니다. 지정하지 않으면 Batch는 지역 정책을 사용합니다. | '지역' '영역' |
PoolEndpointConfiguration
이름 | 묘사 | 값 |
---|---|---|
inboundNatPools | Batch 풀당 최대 인바운드 NAT 풀 수는 5개입니다. 인바운드 NAT 풀의 최대 수를 초과하는 경우 HTTP 상태 코드 400으로 요청이 실패합니다. IPAddressProvisioningType이 NoPublicIPAddresses인 경우 이를 지정할 수 없습니다. | InboundNatPool[] (필수) |
PoolProperties
이름 | 묘사 | 값 |
---|---|---|
applicationLicenses | 애플리케이션 라이선스 목록은 사용 가능한 Batch 서비스 애플리케이션 라이선스의 하위 집합이어야 합니다. 지원되지 않는 라이선스가 요청되면 풀 만들기가 실패합니다. | string[] |
applicationPackages | 애플리케이션 패키지 참조에 대한 변경 내용은 풀에 조인하는 모든 새 컴퓨팅 노드에 영향을 주지만 다시 부팅하거나 이미지로 다시 설치할 때까지 풀에 이미 있는 컴퓨팅 노드에는 영향을 미치지 않습니다. 지정된 풀에는 최대 10개의 애플리케이션 패키지 참조가 있습니다. | applicationPackageReference |
인증서 | Windows 컴퓨팅 노드의 경우 Batch 서비스는 지정된 인증서 저장소 및 위치에 인증서를 설치합니다. Linux 컴퓨팅 노드의 경우 인증서는 작업 디렉터리 내의 디렉터리에 저장되고 AZ_BATCH_CERTIFICATES_DIR 환경 변수는 이 위치를 쿼리하기 위해 태스크에 제공됩니다. 'remoteUser'의 표시 유형이 있는 인증서의 경우 사용자의 홈 디렉터리(예: /home/{user-name}/certs)에 'certs' 디렉터리가 만들어지고 인증서가 해당 디렉터리에 배치됩니다. | CertificateReference[] |
deploymentConfiguration | CloudServiceConfiguration을 사용하면 노드가 PaaS(Azure Cloud Services)를 사용하여 만들어야 하는 반면 VirtualMachineConfiguration은 Azure Virtual Machines(IaaS)를 사용합니다. | DeploymentConfiguration |
displayName | 표시 이름은 고유할 필요가 없으며 최대 길이 1024까지 유니코드 문자를 포함할 수 있습니다. | 문자열 |
interNodeCommunication | 이렇게 하면 풀에 할당할 수 있는 노드에 제한이 적용됩니다. 이 값을 사용하도록 설정하면 요청된 노드 수가 풀에 할당될 가능성을 줄일 수 있습니다. 지정하지 않으면 이 값은 기본적으로 'Disabled'로 설정됩니다. | '사용 안 함' 'Enabled' |
메타데이터 | Batch 서비스는 메타데이터에 어떤 의미도 할당하지 않습니다. 사용자 코드를 사용하기 위한 것입니다. | MetadataItem[] |
mountConfiguration | Azure Files, NFS, CIFS/SMB 및 Blobfuse를 지원합니다. | MountConfiguration[] |
networkConfiguration | 풀에 대한 네트워크 구성입니다. | networkConfiguration |
scaleSettings | 풀의 원하는 크기를 정의합니다. 요청된 targetDedicatedNodes가 지정된 'fixedScale'이나 주기적으로 다시 평가되는 수식을 정의하는 'autoScale'일 수 있습니다. 이 속성을 지정하지 않으면 풀은 targetDedicatedNodes가 0인 고정된 배율을 갖습니다. | ScaleSettings |
startTask | PATCH(업데이트) 작업에서 이 속성을 빈 개체로 설정하여 풀에서 시작 작업을 제거할 수 있습니다. | StartTask |
taskSchedulingPolicy | 지정하지 않으면 기본값이 분산됩니다. | TaskSchedulingPolicy |
taskSlotsPerNode | 기본값은 1입니다. 최대값은 풀의 vmSize 코어 수의 4배 또는 256의 작은 값입니다. | int |
userAccounts | 풀의 각 노드에서 만들 사용자 계정 목록입니다. | userAccount |
vmSize | Cloud Services 풀에 사용 가능한 가상 머신 크기(cloudServiceConfiguration으로 만든 풀)에 대한 자세한 내용은 Cloud Services 크기(https://azure.microsoft.com/documentation/articles/cloud-services-sizes-specs/)를 참조하세요. Batch는 ExtraSmall을 제외한 모든 Cloud Services VM 크기를 지원합니다. Virtual Machines Marketplace(virtualMachineConfiguration으로 만든 풀)의 이미지를 사용하여 풀에 사용할 수 있는 VM 크기에 대한 자세한 내용은 Virtual Machines 크기(linux)(https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) 또는 Virtual Machines(Windows)의 크기(https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/)를 참조하세요. Batch는 STANDARD_A0 및 Premium Storage(STANDARD_GS, STANDARD_DS 및 STANDARD_DSV2 시리즈)를 제외한 모든 Azure VM 크기를 지원합니다. | 문자열 |
PublicIPAddressConfiguration
이름 | 묘사 | 값 |
---|---|---|
ipAddressIds | 여기에 지정된 IP 수는 풀의 최대 크기를 제한합니다. 전용 노드 100개 또는 우선 순위가 낮은 노드 100개는 각 공용 IP에 할당할 수 있습니다. 예를 들어 250개의 전용 VM이 필요한 풀에는 3개 이상의 공용 IP가 지정되어 있어야 합니다. 이 컬렉션의 각 요소는 /subscriptions/{subscription}/resourceGroups/{group}/providers/Microsoft.Network/publicIPAddresses/{ip}형식입니다. | string[] |
제공 | 기본값은 BatchManaged입니다. | 'BatchManaged' 'NoPublicIPAddresses' 'UserManaged' |
ResourceFile
이름 | 묘사 | 값 |
---|---|---|
autoStorageContainerName | autoStorageContainerName, storageContainerUrl 및 httpUrl 속성은 상호 배타적이며 그 중 하나를 지정해야 합니다. | 문자열 |
blobPrefix | 이 속성은 autoStorageContainerName 또는 storageContainerUrl을 사용하는 경우에만 유효합니다. 이 접두사는 부분 파일 이름 또는 하위 디렉터리일 수 있습니다. 접두사를 지정하지 않으면 컨테이너의 모든 파일이 다운로드됩니다. | 문자열 |
fileMode | 이 속성은 Linux 컴퓨팅 노드에 다운로드되는 파일에만 적용됩니다. Windows 노드에 다운로드할 resourceFile에 대해 지정된 경우 무시됩니다. Linux 노드에 대해 이 속성을 지정하지 않으면 기본값인 0770이 파일에 적용됩니다. | 문자열 |
filePath | httpUrl 속성을 지정하면 filePath가 필요하며 파일 이름을 포함하여 파일을 다운로드할 경로를 설명합니다. 그렇지 않으면 autoStorageContainerName 또는 storageContainerUrl 속성이 지정된 경우 filePath는 선택 사항이며 파일을 다운로드할 디렉터리입니다. filePath가 디렉터리로 사용되는 경우 입력 데이터와 이미 연결된 모든 디렉터리 구조가 전체로 유지되고 지정된 filePath 디렉터리에 추가됩니다. 지정된 상대 경로가 작업의 작업 디렉터리에서 분리될 수 없습니다(예: '..'을 사용). | 문자열 |
httpUrl | autoStorageContainerName, storageContainerUrl 및 httpUrl 속성은 상호 배타적이며 그 중 하나를 지정해야 합니다. URL이 Azure Blob Storage인 경우 익명 액세스를 사용하여 읽을 수 있어야 합니다. 즉, Batch 서비스는 Blob을 다운로드할 때 자격 증명을 제공하지 않습니다. Azure Storage에서 Blob에 대한 이러한 URL을 가져오는 방법에는 Blob에 대한 읽기 권한을 부여하는 SAS(공유 액세스 서명)를 포함하거나 공용 액세스를 허용하도록 Blob 또는 해당 컨테이너에 대한 ACL을 설정하는 두 가지 방법이 있습니다. | 문자열 |
storageContainerUrl | autoStorageContainerName, storageContainerUrl 및 httpUrl 속성은 상호 배타적이며 그 중 하나를 지정해야 합니다. 익명 액세스를 사용하여 이 URL을 읽을 수 있고 나열할 수 있어야 합니다. 즉, Batch 서비스는 Blob을 다운로드할 때 자격 증명을 제공하지 않습니다. Azure Storage에서 Blob에 대한 이러한 URL을 가져오는 방법에는 Blob에 대한 읽기 및 목록 권한을 부여하는 SAS(공유 액세스 서명)를 포함하거나 공용 액세스를 허용하도록 Blob 또는 해당 컨테이너에 대한 ACL을 설정하는 두 가지 방법이 있습니다. | 문자열 |
ScaleSettings
이름 | 묘사 | 값 |
---|---|---|
autoScale | 이 속성과 fixedScale은 함께 사용할 수 없으며 속성 중 하나를 지정해야 합니다. | AutoScaleSettings |
fixedScale | 이 속성과 자동 크기 조정은 함께 사용할 수 없으며 속성 중 하나를 지정해야 합니다. | FixedScaleSettings |
StartTask
이름 | 묘사 | 값 |
---|---|---|
commandLine | 명령줄은 셸에서 실행되지 않으므로 환경 변수 확장과 같은 셸 기능을 활용할 수 없습니다. 이러한 기능을 활용하려면 명령줄에서 셸을 호출해야 합니다(예: Windows에서 "cmd /c MyCommand"를 사용하거나 Linux에서 "/bin/sh -c MyCommand"). startTask의 다른 속성이 지정된 경우 필수입니다. | 문자열 |
containerSettings | 이 옵션을 지정하면 AZ_BATCH_NODE_ROOT_DIR 아래의 모든 디렉터리(노드의 Azure Batch 디렉터리 루트)가 컨테이너에 매핑되고, 모든 작업 환경 변수가 컨테이너에 매핑되고, 태스크 명령줄이 컨테이너에서 실행됩니다. | TaskContainerSettings |
environmentSettings | 시작 작업에 대한 환경 변수 설정 목록입니다. | EnvironmentSetting[] |
maxTaskRetryCount | Batch 서비스는 종료 코드가 0이 아닌 경우 작업을 다시 시도합니다. 이 값은 특히 재시도 횟수를 제어합니다. Batch 서비스는 작업을 한 번 시도한 다음 이 제한까지 다시 시도할 수 있습니다. 예를 들어 최대 재시도 횟수가 3인 경우 Batch는 작업을 최대 4번(초기 시도 1회, 재시도 3회)을 시도합니다. 최대 재시도 횟수가 0이면 Batch 서비스에서 작업을 다시 시도하지 않습니다. 최대 재시도 횟수가 -1이면 Batch 서비스는 제한 없이 작업을 다시 시도합니다. | int |
resourceFiles | 명령줄을 실행하기 전에 Batch 서비스가 컴퓨팅 노드에 다운로드할 파일 목록입니다. | ResourceFile |
userIdentity | 생략하면 태스크가 작업에 고유한 비관리 사용자로 실행됩니다. | UserIdentity |
waitForSuccess | true이고 컴퓨팅 노드에서 시작 작업이 실패하면 Batch 서비스는 최대 재시도 횟수(maxTaskRetryCount)까지 시작 작업을 다시 시도합니다. 모든 재시도 후에도 작업이 성공적으로 완료되지 않은 경우 Batch 서비스는 컴퓨팅 노드를 사용할 수 없도록 표시하고 작업을 예약하지 않습니다. 이 조건은 노드 상태 및 예약 오류 세부 정보를 통해 검색할 수 있습니다. false이면 Batch 서비스는 시작 작업이 완료될 때까지 기다리지 않습니다. 이 경우 시작 태스크가 계속 실행되는 동안 다른 태스크가 컴퓨팅 노드에서 실행을 시작할 수 있습니다. 시작 작업이 실패하더라도 노드에서 새 작업이 계속 예약됩니다. 기본값은 true입니다. | bool |
TaskContainerSettings
이름 | 묘사 | 값 |
---|---|---|
containerRunOptions | 이러한 추가 옵션은 Batch 서비스에서 제어하는 옵션 외에도 "docker create" 명령에 대한 인수로 제공됩니다. | 문자열 |
imageName | "docker pull"에 지정된 것처럼 전체 이미지 참조입니다. 이미지 이름의 일부로 태그가 제공되지 않으면 ":latest" 태그가 기본값으로 사용됩니다. | string(필수) |
레지스트리 | 풀을 만들 때 이미 제공된 경우 이 설정을 생략할 수 있습니다. | ContainerRegistry |
workingDirectory | 컨테이너 작업 디렉터리의 위치를 나타내는 플래그입니다. 기본값은 'taskWorkingDirectory'입니다. | 'ContainerImageDefault' 'TaskWorkingDirectory' |
TaskSchedulingPolicy
이름 | 묘사 | 값 |
---|---|---|
nodeFillType | 태스크를 컴퓨팅 노드에 분산하는 방법 | 'Pack' 'Spread'(필수) |
UserAccount
이름 | 묘사 | 값 |
---|---|---|
elevationLevel | nonAdmin - 자동 사용자는 상승된 액세스 권한이 없는 표준 사용자입니다. admin - 자동 사용자는 상승된 액세스 권한을 가진 사용자이며 전체 관리자 권한으로 작동합니다. 기본값은 nonAdmin입니다. | 'Admin' 'NonAdmin' |
linuxUserConfiguration | Windows 풀에 지정된 경우 이 속성은 무시됩니다. 지정하지 않으면 기본 옵션을 사용하여 사용자가 만들어집니다. | LinuxUserConfiguration |
이름 | 사용자 계정의 이름입니다. | string(필수) |
암호 | 사용자 계정의 암호입니다. | string(필수) |
windowsUserConfiguration | 이 속성은 사용자가 Windows 풀에 있는 경우에만 지정할 수 있습니다. 지정하지 않은 경우 Windows 풀에서 기본 옵션을 사용하여 사용자를 만듭니다. | WindowsUserConfiguration |
UserIdentity
이름 | 묘사 | 값 |
---|---|---|
autoUser | userName 및 autoUser 속성은 상호 배타적입니다. 둘 다 지정해야 하지만 둘 다 지정하지는 않습니다. | AutoUserSpecification |
userName | userName 및 autoUser 속성은 상호 배타적입니다. 둘 다 지정해야 하지만 둘 다 지정하지는 않습니다. | 문자열 |
VirtualMachineConfiguration
이름 | 묘사 | 값 |
---|---|---|
containerConfiguration | 지정된 경우 태스크가 컨테이너에서 실행되도록 풀의 각 노드에서 설치가 수행됩니다. 이 풀에서 실행되는 모든 일반 작업 및 작업 관리자 작업은 containerSettings 속성을 지정해야 하며, 다른 모든 작업에서 지정할 수 있습니다. | ContainerConfiguration |
dataDisks | 풀의 컴퓨팅 노드에 빈 데이터 디스크가 연결되어 있어야 하는 경우 이 속성을 지정해야 합니다. | dataDisk |
diskEncryptionConfiguration | 지정된 경우 노드 프로비전 중에 풀의 각 노드에서 암호화가 수행됩니다. | diskEncryptionConfiguration |
확장 | 지정된 경우 이 구성에 언급된 확장이 각 노드에 설치됩니다. | VMExtension |
imageReference | 사용자 지정 Virtual Machine의 Azure Virtual Machines Marketplace 이미지 또는 Azure 이미지 리소스에 대한 참조입니다. Azure Batch에서 확인된 모든 imageReferences 목록을 얻으려면 '지원되는 노드 에이전트 SKU 나열' 작업을 참조하세요. | imageReference |
licenseType | 이는 Windows 운영 체제를 포함하는 이미지에만 적용되며 배포될 노드에 대해 유효한 온-프레미스 라이선스를 보유하는 경우에만 사용해야 합니다. 생략하면 온-프레미스 라이선스 할인이 적용되지 않습니다. 값은 다음과 같습니다. Windows_Server - 온-프레미스 라이선스는 Windows Server용입니다. Windows_Client - 온-프레미스 라이선스는 Windows 클라이언트용입니다. |
문자열 |
nodeAgentSkuId | Batch 노드 에이전트는 풀의 각 노드에서 실행되는 프로그램이며 노드와 Batch 서비스 간의 명령 및 제어 인터페이스를 제공합니다. 여러 운영 체제에 대해 SKU라고 하는 노드 에이전트의 구현이 다릅니다. 선택한 이미지 참조와 일치하는 노드 에이전트 SKU를 지정해야 합니다. 확인된 이미지 참조 목록과 함께 지원되는 노드 에이전트 SKU 목록을 얻으려면 '지원되는 노드 에이전트 SKU 나열' 작업을 참조하세요. | string(필수) |
nodePlacementConfiguration | 이 구성은 풀의 노드를 물리적으로 할당하는 방법에 대한 규칙을 지정합니다. | nodePlacementConfiguration |
windowsConfiguration | imageReference가 Linux OS 이미지를 지정하는 경우 이 속성을 지정해서는 안 됩니다. | windowsConfiguration |
VMExtension
이름 | 묘사 | 값 |
---|---|---|
autoUpgradeMinorVersion | 배포 시 사용할 수 있는 경우 확장에서 최신 부 버전을 사용해야 하는지 여부를 나타냅니다. 그러나 배포된 후에는 이 속성이 true로 설정되어 있더라도 재배포하지 않는 한 확장은 부 버전을 업그레이드하지 않습니다. | bool |
이름 | 가상 머신 확장의 이름입니다. | string(필수) |
protectedSettings | 확장에는 protectedSettings 또는 protectedSettingsFromKeyVault 또는 보호된 설정이 전혀 포함될 수 없습니다. | 어떤 |
provisionAfterExtensions | 이 확장을 프로비전해야 하는 확장 이름 컬렉션입니다. | string[] |
게시자 | 확장 처리기 게시자의 이름입니다. | string(필수) |
설정 | 확장에 대한 JSON 형식의 공용 설정입니다. | 어떤 |
형 | 확장의 형식입니다. | string(필수) |
typeHandlerVersion | 스크립트 처리기의 버전입니다. | 문자열 |
WindowsConfiguration
이름 | 묘사 | 값 |
---|---|---|
enableAutomaticUpdates | 생략하면 기본값이 true입니다. | bool |
WindowsUserConfiguration
이름 | 묘사 | 값 |
---|---|---|
loginMode | 사용자의 로그인 모드를 지정합니다. VirtualMachineConfiguration 풀의 기본값은 대화형 모드이며 CloudServiceConfiguration 풀의 경우 일괄 처리 모드입니다. | 'Batch' 'Interactive' |
빠른 시작 템플릿
다음 빠른 시작 템플릿은 이 리소스 유형을 배포합니다.
Terraform(AzAPI 공급자) 리소스 정의
batchAccounts/pools 리소스 종류는 다음을 대상으로 하는 작업으로 배포할 수 있습니다.
- 리소스 그룹
각 API 버전에서 변경된 속성 목록은 변경 로그참조하세요.
리소스 형식
Microsoft.Batch/batchAccounts/pools 리소스를 만들려면 템플릿에 다음 Terraform을 추가합니다.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.Batch/batchAccounts/pools@2021-01-01"
name = "string"
identity = {
type = "string"
userAssignedIdentities = {
{customized property} = {
}
}
}
body = jsonencode({
properties = {
applicationLicenses = [
"string"
]
applicationPackages = [
{
id = "string"
version = "string"
}
]
certificates = [
{
id = "string"
storeLocation = "string"
storeName = "string"
visibility = [
"string"
]
}
]
deploymentConfiguration = {
cloudServiceConfiguration = {
osFamily = "string"
osVersion = "string"
}
virtualMachineConfiguration = {
containerConfiguration = {
containerImageNames = [
"string"
]
containerRegistries = [
{
password = "string"
registryServer = "string"
username = "string"
}
]
type = "DockerCompatible"
}
dataDisks = [
{
caching = "string"
diskSizeGB = int
lun = int
storageAccountType = "string"
}
]
diskEncryptionConfiguration = {
targets = [
"string"
]
}
extensions = [
{
autoUpgradeMinorVersion = bool
name = "string"
protectedSettings = ?
provisionAfterExtensions = [
"string"
]
publisher = "string"
settings = ?
type = "string"
typeHandlerVersion = "string"
}
]
imageReference = {
id = "string"
offer = "string"
publisher = "string"
sku = "string"
version = "string"
}
licenseType = "string"
nodeAgentSkuId = "string"
nodePlacementConfiguration = {
policy = "string"
}
windowsConfiguration = {
enableAutomaticUpdates = bool
}
}
}
displayName = "string"
interNodeCommunication = "string"
metadata = [
{
name = "string"
value = "string"
}
]
mountConfiguration = [
{
azureBlobFileSystemConfiguration = {
accountKey = "string"
accountName = "string"
blobfuseOptions = "string"
containerName = "string"
relativeMountPath = "string"
sasKey = "string"
}
azureFileShareConfiguration = {
accountKey = "string"
accountName = "string"
azureFileUrl = "string"
mountOptions = "string"
relativeMountPath = "string"
}
cifsMountConfiguration = {
mountOptions = "string"
password = "string"
relativeMountPath = "string"
source = "string"
username = "string"
}
nfsMountConfiguration = {
mountOptions = "string"
relativeMountPath = "string"
source = "string"
}
}
]
networkConfiguration = {
endpointConfiguration = {
inboundNatPools = [
{
backendPort = int
frontendPortRangeEnd = int
frontendPortRangeStart = int
name = "string"
networkSecurityGroupRules = [
{
access = "string"
priority = int
sourceAddressPrefix = "string"
sourcePortRanges = [
"string"
]
}
]
protocol = "string"
}
]
}
publicIPAddressConfiguration = {
ipAddressIds = [
"string"
]
provision = "string"
}
subnetId = "string"
}
scaleSettings = {
autoScale = {
evaluationInterval = "string"
formula = "string"
}
fixedScale = {
nodeDeallocationOption = "string"
resizeTimeout = "string"
targetDedicatedNodes = int
targetLowPriorityNodes = int
}
}
startTask = {
commandLine = "string"
containerSettings = {
containerRunOptions = "string"
imageName = "string"
registry = {
password = "string"
registryServer = "string"
username = "string"
}
workingDirectory = "string"
}
environmentSettings = [
{
name = "string"
value = "string"
}
]
maxTaskRetryCount = int
resourceFiles = [
{
autoStorageContainerName = "string"
blobPrefix = "string"
fileMode = "string"
filePath = "string"
httpUrl = "string"
storageContainerUrl = "string"
}
]
userIdentity = {
autoUser = {
elevationLevel = "string"
scope = "string"
}
userName = "string"
}
waitForSuccess = bool
}
taskSchedulingPolicy = {
nodeFillType = "string"
}
taskSlotsPerNode = int
userAccounts = [
{
elevationLevel = "string"
linuxUserConfiguration = {
gid = int
sshPrivateKey = "string"
uid = int
}
name = "string"
password = "string"
windowsUserConfiguration = {
loginMode = "string"
}
}
]
vmSize = "string"
}
})
}
속성 값
ApplicationPackageReference
이름 | 묘사 | 값 |
---|---|---|
아이디 | 설치할 애플리케이션 패키지의 ID입니다. 풀과 동일한 일괄 처리 계정 내에 있어야 합니다. 특정 버전에 대한 참조이거나 기본 버전(있는 경우)일 수 있습니다. | string(필수) |
버전 | 이 버전을 생략하고 이 애플리케이션에 대해 기본 버전을 지정하지 않으면 오류 코드 InvalidApplicationPackageReferences와 함께 요청이 실패합니다. REST API를 직접 호출하는 경우 HTTP 상태 코드는 409입니다. | 문자열 |
AutoScaleSettings
이름 | 묘사 | 값 |
---|---|---|
evaluationInterval | 생략하면 기본값은 15분(PT15M)입니다. | 문자열 |
식 | 풀에서 원하는 수의 컴퓨팅 노드에 대한 수식입니다. | string(필수) |
AutoUserSpecification
이름 | 묘사 | 값 |
---|---|---|
elevationLevel | 기본값은 nonAdmin입니다. | 'Admin' 'NonAdmin' |
범위 | 기본값은 Pool입니다. 풀이 Windows를 실행하는 경우 작업 간에 더 엄격한 격리가 필요한 경우 작업 값을 지정해야 합니다. 예를 들어 태스크가 다른 작업에 영향을 미칠 수 있는 방식으로 레지스트리를 변경하거나 일반 작업에서 액세스할 수 없지만 시작 태스크에서 액세스할 수 있어야 하는 풀에 인증서를 지정한 경우입니다. | 'Pool' '작업' |
AzureBlobFileSystemConfiguration
이름 | 묘사 | 값 |
---|---|---|
accountKey | 이 속성은 sasKey와 함께 사용할 수 없으며 하나를 지정해야 합니다. | 문자열 |
accountName | Azure Storage 계정 이름입니다. | string(필수) |
blobfuseOptions | Windows의 '순 사용' 옵션과 Linux의 '탑재' 옵션입니다. | 문자열 |
containerName | Azure Blob Storage 컨테이너 이름입니다. | string(필수) |
relativeMountPath | 모든 파일 시스템은 Batch 탑재 디렉터리를 기준으로 탑재되며 AZ_BATCH_NODE_MOUNTS_DIR 환경 변수를 통해 액세스할 수 있습니다. | string(필수) |
sasKey | 이 속성은 accountKey와 함께 사용할 수 없으며 하나를 지정해야 합니다. | 문자열 |
AzureFileShareConfiguration
이름 | 묘사 | 값 |
---|---|---|
accountKey | Azure Storage 계정 키입니다. | string(필수) |
accountName | Azure Storage 계정 이름입니다. | string(필수) |
azureFileUrl | 'https://{account}.file.core.windows.net/' 형식입니다. | string(필수) |
mountOptions | Windows의 '순 사용' 옵션과 Linux의 '탑재' 옵션입니다. | 문자열 |
relativeMountPath | 모든 파일 시스템은 Batch 탑재 디렉터리를 기준으로 탑재되며 AZ_BATCH_NODE_MOUNTS_DIR 환경 변수를 통해 액세스할 수 있습니다. | string(필수) |
BatchPoolIdentity
이름 | 묘사 | 값 |
---|---|---|
형 | Batch 풀에 사용되는 ID의 형식입니다. | 'None' 'UserAssigned'(필수) |
userAssignedIdentities | Batch 풀과 연결된 사용자 ID 목록입니다. 사용자 ID 사전 키 참조는 '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}' 형식의 ARM 리소스 ID입니다. | BatchPoolIdentityUserAssignedIdentities |
BatchPoolIdentityUserAssignedIdentities
이름 | 묘사 | 값 |
---|
CertificateReference
이름 | 묘사 | 값 |
---|---|---|
아이디 | 풀에 설치할 인증서의 정규화된 ID입니다. 풀과 동일한 일괄 처리 계정 내에 있어야 합니다. | string(필수) |
storeLocation | 기본값은 currentUser입니다. 이 속성은 Windows 노드로 구성된 풀(즉, cloudServiceConfiguration을 사용하여 만들거나 Windows 이미지 참조를 사용하여 virtualMachineConfiguration을 사용하여 생성됨)에만 적용됩니다. Linux 컴퓨팅 노드의 경우 인증서는 작업 디렉터리 내의 디렉터리에 저장되고 AZ_BATCH_CERTIFICATES_DIR 환경 변수는 이 위치를 쿼리하기 위해 태스크에 제공됩니다. 'remoteUser'의 표시 유형이 있는 인증서의 경우 사용자의 홈 디렉터리(예: /home/{user-name}/certs)에 'certs' 디렉터리가 만들어지고 인증서가 해당 디렉터리에 배치됩니다. | 'CurrentUser' 'LocalMachine' |
storeName | 이 속성은 Windows 노드로 구성된 풀(즉, cloudServiceConfiguration을 사용하여 만들거나 Windows 이미지 참조를 사용하여 virtualMachineConfiguration을 사용하여 생성됨)에만 적용됩니다. 일반적인 저장소 이름에는 My, Root, CA, Trust, Disallowed, TrustedPeople, TrustedPublisher, AuthRoot, AddressBook 등이 있지만 사용자 지정 저장소 이름도 사용할 수 있습니다. 기본값은 My입니다. | 문자열 |
시정 | 컴퓨팅 노드의 사용자 계정이 인증서의 프라이빗 데이터에 액세스할 수 있어야 합니다. | 다음 중 어느 것을 포함하는 문자열 배열: 'RemoteUser' 'StartTask' '작업' |
CifsMountConfiguration
이름 | 묘사 | 값 |
---|---|---|
mountOptions | Windows의 '순 사용' 옵션과 Linux의 '탑재' 옵션입니다. | 문자열 |
암호 | CIFS 파일 시스템에 대한 인증에 사용할 암호입니다. | string(필수) |
relativeMountPath | 모든 파일 시스템은 Batch 탑재 디렉터리를 기준으로 탑재되며 AZ_BATCH_NODE_MOUNTS_DIR 환경 변수를 통해 액세스할 수 있습니다. | string(필수) |
근원 | 탑재할 파일 시스템의 URI입니다. | string(필수) |
사용자 이름 | CIFS 파일 시스템에 대한 인증에 사용할 사용자입니다. | string(필수) |
CloudServiceConfiguration
이름 | 묘사 | 값 |
---|---|---|
osFamily | 가능한 값은 Windows Server 2008 R2 SP1과 동일한 2 - OS 제품군 2입니다. 3 - WINDOWS Server 2012와 동일한 OS 제품군 3. 4 - WINDOWS Server 2012 R2와 동일한 OS 제품군 4 5 - WINDOWS Server 2016에 해당하는 OS 제품군 5. 6 - WINDOWS Server 2019에 해당하는 OS 제품군 6. 자세한 내용은 Azure 게스트 OS 릴리스(https://azure.microsoft.com/documentation/articles/cloud-services-guestos-update-matrix/#releases)를 참조하세요. | string(필수) |
osVersion | 기본값은 지정된 OS 제품군의 최신 운영 체제 버전을 지정하는 *입니다. | 문자열 |
Components81XseeSchemasBatchpoolidentityPropertiesUserassignedidentitiesAdditionalproperties
이름 | 묘사 | 값 |
---|
ContainerConfiguration
이름 | 묘사 | 값 |
---|---|---|
containerImageNames | "docker pull"에 지정된 것처럼 전체 이미지 참조입니다. 이미지가 대체 레지스트리로 정규화되지 않는 한 이미지는 기본 Docker 레지스트리에서 원본이 됩니다. | string[] |
containerRegistries | 자격 증명이 필요한 프라이빗 레지스트리에서 이미지를 다운로드해야 하는 경우 해당 자격 증명을 여기에 제공해야 합니다. | ContainerRegistry[] |
형 | 사용할 컨테이너 기술입니다. | 'DockerCompatible'(필수) |
ContainerRegistry
이름 | 묘사 | 값 |
---|---|---|
암호 | 레지스트리 서버에 로그인할 암호입니다. | string(필수) |
registryServer | 생략하면 기본값은 "docker.io"입니다. | 문자열 |
사용자 이름 | 레지스트리 서버에 로그인할 사용자 이름입니다. | string(필수) |
DataDisk
이름 | 묘사 | 값 |
---|---|---|
캐싱 | 값은 다음과 같습니다. none - 디스크의 캐싱 모드를 사용할 수 없습니다. readOnly - 디스크의 캐싱 모드는 읽기 전용입니다. readWrite - 디스크의 캐싱 모드를 읽고 씁니다. 캐싱의 기본값은 none입니다. 캐싱 옵션에 대한 자세한 내용은 다음을 참조하세요. https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/. |
'None' 'ReadOnly' 'ReadWrite' |
diskSizeGB | 새 데이터 디스크를 만들 때의 초기 디스크 크기(GB)입니다. | int(필수) |
lun | lun은 각 데이터 디스크를 고유하게 식별하는 데 사용됩니다. 여러 디스크를 연결하는 경우 각각 고유한 lun이 있어야 합니다. 값은 0에서 63 사이여야 합니다. | int(필수) |
storageAccountType | 생략하면 기본값은 "Standard_LRS"입니다. 값은 다음과 같습니다. Standard_LRS - 데이터 디스크는 표준 로컬 중복 스토리지를 사용해야 합니다. Premium_LRS - 데이터 디스크는 프리미엄 로컬 중복 스토리지를 사용해야 합니다. |
'Premium_LRS' 'Standard_LRS' |
DeploymentConfiguration
이름 | 묘사 | 값 |
---|---|---|
cloudServiceConfiguration | 이 속성과 virtualMachineConfiguration은 함께 사용할 수 없으며 속성 중 하나를 지정해야 합니다. Batch 계정이 poolAllocationMode 속성을 'UserSubscription'으로 설정하여 만든 경우 이 속성을 지정할 수 없습니다. | cloudServiceConfiguration |
virtualMachineConfiguration | 이 속성과 cloudServiceConfiguration은 함께 사용할 수 없으며 속성 중 하나를 지정해야 합니다. | VirtualMachineConfiguration |
DiskEncryptionConfiguration
이름 | 묘사 | 값 |
---|---|---|
대상 | Linux 풀에서는 "TemporaryDisk"만 지원됩니다. Windows 풀에서 "OsDisk" 및 "TemporaryDisk"를 지정해야 합니다. | 다음 중 어느 것을 포함하는 문자열 배열: 'OsDisk' 'TemporaryDisk' |
EnvironmentSetting
이름 | 묘사 | 값 |
---|---|---|
이름 | 환경 변수의 이름입니다. | string(필수) |
값 | 환경 변수의 값입니다. | 문자열 |
FixedScaleSettings
이름 | 묘사 | 값 |
---|---|---|
nodeDeallocationOption | 생략하면 기본값은 Requeue입니다. | 'Requeue' 'RetainedData' 'TaskCompletion' 'Terminate' |
resizeTimeout | 기본값은 15분입니다. 시간 제한 값은 ISO 8601 형식을 사용합니다. 예를 들어 10분 동안 PT10M을 사용합니다. 최소값은 5분입니다. 5분 미만의 값을 지정하면 Batch 서비스가 오류와 함께 요청을 거부합니다. REST API를 직접 호출하는 경우 HTTP 상태 코드는 400(잘못된 요청)입니다. | 문자열 |
targetDedicatedNodes | targetDedicatedNodes 중 하나 이상을 targetLowPriorityNodes를 설정해야 합니다. | int |
targetLowPriorityNodes | targetDedicatedNodes 중 하나 이상을 targetLowPriorityNodes를 설정해야 합니다. | int |
ImageReference
이름 | 묘사 | 값 |
---|---|---|
아이디 | 이 속성은 다른 속성과 함께 사용할 수 없습니다. 공유 이미지 갤러리 이미지에는 Azure Batch 계정과 동일한 지역에 복제본이 있어야 합니다. Batch 서비스와 통신하는 Batch 노드 에이전트의 방화벽 설정에 대한 자세한 내용은 /azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration을 참조하세요. | 문자열 |
제공 | 예를 들어 UbuntuServer 또는 WindowsServer입니다. | 문자열 |
게시자 | 예를 들어 Canonical 또는 MicrosoftWindowsServer입니다. | 문자열 |
sku | 예를 들어 18.04-LTS 또는 2019-Datacenter입니다. | 문자열 |
버전 | 'latest' 값을 지정하여 최신 버전의 이미지를 선택할 수 있습니다. 생략하면 기본값은 'latest'입니다. | 문자열 |
InboundNatPool
이름 | 묘사 | 값 |
---|---|---|
backendPort | Batch 풀 내에서 고유해야 합니다. 허용되는 값은 22, 3389, 29876 및 29877을 제외하고 1에서 65535 사이입니다. 예약된 값이 제공되면 HTTP 상태 코드 400으로 요청이 실패합니다. | int(필수) |
frontendPortRangeEnd | 허용되는 값 범위는 Batch 서비스에서 예약한 포트 50000에서 55000 사이를 제외하고 1에서 65534 사이입니다. 풀 내의 모든 범위는 고유해야 하며 겹칠 수 없습니다. 예약되거나 겹치는 값이 제공되면 HTTP 상태 코드 400으로 요청이 실패합니다. | int(필수) |
frontendPortRangeStart | 허용되는 값은 예약된 포트 50000에서 55000을 제외하고 1에서 65534 사이의 범위입니다. 풀 내의 모든 범위는 고유해야 하며 겹칠 수 없습니다. 예약되거나 겹치는 값이 제공되면 HTTP 상태 코드 400으로 요청이 실패합니다. | int(필수) |
이름 | 이름은 Batch 풀 내에서 고유해야 하며 문자, 숫자, 밑줄, 마침표 및 하이픈을 포함할 수 있습니다. 이름은 문자 또는 숫자로 시작해야 하고 문자, 숫자 또는 밑줄로 끝나야 하며 77자를 초과할 수 없습니다. 잘못된 값이 제공되면 HTTP 상태 코드 400으로 요청이 실패합니다. | string(필수) |
networkSecurityGroupRules | Batch 풀의 모든 엔드포인트에서 지정할 수 있는 최대 규칙 수는 25개입니다. 네트워크 보안 그룹 규칙을 지정하지 않으면 지정된 backendPort에 대한 인바운드 액세스를 허용하는 기본 규칙이 만들어집니다. 네트워크 보안 그룹 규칙의 최대 수를 초과하는 경우 HTTP 상태 코드 400으로 요청이 실패합니다. | networkSecurityGroupRule |
프로토콜 | 엔드포인트의 프로토콜입니다. | 'TCP' 'UDP'(필수) |
LinuxUserConfiguration
이름 | 묘사 | 값 |
---|---|---|
gid | uid 및 gid 속성은 함께 지정하거나 지정하지 않아야 합니다. 지정하지 않으면 기본 운영 체제에서 gid를 선택합니다. | int |
sshPrivateKey | 프라이빗 키는 암호로 보호되어서는 안 됩니다. 프라이빗 키는 풀의 enableInterNodeCommunication 속성이 true일 때 Linux 풀의 노드 간에 SSH에 대한 비대칭 키 기반 인증을 자동으로 구성하는 데 사용됩니다(enableInterNodeCommunication이 false이면 무시됨). 이 작업은 키 쌍을 사용자의 .ssh 디렉터리에 배치하여 수행합니다. 지정하지 않으면 암호 없는 SSH가 노드 간에 구성되지 않습니다(사용자의 .ssh 디렉터리를 수정하지 않음). | 문자열 |
uid | uid 및 gid 속성은 함께 지정하거나 지정하지 않아야 합니다. 지정하지 않으면 기본 운영 체제에서 uid를 선택합니다. | int |
MetadataItem
이름 | 묘사 | 값 |
---|---|---|
이름 | 메타데이터 항목의 이름입니다. | string(필수) |
값 | 메타데이터 항목의 값입니다. | string(필수) |
Microsoft.Batch/batchAccounts/pools
이름 | 묘사 | 값 |
---|---|---|
신원 | Batch 풀에 사용되는 ID의 형식입니다. | BatchPoolIdentity |
이름 | 리소스 이름 | 문자열 제약 조건: 최소 길이 = 1 최대 길이 = 1 패턴 = ^[a-zA-Z0-9_-]+$ (필수) |
parent_id | 이 리소스의 부모인 리소스의 ID입니다. | 형식 리소스의 ID: batchAccounts |
속성 | 풀과 연결된 속성입니다. | PoolProperties |
형 | 리소스 종류 | "Microsoft.Batch/batchAccounts/pools@2021-01-01" |
MountConfiguration
이름 | 묘사 | 값 |
---|---|---|
azureBlobFileSystemConfiguration | 이 속성은 다른 모든 속성과 함께 사용할 수 없습니다. | AzureBlobFileSystemConfiguration |
azureFileShareConfiguration | 이 속성은 다른 모든 속성과 함께 사용할 수 없습니다. | AzureFileShareConfiguration |
cifsMountConfiguration | 이 속성은 다른 모든 속성과 함께 사용할 수 없습니다. | CifsMountConfiguration |
nfsMountConfiguration | 이 속성은 다른 모든 속성과 함께 사용할 수 없습니다. | NFSMountConfiguration |
NetworkConfiguration
이름 | 묘사 | 값 |
---|---|---|
endpointConfiguration | 풀 엔드포인트 구성은 virtualMachineConfiguration 속성이 있는 풀에서만 지원됩니다. | poolEndpointConfiguration |
publicIPAddressConfiguration | 이 속성은 virtualMachineConfiguration 속성이 있는 풀에서만 지원됩니다. | PublicIPAddressConfiguration |
subnetId | 가상 네트워크는 Azure Batch 계정과 동일한 지역 및 구독에 있어야 합니다. 지정된 서브넷에는 풀의 노드 수를 수용하기에 충분한 사용 가능한 IP 주소가 있어야 합니다. 서브넷에 사용 가능한 IP 주소가 충분하지 않으면 풀에서 컴퓨팅 노드를 부분적으로 할당하고 크기 조정 오류가 발생합니다. 'MicrosoftAzureBatch' 서비스 주체에는 지정된 VNet에 대한 '클래식 가상 머신 기여자' Role-Based RBAC(Access Control) 역할이 있어야 합니다. 지정된 서브넷은 Azure Batch 서비스의 통신이 컴퓨팅 노드에서 작업을 예약할 수 있도록 허용해야 합니다. 지정된 VNet에 연결된 NSG(네트워크 보안 그룹)가 있는지 확인하여 확인할 수 있습니다. 지정된 서브넷의 컴퓨팅 노드에 대한 통신이 NSG에 의해 거부되면 Batch 서비스는 컴퓨팅 노드의 상태를 사용할 수 없도록 설정합니다. 지정된 VNet에 연결된 NSG(네트워크 보안 그룹)가 있는 경우 인바운드 통신에 대해 몇 가지 예약된 시스템 포트를 사용하도록 설정해야 합니다. 가상 머신 구성을 사용하여 만든 풀의 경우 29876 및 29877 포트와 Linux용 포트 22 및 Windows용 포트 3389를 사용하도록 설정합니다. 클라우드 서비스 구성을 사용하여 만든 풀의 경우 포트 10100, 20100 및 30100을 사용하도록 설정합니다. 또한 포트 443에서 Azure Storage에 대한 아웃바운드 연결을 사용하도록 설정합니다. cloudServiceConfiguration 풀의 경우 '클래식' VNET만 지원됩니다. 자세한 내용은 다음을 참조하세요. /azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration | 문자열 |
NetworkSecurityGroupRule
이름 | 묘사 | 값 |
---|---|---|
접근 | 지정된 IP 주소, 서브넷 범위 또는 태그에 대해 수행해야 하는 작업입니다. | '허용' 'Deny'(필수) |
우선권 | 풀 내의 우선 순위는 고유해야 하며 우선 순위 순서대로 평가됩니다. 숫자가 낮을수록 우선 순위가 높습니다. 예를 들어 순서 번호가 150, 250 및 350인 규칙을 지정할 수 있습니다. 순서 번호가 150인 규칙이 순서가 250인 규칙보다 우선합니다. 허용되는 우선 순위는 150~4096입니다. 예약되거나 중복된 값이 제공되면 HTTP 상태 코드 400으로 요청이 실패합니다. | int(필수) |
sourceAddressPrefix | 유효한 값은 단일 IP 주소(예: 10.10.10.10), IP 서브넷(예: 192.168.1.0/24), 기본 태그 또는 *(모든 주소의 경우)입니다. 다른 값이 제공되면 HTTP 상태 코드 400으로 요청이 실패합니다. | string(필수) |
sourcePortRanges | 유효한 값은 '*'(모든 포트 0 - 65535) 또는 포트 또는 포트 범위 배열(예: 100-200)입니다. 포트는 0~65535 범위여야 하며 포트 범위 또는 포트는 겹칠 수 없습니다. 다른 값이 제공되면 HTTP 상태 코드 400으로 요청이 실패합니다. 기본값은 *입니다. | string[] |
NFSMountConfiguration
이름 | 묘사 | 값 |
---|---|---|
mountOptions | Windows의 '순 사용' 옵션과 Linux의 '탑재' 옵션입니다. | 문자열 |
relativeMountPath | 모든 파일 시스템은 Batch 탑재 디렉터리를 기준으로 탑재되며 AZ_BATCH_NODE_MOUNTS_DIR 환경 변수를 통해 액세스할 수 있습니다. | string(필수) |
근원 | 탑재할 파일 시스템의 URI입니다. | string(필수) |
NodePlacementConfiguration
이름 | 묘사 | 값 |
---|---|---|
정책 | Batch 서비스에서 노드를 프로비전하는 데 사용하는 할당 정책입니다. 지정하지 않으면 Batch는 지역 정책을 사용합니다. | '지역' '영역' |
PoolEndpointConfiguration
이름 | 묘사 | 값 |
---|---|---|
inboundNatPools | Batch 풀당 최대 인바운드 NAT 풀 수는 5개입니다. 인바운드 NAT 풀의 최대 수를 초과하는 경우 HTTP 상태 코드 400으로 요청이 실패합니다. IPAddressProvisioningType이 NoPublicIPAddresses인 경우 이를 지정할 수 없습니다. | InboundNatPool[] (필수) |
PoolProperties
이름 | 묘사 | 값 |
---|---|---|
applicationLicenses | 애플리케이션 라이선스 목록은 사용 가능한 Batch 서비스 애플리케이션 라이선스의 하위 집합이어야 합니다. 지원되지 않는 라이선스가 요청되면 풀 만들기가 실패합니다. | string[] |
applicationPackages | 애플리케이션 패키지 참조에 대한 변경 내용은 풀에 조인하는 모든 새 컴퓨팅 노드에 영향을 주지만 다시 부팅하거나 이미지로 다시 설치할 때까지 풀에 이미 있는 컴퓨팅 노드에는 영향을 미치지 않습니다. 지정된 풀에는 최대 10개의 애플리케이션 패키지 참조가 있습니다. | applicationPackageReference |
인증서 | Windows 컴퓨팅 노드의 경우 Batch 서비스는 지정된 인증서 저장소 및 위치에 인증서를 설치합니다. Linux 컴퓨팅 노드의 경우 인증서는 작업 디렉터리 내의 디렉터리에 저장되고 AZ_BATCH_CERTIFICATES_DIR 환경 변수는 이 위치를 쿼리하기 위해 태스크에 제공됩니다. 'remoteUser'의 표시 유형이 있는 인증서의 경우 사용자의 홈 디렉터리(예: /home/{user-name}/certs)에 'certs' 디렉터리가 만들어지고 인증서가 해당 디렉터리에 배치됩니다. | CertificateReference[] |
deploymentConfiguration | CloudServiceConfiguration을 사용하면 노드가 PaaS(Azure Cloud Services)를 사용하여 만들어야 하는 반면 VirtualMachineConfiguration은 Azure Virtual Machines(IaaS)를 사용합니다. | DeploymentConfiguration |
displayName | 표시 이름은 고유할 필요가 없으며 최대 길이 1024까지 유니코드 문자를 포함할 수 있습니다. | 문자열 |
interNodeCommunication | 이렇게 하면 풀에 할당할 수 있는 노드에 제한이 적용됩니다. 이 값을 사용하도록 설정하면 요청된 노드 수가 풀에 할당될 가능성을 줄일 수 있습니다. 지정하지 않으면 이 값은 기본적으로 'Disabled'로 설정됩니다. | '사용 안 함' 'Enabled' |
메타데이터 | Batch 서비스는 메타데이터에 어떤 의미도 할당하지 않습니다. 사용자 코드를 사용하기 위한 것입니다. | MetadataItem[] |
mountConfiguration | Azure Files, NFS, CIFS/SMB 및 Blobfuse를 지원합니다. | MountConfiguration[] |
networkConfiguration | 풀에 대한 네트워크 구성입니다. | networkConfiguration |
scaleSettings | 풀의 원하는 크기를 정의합니다. 요청된 targetDedicatedNodes가 지정된 'fixedScale'이나 주기적으로 다시 평가되는 수식을 정의하는 'autoScale'일 수 있습니다. 이 속성을 지정하지 않으면 풀은 targetDedicatedNodes가 0인 고정된 배율을 갖습니다. | ScaleSettings |
startTask | PATCH(업데이트) 작업에서 이 속성을 빈 개체로 설정하여 풀에서 시작 작업을 제거할 수 있습니다. | StartTask |
taskSchedulingPolicy | 지정하지 않으면 기본값이 분산됩니다. | TaskSchedulingPolicy |
taskSlotsPerNode | 기본값은 1입니다. 최대값은 풀의 vmSize 코어 수의 4배 또는 256의 작은 값입니다. | int |
userAccounts | 풀의 각 노드에서 만들 사용자 계정 목록입니다. | userAccount |
vmSize | Cloud Services 풀에 사용 가능한 가상 머신 크기(cloudServiceConfiguration으로 만든 풀)에 대한 자세한 내용은 Cloud Services 크기(https://azure.microsoft.com/documentation/articles/cloud-services-sizes-specs/)를 참조하세요. Batch는 ExtraSmall을 제외한 모든 Cloud Services VM 크기를 지원합니다. Virtual Machines Marketplace(virtualMachineConfiguration으로 만든 풀)의 이미지를 사용하여 풀에 사용할 수 있는 VM 크기에 대한 자세한 내용은 Virtual Machines 크기(linux)(https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) 또는 Virtual Machines(Windows)의 크기(https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/)를 참조하세요. Batch는 STANDARD_A0 및 Premium Storage(STANDARD_GS, STANDARD_DS 및 STANDARD_DSV2 시리즈)를 제외한 모든 Azure VM 크기를 지원합니다. | 문자열 |
PublicIPAddressConfiguration
이름 | 묘사 | 값 |
---|---|---|
ipAddressIds | 여기에 지정된 IP 수는 풀의 최대 크기를 제한합니다. 전용 노드 100개 또는 우선 순위가 낮은 노드 100개는 각 공용 IP에 할당할 수 있습니다. 예를 들어 250개의 전용 VM이 필요한 풀에는 3개 이상의 공용 IP가 지정되어 있어야 합니다. 이 컬렉션의 각 요소는 /subscriptions/{subscription}/resourceGroups/{group}/providers/Microsoft.Network/publicIPAddresses/{ip}형식입니다. | string[] |
제공 | 기본값은 BatchManaged입니다. | 'BatchManaged' 'NoPublicIPAddresses' 'UserManaged' |
ResourceFile
이름 | 묘사 | 값 |
---|---|---|
autoStorageContainerName | autoStorageContainerName, storageContainerUrl 및 httpUrl 속성은 상호 배타적이며 그 중 하나를 지정해야 합니다. | 문자열 |
blobPrefix | 이 속성은 autoStorageContainerName 또는 storageContainerUrl을 사용하는 경우에만 유효합니다. 이 접두사는 부분 파일 이름 또는 하위 디렉터리일 수 있습니다. 접두사를 지정하지 않으면 컨테이너의 모든 파일이 다운로드됩니다. | 문자열 |
fileMode | 이 속성은 Linux 컴퓨팅 노드에 다운로드되는 파일에만 적용됩니다. Windows 노드에 다운로드할 resourceFile에 대해 지정된 경우 무시됩니다. Linux 노드에 대해 이 속성을 지정하지 않으면 기본값인 0770이 파일에 적용됩니다. | 문자열 |
filePath | httpUrl 속성을 지정하면 filePath가 필요하며 파일 이름을 포함하여 파일을 다운로드할 경로를 설명합니다. 그렇지 않으면 autoStorageContainerName 또는 storageContainerUrl 속성이 지정된 경우 filePath는 선택 사항이며 파일을 다운로드할 디렉터리입니다. filePath가 디렉터리로 사용되는 경우 입력 데이터와 이미 연결된 모든 디렉터리 구조가 전체로 유지되고 지정된 filePath 디렉터리에 추가됩니다. 지정된 상대 경로가 작업의 작업 디렉터리에서 분리될 수 없습니다(예: '..'을 사용). | 문자열 |
httpUrl | autoStorageContainerName, storageContainerUrl 및 httpUrl 속성은 상호 배타적이며 그 중 하나를 지정해야 합니다. URL이 Azure Blob Storage인 경우 익명 액세스를 사용하여 읽을 수 있어야 합니다. 즉, Batch 서비스는 Blob을 다운로드할 때 자격 증명을 제공하지 않습니다. Azure Storage에서 Blob에 대한 이러한 URL을 가져오는 방법에는 Blob에 대한 읽기 권한을 부여하는 SAS(공유 액세스 서명)를 포함하거나 공용 액세스를 허용하도록 Blob 또는 해당 컨테이너에 대한 ACL을 설정하는 두 가지 방법이 있습니다. | 문자열 |
storageContainerUrl | autoStorageContainerName, storageContainerUrl 및 httpUrl 속성은 상호 배타적이며 그 중 하나를 지정해야 합니다. 익명 액세스를 사용하여 이 URL을 읽을 수 있고 나열할 수 있어야 합니다. 즉, Batch 서비스는 Blob을 다운로드할 때 자격 증명을 제공하지 않습니다. Azure Storage에서 Blob에 대한 이러한 URL을 가져오는 방법에는 Blob에 대한 읽기 및 목록 권한을 부여하는 SAS(공유 액세스 서명)를 포함하거나 공용 액세스를 허용하도록 Blob 또는 해당 컨테이너에 대한 ACL을 설정하는 두 가지 방법이 있습니다. | 문자열 |
ScaleSettings
이름 | 묘사 | 값 |
---|---|---|
autoScale | 이 속성과 fixedScale은 함께 사용할 수 없으며 속성 중 하나를 지정해야 합니다. | AutoScaleSettings |
fixedScale | 이 속성과 자동 크기 조정은 함께 사용할 수 없으며 속성 중 하나를 지정해야 합니다. | FixedScaleSettings |
StartTask
이름 | 묘사 | 값 |
---|---|---|
commandLine | 명령줄은 셸에서 실행되지 않으므로 환경 변수 확장과 같은 셸 기능을 활용할 수 없습니다. 이러한 기능을 활용하려면 명령줄에서 셸을 호출해야 합니다(예: Windows에서 "cmd /c MyCommand"를 사용하거나 Linux에서 "/bin/sh -c MyCommand"). startTask의 다른 속성이 지정된 경우 필수입니다. | 문자열 |
containerSettings | 이 옵션을 지정하면 AZ_BATCH_NODE_ROOT_DIR 아래의 모든 디렉터리(노드의 Azure Batch 디렉터리 루트)가 컨테이너에 매핑되고, 모든 작업 환경 변수가 컨테이너에 매핑되고, 태스크 명령줄이 컨테이너에서 실행됩니다. | TaskContainerSettings |
environmentSettings | 시작 작업에 대한 환경 변수 설정 목록입니다. | EnvironmentSetting[] |
maxTaskRetryCount | Batch 서비스는 종료 코드가 0이 아닌 경우 작업을 다시 시도합니다. 이 값은 특히 재시도 횟수를 제어합니다. Batch 서비스는 작업을 한 번 시도한 다음 이 제한까지 다시 시도할 수 있습니다. 예를 들어 최대 재시도 횟수가 3인 경우 Batch는 작업을 최대 4번(초기 시도 1회, 재시도 3회)을 시도합니다. 최대 재시도 횟수가 0이면 Batch 서비스에서 작업을 다시 시도하지 않습니다. 최대 재시도 횟수가 -1이면 Batch 서비스는 제한 없이 작업을 다시 시도합니다. | int |
resourceFiles | 명령줄을 실행하기 전에 Batch 서비스가 컴퓨팅 노드에 다운로드할 파일 목록입니다. | ResourceFile |
userIdentity | 생략하면 태스크가 작업에 고유한 비관리 사용자로 실행됩니다. | UserIdentity |
waitForSuccess | true이고 컴퓨팅 노드에서 시작 작업이 실패하면 Batch 서비스는 최대 재시도 횟수(maxTaskRetryCount)까지 시작 작업을 다시 시도합니다. 모든 재시도 후에도 작업이 성공적으로 완료되지 않은 경우 Batch 서비스는 컴퓨팅 노드를 사용할 수 없도록 표시하고 작업을 예약하지 않습니다. 이 조건은 노드 상태 및 예약 오류 세부 정보를 통해 검색할 수 있습니다. false이면 Batch 서비스는 시작 작업이 완료될 때까지 기다리지 않습니다. 이 경우 시작 태스크가 계속 실행되는 동안 다른 태스크가 컴퓨팅 노드에서 실행을 시작할 수 있습니다. 시작 작업이 실패하더라도 노드에서 새 작업이 계속 예약됩니다. 기본값은 true입니다. | bool |
TaskContainerSettings
이름 | 묘사 | 값 |
---|---|---|
containerRunOptions | 이러한 추가 옵션은 Batch 서비스에서 제어하는 옵션 외에도 "docker create" 명령에 대한 인수로 제공됩니다. | 문자열 |
imageName | "docker pull"에 지정된 것처럼 전체 이미지 참조입니다. 이미지 이름의 일부로 태그가 제공되지 않으면 ":latest" 태그가 기본값으로 사용됩니다. | string(필수) |
레지스트리 | 풀을 만들 때 이미 제공된 경우 이 설정을 생략할 수 있습니다. | ContainerRegistry |
workingDirectory | 컨테이너 작업 디렉터리의 위치를 나타내는 플래그입니다. 기본값은 'taskWorkingDirectory'입니다. | 'ContainerImageDefault' 'TaskWorkingDirectory' |
TaskSchedulingPolicy
이름 | 묘사 | 값 |
---|---|---|
nodeFillType | 태스크를 컴퓨팅 노드에 분산하는 방법 | 'Pack' 'Spread'(필수) |
UserAccount
이름 | 묘사 | 값 |
---|---|---|
elevationLevel | nonAdmin - 자동 사용자는 상승된 액세스 권한이 없는 표준 사용자입니다. admin - 자동 사용자는 상승된 액세스 권한을 가진 사용자이며 전체 관리자 권한으로 작동합니다. 기본값은 nonAdmin입니다. | 'Admin' 'NonAdmin' |
linuxUserConfiguration | Windows 풀에 지정된 경우 이 속성은 무시됩니다. 지정하지 않으면 기본 옵션을 사용하여 사용자가 만들어집니다. | LinuxUserConfiguration |
이름 | 사용자 계정의 이름입니다. | string(필수) |
암호 | 사용자 계정의 암호입니다. | string(필수) |
windowsUserConfiguration | 이 속성은 사용자가 Windows 풀에 있는 경우에만 지정할 수 있습니다. 지정하지 않은 경우 Windows 풀에서 기본 옵션을 사용하여 사용자를 만듭니다. | WindowsUserConfiguration |
UserIdentity
이름 | 묘사 | 값 |
---|---|---|
autoUser | userName 및 autoUser 속성은 상호 배타적입니다. 둘 다 지정해야 하지만 둘 다 지정하지는 않습니다. | AutoUserSpecification |
userName | userName 및 autoUser 속성은 상호 배타적입니다. 둘 다 지정해야 하지만 둘 다 지정하지는 않습니다. | 문자열 |
VirtualMachineConfiguration
이름 | 묘사 | 값 |
---|---|---|
containerConfiguration | 지정된 경우 태스크가 컨테이너에서 실행되도록 풀의 각 노드에서 설치가 수행됩니다. 이 풀에서 실행되는 모든 일반 작업 및 작업 관리자 작업은 containerSettings 속성을 지정해야 하며, 다른 모든 작업에서 지정할 수 있습니다. | ContainerConfiguration |
dataDisks | 풀의 컴퓨팅 노드에 빈 데이터 디스크가 연결되어 있어야 하는 경우 이 속성을 지정해야 합니다. | dataDisk |
diskEncryptionConfiguration | 지정된 경우 노드 프로비전 중에 풀의 각 노드에서 암호화가 수행됩니다. | diskEncryptionConfiguration |
확장 | 지정된 경우 이 구성에 언급된 확장이 각 노드에 설치됩니다. | VMExtension |
imageReference | 사용자 지정 Virtual Machine의 Azure Virtual Machines Marketplace 이미지 또는 Azure 이미지 리소스에 대한 참조입니다. Azure Batch에서 확인된 모든 imageReferences 목록을 얻으려면 '지원되는 노드 에이전트 SKU 나열' 작업을 참조하세요. | imageReference |
licenseType | 이는 Windows 운영 체제를 포함하는 이미지에만 적용되며 배포될 노드에 대해 유효한 온-프레미스 라이선스를 보유하는 경우에만 사용해야 합니다. 생략하면 온-프레미스 라이선스 할인이 적용되지 않습니다. 값은 다음과 같습니다. Windows_Server - 온-프레미스 라이선스는 Windows Server용입니다. Windows_Client - 온-프레미스 라이선스는 Windows 클라이언트용입니다. |
문자열 |
nodeAgentSkuId | Batch 노드 에이전트는 풀의 각 노드에서 실행되는 프로그램이며 노드와 Batch 서비스 간의 명령 및 제어 인터페이스를 제공합니다. 여러 운영 체제에 대해 SKU라고 하는 노드 에이전트의 구현이 다릅니다. 선택한 이미지 참조와 일치하는 노드 에이전트 SKU를 지정해야 합니다. 확인된 이미지 참조 목록과 함께 지원되는 노드 에이전트 SKU 목록을 얻으려면 '지원되는 노드 에이전트 SKU 나열' 작업을 참조하세요. | string(필수) |
nodePlacementConfiguration | 이 구성은 풀의 노드를 물리적으로 할당하는 방법에 대한 규칙을 지정합니다. | nodePlacementConfiguration |
windowsConfiguration | imageReference가 Linux OS 이미지를 지정하는 경우 이 속성을 지정해서는 안 됩니다. | windowsConfiguration |
VMExtension
이름 | 묘사 | 값 |
---|---|---|
autoUpgradeMinorVersion | 배포 시 사용할 수 있는 경우 확장에서 최신 부 버전을 사용해야 하는지 여부를 나타냅니다. 그러나 배포된 후에는 이 속성이 true로 설정되어 있더라도 재배포하지 않는 한 확장은 부 버전을 업그레이드하지 않습니다. | bool |
이름 | 가상 머신 확장의 이름입니다. | string(필수) |
protectedSettings | 확장에는 protectedSettings 또는 protectedSettingsFromKeyVault 또는 보호된 설정이 전혀 포함될 수 없습니다. | 어떤 |
provisionAfterExtensions | 이 확장을 프로비전해야 하는 확장 이름 컬렉션입니다. | string[] |
게시자 | 확장 처리기 게시자의 이름입니다. | string(필수) |
설정 | 확장에 대한 JSON 형식의 공용 설정입니다. | 어떤 |
형 | 확장의 형식입니다. | string(필수) |
typeHandlerVersion | 스크립트 처리기의 버전입니다. | 문자열 |
WindowsConfiguration
이름 | 묘사 | 값 |
---|---|---|
enableAutomaticUpdates | 생략하면 기본값이 true입니다. | bool |
WindowsUserConfiguration
이름 | 묘사 | 값 |
---|---|---|
loginMode | 사용자의 로그인 모드를 지정합니다. VirtualMachineConfiguration 풀의 기본값은 대화형 모드이며 CloudServiceConfiguration 풀의 경우 일괄 처리 모드입니다. | 'Batch' 'Interactive' |