你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Pool - Add

将池添加到指定的帐户。
命名池时,请避免包括敏感信息,如用户名或机密项目名称。 此信息可能会出现在可供 Microsoft 支持部门工程师访问的遥测日志中。

POST {batchUrl}/pools?api-version=2023-11-01.18.0
POST {batchUrl}/pools?timeout={timeout}&api-version=2023-11-01.18.0

URI 参数

名称 必需 类型 说明
batchUrl
path True

string

所有Azure Batch服务请求的基 URL。

api-version
query True

string

客户端 API 版本。

timeout
query

integer

int32

服务器可以花费处理请求的最长时间(以秒为单位)。 默认为 30 秒。

请求头

Media Types: "application/json; odata=minimalmetadata"

名称 必需 类型 说明
client-request-id

string

uuid

调用方生成的请求标识,采用不带修饰(如大括号)的 GUID 形式,例如 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0。

return-client-request-id

boolean

服务器是否应在响应中返回 client-request-id。

ocp-date

string

date-time-rfc1123

发出请求的时间。 客户端库通常将此设置为当前系统时钟时间;如果直接调用 REST API,请显式设置它。

请求正文

Media Types: "application/json; odata=minimalmetadata"

名称 必需 类型 说明
id True

string

唯一标识帐户中的池的字符串。
ID 可以包含字母数字字符(包括连字符和下划线)的任意组合,并且不能包含超过 64 个字符。 ID 是保留大小写且不区分大小写 (也就是说,帐户中可能没有两个仅因大小写) 而不同的池 ID。

vmSize True

string

池中虚拟机的大小。 池中的所有虚拟机大小相同。
有关使用 cloudServiceConfiguration) 创建的云服务池 (池的可用虚拟机大小的信息,请参阅云服务 (https://azure.microsoft.com/documentation/articles/cloud-services-sizes-specs/) 的大小。 Batch 支持除 ExtraSmall、A1V2 和 A2V2 以外的所有云服务 VM 大小。 有关使用 virtualMachineConfiguration 创建的虚拟机市场 (池映像的池的可用 VM 大小的信息) 请参阅 虚拟机 (Linux) (https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) 的大小或 虚拟机 (Windows) (https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/) 的大小。 Batch 支持除 STANDARD_A0 和具有高级存储 (STANDARD_GS、STANDARD_DS和STANDARD_DSV2系列) 以外的所有 Azure VM 大小。

applicationLicenses

string[]

Batch 服务将在池中的每个计算节点上提供的应用程序许可证列表。
应用程序许可证列表必须是可用 Batch 服务应用程序许可证的子集。 如果请求的许可证不受支持,池创建将失败。

applicationPackageReferences

ApplicationPackageReference[]

要安装在池中每个计算节点上的包列表。
创建池时,包的应用程序 ID 必须完全限定 (/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}) 。 对包引用的更改会影响加入池的所有新节点,但在重新启动或重置映像之前,不会影响池中已存在的计算节点。 任何给定池中最多有 10 个包引用。

autoScaleEvaluationInterval

string

根据自动缩放公式自动调整池大小的时间间隔。
默认值为 15 分钟。 最小值和最大值分别为 5 分钟和 168 小时。 如果指定的值小于 5 分钟或大于 168 小时,Batch 服务将返回错误;如果直接调用 REST API,则 HTTP 状态代码为 400 (错误请求) 。

autoScaleFormula

string

池中所需计算节点数的公式。
如果 enableAutoScale 设置为 false,则不得指定此属性。 如果 enableAutoScale 设置为 true,则此参数是必需的。 在创建池之前,将检查公式的有效性。 如果公式无效,Batch 服务会拒绝包含详细错误信息的请求。 有关指定此公式的详细信息,请参阅“自动缩放Azure Batch池中的计算节点” (https://azure.microsoft.com/documentation/articles/batch-automatic-scaling/) 。

certificateReferences

CertificateReference[]

要安装在池中每个计算节点上的证书列表。
对于 Windows 节点,Batch 服务会将证书安装到指定的证书存储和位置。 对于 Linux 计算节点,证书存储在 Task 工作目录内的目录中,并向 Task 提供一个环境变量AZ_BATCH_CERTIFICATES_DIR来查询此位置。 对于“remoteUser”可见性的证书,在用户的主目录中创建一个“certs”目录, (例如 /home/{user-name}/certs) ,证书位于该目录中。

警告:此属性已弃用,将在 2024 年 2 月之后删除。 请改用 Azure KeyVault 扩展

cloudServiceConfiguration

CloudServiceConfiguration

池的云服务配置。
此属性和 virtualMachineConfiguration 互斥,必须指定其中一个属性。 如果 Batch 帐户的 poolAllocationMode 属性设置为“UserSubscription”,则无法指定此属性。

displayName

string

池的显示名称。
显示名称不必是唯一的,可以包含最大长度为 1024 的任何 Unicode 字符。

enableAutoScale

boolean

池大小是否应随时间自动调整。
如果为 false,则必须至少指定一个 targetDedicatedNodes 和 targetLowPriorityNodes。 如果为 true,则 autoScaleFormula 属性是必需的,并且池将根据公式自动调整大小。 默认值为 false。

enableInterNodeCommunication

boolean

池是否允许计算节点之间的直接通信。
启用节点间通信会限制池的最大大小,因为池的计算节点存在部署限制。 这可能会导致池未达到其所需大小。 默认值为 false。

metadata

MetadataItem[]

与作为元数据的池关联的名称/值对的列表。
Batch 服务不赋予元数据任何含义;它仅用于使用用户代码。

mountConfiguration

MountConfiguration[]

在池的整个生存期内使用指定的文件系统装载存储。
使用基于 Azure 文件共享、NFS、CIFS 或 Blobfuse 的文件系统装载存储。

networkConfiguration

NetworkConfiguration

池的网络配置。
池的网络配置。

resizeTimeout

string

将计算节点分配到池的超时。
此超时仅适用于手动缩放;当 enableAutoScale 设置为 true 时,它不起作用。 默认值为 15 分钟。 最小值为 5 分钟。 如果指定的值小于 5 分钟,Batch 服务将返回错误;如果直接调用 REST API,则 HTTP 状态代码为 400 (错误请求) 。

resourceTags

object

与池关联的用户指定的标记。
要与Azure Batch池关联的用户定义的标记。 指定后,这些标记将传播到与池关联的后备 Azure 资源。 只有在将 poolAllocationMode 属性设置为“UserSubscription”的情况下创建 Batch 帐户时,才能指定此属性。

startTask

StartTask

在加入池时,指定要在每个计算节点上运行的任务。
将计算节点添加到池或重启计算节点时,任务将运行。

targetDedicatedNodes

integer

池中所需的专用计算节点数。
如果 enableAutoScale 设置为 true,则不得指定此属性。 如果 enableAutoScale 设置为 false,则必须设置 targetDedicatedNodes 和/或 targetLowPriorityNodes。

targetLowPriorityNodes

integer

池中所需的现成/低优先级计算节点数。
如果 enableAutoScale 设置为 true,则不得指定此属性。 如果 enableAutoScale 设置为 false,则必须设置 targetDedicatedNodes 和/或 targetLowPriorityNodes。

targetNodeCommunicationMode

NodeCommunicationMode

池的所需节点通信模式。
如果省略,默认值为 Default。

taskSchedulingPolicy

TaskSchedulingPolicy

任务如何跨池中的计算节点分布。
如果未指定,则默认值为 spread。

taskSlotsPerNode

integer

可用于在池中单个计算节点上运行并发任务的任务槽数。
默认值为 1。 最大值是池 vmSize 核心数的 4 倍或 256 的较小值。

userAccounts

UserAccount[]

将在池中的每个计算节点上创建的用户帐户列表。

virtualMachineConfiguration

VirtualMachineConfiguration

池的虚拟机配置。
此属性和 cloudServiceConfiguration 互斥,必须指定其中一个属性。

响应

名称 类型 说明
201 Created

对 Batch 服务的请求已成功。

Headers

  • client-request-id: string
  • request-id: string
  • ETag: string
  • Last-Modified: string
  • DataServiceId: string
Other Status Codes

BatchError

Batch 服务中的错误。

安全性

azure_auth

Microsoft Entra OAuth 2.0 身份验证代码流

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/authorize

Scopes

名称 说明
user_impersonation 模拟用户帐户

Authorization

Type: apiKey
In: header

示例

Add a CloudServiceConfiguration pool
Add a pool with accelerated networking
Add a pool with mount drive specified
Add a pool with SecurityProfile
Add a simple pool with resourceTags
Add a VirtualMachineConfiguration pool
Add a VirtualMachineConfiguration pool with containers
Add a VirtualMachineConfiguration pool with extensions
Add a VirtualMachineConfiguration pool with OS disk
Add a VirtualMachineConfiguration pool with ServiceArtifactReference

Add a CloudServiceConfiguration pool

Sample Request

POST account.region.batch.azure.com/pools?api-version=2023-11-01.18.0



{
  "id": "poolId",
  "vmSize": "small",
  "cloudServiceConfiguration": {
    "osFamily": "4"
  },
  "resizeTimeout": "PT15M",
  "targetDedicatedNodes": 5,
  "targetLowPriorityNodes": 0,
  "taskSlotsPerNode": 3,
  "taskSchedulingPolicy": {
    "nodeFillType": "spread"
  },
  "enableAutoScale": false,
  "enableInterNodeCommunication": true,
  "metadata": [
    {
      "name": "myproperty",
      "value": "myvalue"
    }
  ]
}

Sample Response

Add a pool with accelerated networking

Sample Request

POST account.region.batch.azure.com/pools?api-version=2023-11-01.18.0



{
  "id": "mypool01",
  "vmSize": "Standard_D1_v2",
  "virtualMachineConfiguration": {
    "imageReference": {
      "publisher": "MicrosoftWindowsServer",
      "offer": "WindowsServer",
      "sku": "2016-datacenter-smalldisk",
      "version": "latest"
    },
    "nodeAgentSKUId": "batch.node.windows amd64"
  },
  "targetDedicatedNodes": 2,
  "networkConfiguration": {
    "enableAcceleratedNetworking": true
  }
}

Sample Response

Add a pool with mount drive specified

Sample Request

POST account.region.batch.azure.com/pools?api-version=2023-11-01.18.0


{
  "id": "pool2",
  "vmSize": "standard_a1",
  "virtualMachineConfiguration": {
    "imageReference": {
      "publisher": "Canonical",
      "offer": "UbuntuServer",
      "sku": "20_04-lts"
    },
    "nodeAgentSKUId": "batch.node.ubuntu 20.04"
  },
  "mountConfiguration": [
    {
      "azureBlobFileSystemConfiguration": {
        "accountName": "accountName",
        "containerName": "blobContainerName",
        "accountKey": "accountKey",
        "relativeMountPath": "bfusepath"
      }
    },
    {
      "azureFileShareConfiguration": {
        "accountName": "accountName",
        "azureFileUrl": "https://myaccount.file.core.windows.net/fileshare",
        "accountKey": "accountKey",
        "relativeMountPath": "filesharepath",
        "mountOptions": "mount options ver=1.0"
      }
    },
    {
      "nfsMountConfiguration": {
        "source": "somesource nfs url",
        "relativeMountPath": "mountpath",
        "mountOptions": "mount options ver=1.0"
      }
    },
    {
      "cifsMountConfiguration": {
        "username": "accountName",
        "password": "password",
        "source": "//myaccount.file.core.windows.net/file",
        "relativeMountPath": "mountpath",
        "mountOptions": "mount options ver=1.0"
      }
    }
  ],
  "resizeTimeout": "PT15M",
  "targetDedicatedNodes": 5,
  "targetLowPriorityNodes": 0,
  "taskSlotsPerNode": 3,
  "taskSchedulingPolicy": {
    "nodeFillType": "spread"
  },
  "enableAutoScale": false
}

Sample Response

Add a pool with SecurityProfile

Sample Request

POST account.region.batch.azure.com/pools?api-version=2023-11-01.18.0



{
  "id": "mypool001",
  "vmSize": "STANDARD_DC2s_V2",
  "virtualMachineConfiguration": {
    "imageReference": {
      "publisher": "Canonical",
      "offer": "UbuntuServer",
      "sku": "18_04-lts-gen2",
      "version": "latest"
    },
    "nodeAgentSKUId": "batch.node.ubuntu 18.04",
    "securityProfile": {
      "securityType": "trustedLaunch",
      "encryptionAtHost": true,
      "uefiSettings": {
        "secureBootEnabled": false
      }
    }
  },
  "targetDedicatedNodes": 1
}

Sample Response

Add a simple pool with resourceTags

Sample Request

POST account.region.batch.azure.com/pools?api-version=2023-11-01.18.0



{
  "id": "mypool001",
  "vmSize": "STANDARD_DC2s_V2",
  "virtualMachineConfiguration": {
    "imageReference": {
      "publisher": "Canonical",
      "offer": "UbuntuServer",
      "sku": "18_04-lts-gen2",
      "version": "latest"
    },
    "nodeAgentSKUId": "batch.node.ubuntu 18.04"
  },
  "targetDedicatedNodes": 1,
  "resourceTags": {
    "TagName1": "TagValue1",
    "TagName2": "TagValue2"
  }
}

Sample Response

Add a VirtualMachineConfiguration pool

Sample Request

POST account.region.batch.azure.com/pools?api-version=2023-11-01.18.0



{
  "id": "pool2",
  "vmSize": "standard_a1",
  "virtualMachineConfiguration": {
    "imageReference": {
      "publisher": "Canonical",
      "offer": "0001-com-ubuntu-server-focal",
      "sku": "20_04-lts"
    },
    "nodeAgentSKUId": "batch.node.ubuntu 20.04"
  },
  "resizeTimeout": "PT15M",
  "targetDedicatedNodes": 5,
  "targetLowPriorityNodes": 0,
  "taskSlotsPerNode": 3,
  "taskSchedulingPolicy": {
    "nodeFillType": "spread"
  },
  "enableAutoScale": false,
  "enableInterNodeCommunication": true,
  "metadata": [
    {
      "name": "myproperty",
      "value": "myvalue"
    }
  ]
}

Sample Response

Add a VirtualMachineConfiguration pool with containers

Sample Request

POST account.region.batch.azure.com/pools?api-version=2023-11-01.18.0



{
  "id": "pool2",
  "vmSize": "standard_a1",
  "virtualMachineConfiguration": {
    "imageReference": {
      "publisher": "Canonical",
      "offer": "0001-com-ubuntu-server-focal",
      "sku": "120_04-lts"
    },
    "nodeAgentSKUId": "batch.node.ubuntu 20.04",
    "containerConfiguration": {
      "type": "dockerCompatible",
      "containerImageNames": [
        "busybox"
      ]
    }
  },
  "resizeTimeout": "PT15M",
  "targetDedicatedNodes": 5,
  "targetLowPriorityNodes": 0,
  "taskSlotsPerNode": 3,
  "taskSchedulingPolicy": {
    "nodeFillType": "spread"
  },
  "enableAutoScale": false
}

Sample Response

Add a VirtualMachineConfiguration pool with extensions

Sample Request

POST account.region.batch.azure.com/pools?api-version=2023-11-01.18.0



{
  "id": "pool2",
  "vmSize": "standard_a1",
  "virtualMachineConfiguration": {
    "imageReference": {
      "publisher": "Canonical",
      "offer": "0001-com-ubuntu-server-focal",
      "sku": "20_04-lts"
    },
    "nodeAgentSKUId": "batch.node.ubuntu 20.04",
    "extensions": [
      {
        "name": "batchextension1",
        "type": "KeyVaultForLinux",
        "publisher": "Microsoft.Azure.KeyVault",
        "typeHandlerVersion": "2.0",
        "autoUpgradeMinorVersion": true,
        "enableAutomaticUpgrade": true,
        "settings": "{\"secretsManagementSettingsKey\":\"secretsManagementSettingsValue\",\"authenticationSettingsKey\":\"authenticationSettingsValue\"}"
      }
    ]
  },
  "resizeTimeout": "PT15M",
  "targetDedicatedNodes": 5,
  "targetLowPriorityNodes": 0,
  "taskSlotsPerNode": 3,
  "taskSchedulingPolicy": {
    "nodeFillType": "spread"
  },
  "enableAutoScale": false,
  "enableInterNodeCommunication": true,
  "metadata": [
    {
      "name": "myproperty",
      "value": "myvalue"
    }
  ],
  "targetNodeCommunicationMode": "simplified"
}

Sample Response

Add a VirtualMachineConfiguration pool with OS disk

Sample Request

POST account.region.batch.azure.com/pools?api-version=2023-11-01.18.0



{
  "id": "mypool001",
  "vmSize": "standard_d2s_v3",
  "virtualMachineConfiguration": {
    "imageReference": {
      "publisher": "Canonical",
      "offer": "0001-com-ubuntu-server-focal",
      "sku": "20_04-lts"
    },
    "osDisk": {
      "diskSizeGB": 100,
      "managedDisk": {
        "storageAccountType": "standardssd_lrs"
      },
      "caching": "readwrite",
      "ephemeralOSDiskSettings": {
        "placement": "CacheDisk"
      }
    },
    "nodeAgentSKUId": "batch.node.ubuntu 20.04"
  },
  "resizeTimeout": "PT15M",
  "targetDedicatedNodes": 1,
  "targetLowPriorityNodes": 0,
  "taskSlotsPerNode": 1,
  "enableAutoScale": false
}

Sample Response

Add a VirtualMachineConfiguration pool with ServiceArtifactReference

Sample Request

POST account.region.batch.azure.com/pools?api-version=2023-11-01.18.0



{
  "id": "mypool002",
  "vmSize": "Standard_A1_v2",
  "virtualMachineConfiguration": {
    "imageReference": {
      "publisher": "MicrosoftWindowsServer",
      "offer": "WindowsServer",
      "sku": "2016-datacenter-smalldisk",
      "version": "latest"
    },
    "windowsConfiguration": {
      "enableAutomaticUpdates": false
    },
    "serviceArtifactReference": {
      "id": "/subscriptions/subid/resourceGroups/default-azurebatch-japaneast/providers/Microsoft.Compute/galleries/myGallery/serviceArtifacts/myServiceArtifact/vmArtifactsProfiles/vmArtifactsProfile"
    },
    "nodeAgentSKUId": "batch.node.windows amd64"
  },
  "targetDedicatedNodes": 2
}

Sample Response

定义

名称 说明
ApplicationPackageReference

对要部署到计算节点的包的引用。

AutoUserScope

自动用户的作用域

AutoUserSpecification

为在 Batch 服务上运行 Task 的自动用户指定参数。

AzureBlobFileSystemConfiguration

用于使用 Blobfuse 连接到 Azure 存储容器的信息。

AzureFileShareConfiguration

用于连接到 Azure 文件共享的信息。

BatchError

从Azure Batch服务收到的错误响应。

BatchErrorDetail

Azure Batch错误响应中包含的其他信息项。

CachingType

要为磁盘启用的缓存类型。

CertificateReference

对要安装在池中的计算节点上的证书的引用。

CertificateStoreLocation

要在其中安装证书的计算节点上的证书存储位置。

CertificateVisibility

计算节点上的哪些用户帐户应有权访问证书的专用数据。

CIFSMountConfiguration

用于连接到 CIFS 文件系统的信息。

CloudServiceConfiguration

基于 Azure 云服务平台的池中计算节点的配置。

ComputeNodeFillType

任务如何跨池中的计算节点分布。

ComputeNodeIdentityReference

对与计算节点将使用的 Batch 池关联的用户分配标识的引用。

ContainerConfiguration

已启用容器的池的配置。

ContainerRegistry

专用容器注册表。

ContainerType

要使用的容器技术。

ContainerWorkingDirectory

容器任务工作目录的位置。

DataDisk

与池中的计算节点关联的数据磁盘将使用的设置。 使用附加的数据磁盘时,需要从 VM 中装载和格式化磁盘,才能使用它们。

DiffDiskPlacement

为池中) 的所有计算节点 (VM 指定操作系统磁盘的临时磁盘放置。

DiffDiskSettings

指定计算节点 (VM) 使用的操作系统磁盘的临时磁盘设置。

DiskEncryptionConfiguration

在池中的计算节点上应用的磁盘加密配置。 使用 Azure Compute Gallery Image 创建的 Linux 池不支持磁盘加密配置。

DiskEncryptionTarget

Batch 服务将在计算节点上加密的磁盘目标列表。

DynamicVNetAssignmentScope

动态 vnet 分配的范围。

ElevationLevel

用户的提升级别。

EnvironmentSetting

要对任务进程设置的环境变量。

ErrorMessage

Azure Batch错误响应中收到的错误消息。

ImageReference

对 Azure 虚拟机 市场映像或 Azure Compute Gallery 映像的引用。 若要获取Azure Batch验证的所有Azure 市场图像引用的列表,请参阅“列出支持的映像”操作。

InboundEndpointProtocol

终结点的协议。

InboundNATPool

一个入站 NAT 池,可用于在外部 Batch 池中对计算节点上的特定端口进行寻址。

IPAddressProvisioningType

池的公共 IP 地址的预配类型。

LinuxUserConfiguration

用于在 Linux 计算节点上创建用户帐户的属性。

LoginMode

用户的登录模式

ManagedDisk
MetadataItem

与 Batch 服务资源关联的名称/值对。

MountConfiguration

要在每个节点上装载的文件系统。

NetworkConfiguration

池的网络配置。

NetworkSecurityGroupRule

要应用于入站终结点的网络安全组规则。

NetworkSecurityGroupRuleAccess

应对指定的 IP 地址、子网范围或标记执行的操作。

NFSMountConfiguration

用于连接到 NFS 文件系统的信息。

NodeCommunicationMode

确定池如何与 Batch 服务通信。

NodePlacementConfiguration

池的节点放置配置。

NodePlacementPolicyType

用于在池中分配节点的放置策略。

OSDisk

计算节点 (VM) 操作系统磁盘的设置。

PoolAddParameter

要添加的Azure Batch服务中的池。

PoolEndpointConfiguration

池的终结点配置。

PublicIPAddressConfiguration

池的网络配置的公共 IP 地址配置。

ResourceFile

要下载到计算节点的单个文件或多个文件。

SecurityProfile

指定虚拟机或虚拟机规模集的安全配置文件设置。

SecurityTypes

指定虚拟机的 SecurityType。 必须将其设置为任何指定的值才能启用 UefiSettings。

ServiceArtifactReference

指定使用“最新”映像版本时,用于为规模集中的所有虚拟机设置相同映像版本的服务项目引用 ID。

StartTask

当节点加入Azure Batch服务中的池时,或者在重新启动或重置计算节点映像时运行的任务。

StorageAccountType

用于创建数据磁盘或 OS 磁盘的存储帐户类型。

TaskContainerSettings

Task 的容器设置。

TaskSchedulingPolicy

指定任务应如何跨计算节点分布。

UefiSettings

指定创建虚拟机时使用的安全设置,例如安全启动和 vTPM。

UserAccount

用于创建用于在Azure Batch计算节点上执行任务的用户的属性。

UserIdentity

运行 Task 时所依据的用户标识的定义。

VirtualMachineConfiguration

基于 Azure 虚拟机基础结构的池中计算节点的配置。

VMExtension

虚拟机扩展的配置。

WindowsConfiguration

要应用于虚拟机的 Windows 操作系统设置。

WindowsUserConfiguration

用于在 Windows 计算节点上创建用户帐户的属性。

ApplicationPackageReference

对要部署到计算节点的包的引用。

名称 类型 说明
applicationId

string

要部署的应用程序的 ID。
创建池时,包的应用程序 ID 必须完全限定 (/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}) 。

version

string

要部署的应用程序的版本。 如果省略,则部署默认版本。
如果在池中省略了此值,并且未为此应用程序指定默认版本,则请求将失败并显示错误代码 InvalidApplicationPackageReferences 和 HTTP 状态代码 409。 如果在 Task 上省略此项,并且没有为此应用程序指定默认版本,则任务将失败并出现预处理错误。

AutoUserScope

自动用户的作用域

名称 类型 说明
pool

string

指定任务作为在池中的每个计算节点上创建的公共自动用户帐户运行。

task

string

指定服务应为 Task 创建新用户。

AutoUserSpecification

为在 Batch 服务上运行 Task 的自动用户指定参数。

名称 类型 说明
elevationLevel

ElevationLevel

自动用户的提升级别。
默认值为 nonAdmin。

scope

AutoUserScope

自动用户的作用域
默认值为 pool。 如果池运行的是 Windows,则当任务之间需要更严格的隔离时,应指定 Task 值。 例如,如果任务以可能影响其他任务的方式改变注册表,或者已在池上指定了证书,而普通任务不应访问,但应由 StartTasks 访问。

AzureBlobFileSystemConfiguration

用于使用 Blobfuse 连接到 Azure 存储容器的信息。

名称 类型 说明
accountKey

string

Azure 存储帐户密钥。
此属性与 sasKey 和 identity 互斥;必须指定一个。

accountName

string

Azure 存储帐户名称。

blobfuseOptions

string

要传递给装载命令的其他命令行选项。
这些是 Windows 中的“net use”选项和 Linux 中的“装载”选项。

containerName

string

Azure Blob 存储容器名称。

identityReference

ComputeNodeIdentityReference

对用于访问 containerName 的用户分配标识的引用
此属性与 accountKey 和 sasKey 互斥;必须指定一个。

relativeMountPath

string

将装载文件系统的计算节点上的相对路径
所有文件系统都相对于 Batch 装载目录进行装载,可通过 AZ_BATCH_NODE_MOUNTS_DIR 环境变量进行访问。

sasKey

string

Azure 存储 SAS 令牌。
此属性与 accountKey 和 identity 互斥;必须指定一个。

AzureFileShareConfiguration

用于连接到 Azure 文件共享的信息。

名称 类型 说明
accountKey

string

Azure 存储帐户密钥。

accountName

string

Azure 存储帐户名称。

azureFileUrl

string

Azure 文件存储 URL。
此格式为“https://{account}.file.core.windows.net/”。

mountOptions

string

要传递给装载命令的其他命令行选项。
这些是 Windows 中的“net use”选项和 Linux 中的“装载”选项。

relativeMountPath

string

将装载文件系统的计算节点上的相对路径
所有文件系统都相对于 Batch 装载目录进行装载,可通过 AZ_BATCH_NODE_MOUNTS_DIR 环境变量进行访问。

BatchError

从Azure Batch服务收到的错误响应。

名称 类型 说明
code

string

错误的标识符。 代码是固定的,旨在以编程方式使用。

message

ErrorMessage

描述错误的消息,该消息适用于在用户界面中显示。

values

BatchErrorDetail[]

包含有关错误的其他详细信息的键值对的集合。

BatchErrorDetail

Azure Batch错误响应中包含的其他信息项。

名称 类型 说明
key

string

指定 Value 属性的含义的标识符。

value

string

错误响应附带的其他信息。

CachingType

要为磁盘启用的缓存类型。

名称 类型 说明
none

string

未启用磁盘的缓存模式。

readonly

string

磁盘的缓存模式为只读。

readwrite

string

磁盘的缓存模式为读取和写入。

CertificateReference

对要安装在池中的计算节点上的证书的引用。

名称 类型 说明
storeLocation

CertificateStoreLocation

要在其中安装证书的计算节点上的证书存储位置。
默认值为 currentuser。 此属性仅适用于使用 Windows 计算节点配置的池, (即使用 cloudServiceConfiguration 创建的池,或使用 windows 映像引用) 通过 virtualMachineConfiguration 创建的池。 对于 Linux 计算节点,证书存储在 Task 工作目录内的目录中,并向 Task 提供一个环境变量AZ_BATCH_CERTIFICATES_DIR来查询此位置。 对于“remoteUser”可见性的证书,在用户的主目录中创建一个“certs”目录, (例如 /home/{user-name}/certs) ,证书位于该目录中。

storeName

string

要在其中安装证书的计算节点上的证书存储的名称。
此属性仅适用于使用 Windows 计算节点配置的池, (即使用 cloudServiceConfiguration 创建的池,或使用 windows 映像引用) 通过 virtualMachineConfiguration 创建的池。 常见的存储名称包括:My、Root、CA、Trust、Disallowed、TrustedPeople、TrustedPublisher、AuthRoot、AddressBook,但也可以使用任何自定义存储名称。 默认值为 My。

thumbprint

string

证书的指纹。

thumbprintAlgorithm

string

与指纹关联的算法。 这必须是 sha1。

visibility

CertificateVisibility[]

计算节点上的哪些用户帐户应有权访问证书的专用数据。
可以在此集合中指定多个可见性。 默认值为“所有帐户”。

CertificateStoreLocation

要在其中安装证书的计算节点上的证书存储位置。

名称 类型 说明
currentuser

string

应将证书安装到 CurrentUser 证书存储区。

localmachine

string

应将证书安装到 LocalMachine 证书存储区。

CertificateVisibility

计算节点上的哪些用户帐户应有权访问证书的专用数据。

名称 类型 说明
remoteuser

string

证书应该对用户远程访问计算节点的用户帐户可见。

starttask

string

证书应该对运行 StartTask 的用户帐户可见。 请注意,如果 AutoUser 作用域是 StartTask 和 Task 的池,则此证书也将对任务可见。

task

string

证书应该对运行作业任务的用户帐户可见。

CIFSMountConfiguration

用于连接到 CIFS 文件系统的信息。

名称 类型 说明
mountOptions

string

要传递给装载命令的其他命令行选项。
这些是 Windows 中的“net use”选项和 Linux 中的“装载”选项。

password

string

用于对 CIFS 文件系统进行身份验证的密码。

relativeMountPath

string

将装载文件系统的计算节点上的相对路径
所有文件系统都相对于 Batch 装载目录进行装载,可通过 AZ_BATCH_NODE_MOUNTS_DIR 环境变量进行访问。

source

string

要装载的文件系统的 URI。

username

string

用于对 CIFS 文件系统进行身份验证的用户。

CloudServiceConfiguration

基于 Azure 云服务平台的池中计算节点的配置。

名称 类型 说明
osFamily

string

要安装在池中的虚拟机上的 Azure 来宾 OS 系列。
可能的值为:2 - OS 系列 2,等效于 Windows Server 2008 R2 SP1。 3 - OS 系列 3,等效于 Windows Server 2012。 4 - OS 系列 4,相当于 Windows Server 2012 R2。 5 - OS 系列 5,等效于 Windows Server 2016。 6 - OS 系列 6,等效于 Windows Server 2019。 有关详细信息,请参阅 Azure 来宾 OS 版本 (https://azure.microsoft.com/documentation/articles/cloud-services-guestos-update-matrix/#releases) 。

osVersion

string

要安装在池中的虚拟机上的 Azure 来宾 OS 版本。
默认值为 *,指定指定 OS 系列的最新操作系统版本。

ComputeNodeFillType

任务如何跨池中的计算节点分布。

名称 类型 说明
pack

string

在将任何任务分配给池中的下一个计算节点之前,应将尽可能多的任务 (taskSlotsPerNode) 分配给池中的每个计算节点。

spread

string

应在池中的所有计算节点上均匀分配任务。

ComputeNodeIdentityReference

对与计算节点将使用的 Batch 池关联的用户分配标识的引用。

名称 类型 说明
resourceId

string

用户分配的标识的 ARM 资源 ID。

ContainerConfiguration

已启用容器的池的配置。

名称 类型 说明
containerImageNames

string[]

容器映像名称的集合。
这是完整的映像引用,将指定为“docker 拉取”。 映像将来自默认 Docker 注册表,除非映像使用备用注册表完全限定。

containerRegistries

ContainerRegistry[]

可以从中提取容器的其他专用注册表。
如果必须从需要凭据的专用注册表下载任何映像,则必须在此处提供这些凭据。

type

ContainerType

要使用的容器技术。

ContainerRegistry

专用容器注册表。

名称 类型 说明
identityReference

ComputeNodeIdentityReference

对用户分配的标识的引用,该标识用于访问Azure 容器注册表,而不是用户名和密码。
对与计算节点将使用的 Batch 池关联的用户分配标识的引用。

password

string

用于登录到注册表服务器的密码。

registryServer

string

注册表 URL。
如果省略,则默认值为“docker.io”。

username

string

要登录到注册表服务器的用户名。

ContainerType

要使用的容器技术。

名称 类型 说明
criCompatible

string

基于 CRI 的技术将用于启动容器。

dockerCompatible

string

将使用 Docker 兼容的容器技术来启动容器。

ContainerWorkingDirectory

容器任务工作目录的位置。

名称 类型 说明
containerImageDefault

string

使用容器映像中定义的工作目录。 请注意,此目录不包含 Batch 下载的资源文件。

taskWorkingDirectory

string

使用标准 Batch 服务任务工作目录,其中包含由 Batch 填充的任务资源文件。

DataDisk

与池中的计算节点关联的数据磁盘将使用的设置。 使用附加的数据磁盘时,需要从 VM 中装载和格式化磁盘,才能使用它们。

名称 类型 说明
caching

CachingType

要为数据磁盘启用的缓存类型。
缓存的默认值为 readwrite。 有关缓存选项的信息,请参阅: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/

diskSizeGB

integer

初始磁盘大小(以 GB 为单位)。

lun

integer

逻辑单元号。
lun 用于唯一标识每个数据磁盘。 如果附加多个磁盘,则每个磁盘应具有不同的 lun。 该值必须介于 0 和 63(含)之间。

storageAccountType

StorageAccountType

要用于数据磁盘的存储帐户类型。
如果省略,则默认值为“standard_lrs”。

DiffDiskPlacement

为池中) 的所有计算节点 (VM 指定操作系统磁盘的临时磁盘放置。

名称 类型 说明
CacheDisk

string

临时 OS 磁盘存储在 VM 缓存中。

DiffDiskSettings

指定计算节点 (VM) 使用的操作系统磁盘的临时磁盘设置。

名称 类型 说明
placement

DiffDiskPlacement

指定池中所有 VM 的操作系统磁盘的临时磁盘位置。
用户在请求中可以使用此属性来选择位置,例如,缓存磁盘空间用于临时 OS 磁盘预配。 有关临时 OS 磁盘大小要求的详细信息,请参阅 上的 Windows VM https://docs.microsoft.com/en-us/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements 和 Linux VM 的 https://docs.microsoft.com/en-us/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements临时 OS 磁盘大小要求。

DiskEncryptionConfiguration

在池中的计算节点上应用的磁盘加密配置。 使用 Azure Compute Gallery Image 创建的 Linux 池不支持磁盘加密配置。

名称 类型 说明
targets

DiskEncryptionTarget[]

批处理服务将在计算节点上加密的磁盘目标列表。
如果省略,则池中计算节点上的磁盘不会加密。 在 Linux 池中,仅支持“TemporaryDisk”;必须指定 Windows 池中的“OsDisk”和“TemporaryDisk”。

DiskEncryptionTarget

Batch 服务将在计算节点上加密的磁盘目标列表。

名称 类型 说明
osdisk

string

计算节点上的 OS 磁盘已加密。

temporarydisk

string

计算节点上的临时磁盘已加密。 在 Linux 上,此加密适用于其他分区 (例如装载的数据磁盘上的分区,) 启动时加密。

DynamicVNetAssignmentScope

动态 vnet 分配的范围。

名称 类型 说明
job

string

动态 VNet 分配按作业完成。

none

string

未启用动态 VNet 分配。

ElevationLevel

用户的提升级别。

名称 类型 说明
admin

string

用户是具有提升访问权限的用户,使用完全管理员权限进行操作。

nonadmin

string

用户是没有提升访问权限的标准用户。

EnvironmentSetting

要对任务进程设置的环境变量。

名称 类型 说明
name

string

环境变量的名称。

value

string

环境变量的值。

ErrorMessage

Azure Batch错误响应中收到的错误消息。

名称 类型 说明
lang

string

错误消息的语言代码

value

string

消息的文本。

ImageReference

对 Azure 虚拟机 市场映像或 Azure Compute Gallery 映像的引用。 若要获取Azure Batch验证的所有Azure 市场图像引用的列表,请参阅“列出支持的映像”操作。

名称 类型 说明
exactVersion

string

用于创建节点的平台映像或市场映像的特定版本。 仅当创建池时为“version”指定的值为“latest”时,此只读字段才与“version”不同。

offer

string

Azure 虚拟机市场映像的产品/服务类型。
例如,UbuntuServer 或 WindowsServer。

publisher

string

Azure 虚拟机市场映像的发布者。
例如,Canonical 或 MicrosoftWindowsServer。

sku

string

Azure 虚拟机市场映像的 SKU。
例如,18.04-LTS 或 2019-Datacenter。

version

string

Azure 虚拟机市场映像的版本。
可以指定“latest”值以选择映像的最新版本。 如果省略,则默认值为“latest”。

virtualMachineImageId

string

Azure 计算库映像的 ARM 资源标识符。 池中的计算节点将使用此映像 ID 创建。其格式为 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/gallerys/{galleryName}/images/{imageDefinitionName}/versions/{VersionId} 或 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroups/providers/Microsoft.Compute/galleryName/{galleryName}/images/{imageDefinitionName},始终默认为最新映像版本。
此属性与其他 ImageReference 属性互斥。 Azure 计算库映像必须在同一区域中具有副本,并且必须与 Azure Batch 帐户位于同一订阅中。 如果未在 imageId 中指定映像版本,则将使用最新版本。 有关 Batch 计算节点代理与 Batch 服务通信的防火墙设置的信息,请参阅 https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration

InboundEndpointProtocol

终结点的协议。

名称 类型 说明
tcp

string

对终结点使用 TCP。

udp

string

对终结点使用 UDP。

InboundNATPool

一个入站 NAT 池,可用于在外部 Batch 池中对计算节点上的特定端口进行寻址。

名称 类型 说明
backendPort

integer

计算节点上的端口号。
这在 Batch 池中必须是唯一的。 可接受的值介于 1 和 65535 之间,但 22、3389、29876 和 29877 除外,因为这些值是保留的。 如果提供了任何保留值,则请求将失败,并显示 HTTP 状态代码 400。

frontendPortRangeEnd

integer

外部端口范围中的最后一个端口号,用于提供对单个计算节点上 backendPort 的入站访问。
可接受的值范围为 1 到 65534,但 Batch 服务保留的端口介于 50000 到 55000 之间。 池中的所有范围都必须是不同的,并且不能重叠。 每个范围必须至少包含 40 个端口。 如果提供了任何保留值或重叠值,请求将失败,并显示 HTTP 状态代码 400。

frontendPortRangeStart

integer

外部端口范围内的第一个端口号,用于提供对单个计算节点上 backendPort 的入站访问。
可接受的值范围为 1 到 65534,但保留的端口从 50000 到 55000 不等。 池中的所有范围都必须是不同的,并且不能重叠。 每个范围必须至少包含 40 个端口。 如果提供了任何保留值或重叠值,请求将失败,并显示 HTTP 状态代码 400。

name

string

终结点的名称。
名称在 Batch 池中必须唯一,可以包含字母、数字、下划线、句点和连字符。 名称必须以字母或数字开头,必须以字母、数字或下划线结尾,并且不能超过 77 个字符。 如果提供了任何无效值,请求将失败,并显示 HTTP 状态代码 400。

networkSecurityGroupRules

NetworkSecurityGroupRule[]

将应用于终结点的网络安全组规则列表。
可在 Batch 池上的所有终结点上指定的最大规则数为 25。 如果未指定网络安全组规则,则将创建默认规则以允许对指定的 backendPort 进行入站访问。 如果超过网络安全组规则的最大数目,请求将失败,并显示 HTTP 状态代码 400。

protocol

InboundEndpointProtocol

终结点的协议。

IPAddressProvisioningType

池的公共 IP 地址的预配类型。

名称 类型 说明
batchmanaged

string

公共 IP 将由 Batch 创建和管理。 可能有多个公共 IP,具体取决于池的大小。

nopublicipaddresses

string

不会创建任何公共 IP 地址。

usermanaged

string

公共 IP 由用户提供,将用于预配计算节点。

LinuxUserConfiguration

用于在 Linux 计算节点上创建用户帐户的属性。

名称 类型 说明
gid

integer

用户帐户的组 ID。
uid 和 gid 属性必须一起指定,或者根本不指定。 如果未指定,基础操作系统将选取 gid。

sshPrivateKey

string

用户帐户的 SSH 私钥。
私钥不得受密码保护。 当池的 enableInterNodeCommunication 属性为 true 时,私钥用于自动为 Linux 池中计算节点之间的 SSH 配置基于非对称密钥的身份验证, (enableInterNodeCommunication 为 false) 。 它通过将密钥对放入用户的 .ssh 目录来执行此操作。 如果未指定,则不会在计算节点之间配置无密码 SSH, () 不修改用户的 .ssh 目录。

uid

integer

用户帐户的用户 ID。
uid 和 gid 属性必须一起指定,或者根本不指定。 如果未指定,基础操作系统将选取 uid。

LoginMode

用户的登录模式

名称 类型 说明
batch

string

LOGON32_LOGON_BATCH Win32 登录模式。 对于长时间运行的并行进程,建议使用批处理登录模式。

interactive

string

LOGON32_LOGON_INTERACTIVE Win32 登录模式。 在 Windows VirtualMachineConfiguration 池上启用了 UAC。 如果此选项与 Windows VirtualMachineConfiguration 池中提升的用户标识一起使用,则不会提升用户会话,除非任务命令行执行的应用程序配置为始终需要管理特权或始终需要最大特权。

ManagedDisk

名称 类型 说明
storageAccountType

StorageAccountType

托管磁盘的存储帐户类型。

MetadataItem

与 Batch 服务资源关联的名称/值对。

名称 类型 说明
name

string

元数据项的名称。

value

string

元数据项的值。

MountConfiguration

要在每个节点上装载的文件系统。

名称 类型 说明
azureBlobFileSystemConfiguration

AzureBlobFileSystemConfiguration

在每个节点上使用 Blob FUSE 装载的 Azure 存储容器。
此属性与其他所有属性互斥。

azureFileShareConfiguration

AzureFileShareConfiguration

要在每个节点上装载的 Azure 文件共享。
此属性与其他所有属性互斥。

cifsMountConfiguration

CIFSMountConfiguration

要在每个节点上装载的 CIFS/SMB 文件系统。
此属性与其他所有属性互斥。

nfsMountConfiguration

NFSMountConfiguration

要在每个节点上装载的 NFS 文件系统。
此属性与其他所有属性互斥。

NetworkConfiguration

池的网络配置。

名称 类型 说明
dynamicVNetAssignmentScope

DynamicVNetAssignmentScope

动态 vnet 分配的范围。

enableAcceleratedNetworking

boolean

此池是否应启用加速网络。
加速网络支持将单根 I/O 虚拟化 (SR-IOV) VM,这可以提高网络性能。 有关详细信息,请参阅 https://learn.microsoft.com/azure/virtual-network/accelerated-networking-overview

endpointConfiguration

PoolEndpointConfiguration

Batch 池中计算节点上终结点的配置。
只有具有 virtualMachineConfiguration 属性的池支持池终结点配置。

publicIPAddressConfiguration

PublicIPAddressConfiguration

Batch 池中计算节点的公共 IPAddress 配置。
只有具有 virtualMachineConfiguration 属性的池才支持公共 IP 配置属性。

subnetId

string

池的计算节点将加入的虚拟网络子网的 ARM 资源标识符。 其格式为 /subscriptions/{subscription}/resourceGroups/{group}/providers/{provider}/virtualNetworks/{network}/subnets/{subnet}。
虚拟网络必须与 Azure Batch 帐户位于同一区域和订阅中。 指定的子网应有足够的可用 IP 地址来容纳池中的计算节点数。 如果子网没有足够的可用 IP 地址,池将部分分配节点,并且会发生大小调整错误。 “MicrosoftAzureBatch”服务主体必须具有指定 VNet 的“经典虚拟机参与者”Role-Based 访问控制 (RBAC) 角色。 指定的子网必须允许来自Azure Batch服务的通信,以便能够在节点上计划任务。 可以通过检查指定的 VNet 是否具有任何关联的网络安全组 (NSG) 来验证这一点。 如果 NSG 拒绝与指定子网中的节点的通信,则 Batch 服务会将计算节点的状态设置为“不可用”。 对于使用 virtualMachineConfiguration 创建的池,仅限 ARM 虚拟网络 ('Microsoft。支持网络/virtualNetworks ) ,但对于使用 cloudServiceConfiguration 创建的池,支持 ARM 和经典虚拟网络。 如果指定的 VNet 存在关联的网络安全组 (NSG),则必须为入站通信启用数个保留的系统端口。 对于使用虚拟机配置创建的池,请启用端口 29876 和 29877,以及适用于 Linux 的端口 22 和 Windows 端口 3389。 对于使用云服务配置创建的池,启用端口 10100、20100 和 30100。 此外,在端口 443 上启用到 Azure 存储的出站连接。 有关详细信息,请参阅: https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration

NetworkSecurityGroupRule

要应用于入站终结点的网络安全组规则。

名称 类型 说明
access

NetworkSecurityGroupRuleAccess

应对指定的 IP 地址、子网范围或标记执行的操作。

priority

integer

此规则的优先级。
池中的优先级必须是唯一的,并按优先级顺序进行评估。 编号越低,优先级越高。 例如,可以使用订单号 150、250 和 350 指定规则。 顺序编号为 150 的规则优先于顺序为 250 的规则。 允许的优先级为 150 到 4096。 如果提供了任何保留值或重复值,请求将失败,并显示 HTTP 状态代码 400。

sourceAddressPrefix

string

要与规则匹配的源地址前缀或标记。
有效值为单个 IP 地址 (,即 10.10.10.10) 、IP 子网 (即 192.168.1.0/24) 、默认标记或 * (() 的所有地址)。 如果提供了任何其他值,请求将失败,并显示 HTTP 状态代码 400。

sourcePortRanges

string[]

要与规则匹配的源端口范围。
对于所有端口 0 - 65535) 、特定端口 ((即 22) )或端口范围 ((即 100-200) ),有效值为“” (。端口必须在 0 到 65535 的范围内。此集合中的每个条目不得与范围或单个端口) (任何其他条目重叠。如果提供了任何其他值,请求将失败,并显示 HTTP 状态代码 400。默认值为“”。

NetworkSecurityGroupRuleAccess

应对指定的 IP 地址、子网范围或标记执行的操作。

名称 类型 说明
allow

string

允许访问。

deny

string

拒绝访问。

NFSMountConfiguration

用于连接到 NFS 文件系统的信息。

名称 类型 说明
mountOptions

string

要传递给装载命令的其他命令行选项。
这些是 Windows 中的“net use”选项和 Linux 中的“装载”选项。

relativeMountPath

string

将装载文件系统的计算节点上的相对路径
所有文件系统都相对于 Batch 装载目录进行装载,可通过 AZ_BATCH_NODE_MOUNTS_DIR 环境变量进行访问。

source

string

要装载的文件系统的 URI。

NodeCommunicationMode

确定池如何与 Batch 服务通信。

名称 类型 说明
classic

string

使用经典通信模式的节点需要来自“BatchNodeManagement”的端口 29876 和 29877 上的入站 TCP 通信。{region}“服务标记和端口 443 上与”Storage.region“和”BatchNodeManagement“的出站 TCP 通信。{region}“ 服务标记。

default

string

节点通信模式由 Batch 服务自动设置。

simplified

string

使用简化通信模式的节点需要在端口 443 上与“BatchNodeManagement”进行出站 TCP 通信。{region}“ 服务标记。 不需要打开的入站端口。

NodePlacementConfiguration

池的节点放置配置。

名称 类型 说明
policy

NodePlacementPolicyType

Batch 池上的节点放置策略类型。
Batch 服务用于预配节点的分配策略。 如果未指定,Batch 将使用区域策略。

NodePlacementPolicyType

用于在池中分配节点的放置策略。

名称 类型 说明
regional

string

池中的所有节点将分配到同一区域。

zonal

string

池中的节点将分布在不同的可用性区域,并尽最大努力实现平衡。

OSDisk

计算节点 (VM) 操作系统磁盘的设置。

名称 类型 说明
caching

CachingType

指定缓存要求。 可能的值为:None、ReadOnly、ReadWrite。 对于标准存储,默认值为:None。 高级存储的 ReadOnly。
缓存的默认值为 none。 有关缓存选项的信息,请参阅: https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/

diskSizeGB

integer

创建新 OS 磁盘时的初始磁盘大小(以 GB 为单位)。

ephemeralOSDiskSettings

DiffDiskSettings

指定计算节点 (VM) 使用的操作系统磁盘的临时磁盘设置。

managedDisk

ManagedDisk

托管磁盘参数。

writeAcceleratorEnabled

boolean

指定是否应在磁盘上启用或禁用 writeAccelerator。

PoolAddParameter

要添加的Azure Batch服务中的池。

名称 类型 说明
applicationLicenses

string[]

Batch 服务将在池中的每个计算节点上提供的应用程序许可证列表。
应用程序许可证列表必须是可用 Batch 服务应用程序许可证的子集。 如果请求的许可证不受支持,池创建将失败。

applicationPackageReferences

ApplicationPackageReference[]

要安装在池中每个计算节点上的包列表。
创建池时,包的应用程序 ID 必须完全限定 (/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}) 。 对包引用的更改会影响加入池的所有新节点,但在重新启动或重置映像之前,不会影响池中已存在的计算节点。 任何给定池中最多有 10 个包引用。

autoScaleEvaluationInterval

string

根据自动缩放公式自动调整池大小的时间间隔。
默认值为 15 分钟。 最小值和最大值分别为 5 分钟和 168 小时。 如果指定的值小于 5 分钟或大于 168 小时,Batch 服务将返回错误;如果直接调用 REST API,则 HTTP 状态代码为 400 (错误请求) 。

autoScaleFormula

string

池中所需计算节点数的公式。
如果 enableAutoScale 设置为 false,则不得指定此属性。 如果 enableAutoScale 设置为 true,则是必需的。 在创建池之前,将检查公式的有效性。 如果公式无效,Batch 服务会拒绝包含详细错误信息的请求。 有关指定此公式的详细信息,请参阅“自动缩放Azure Batch池中的计算节点” (https://azure.microsoft.com/documentation/articles/batch-automatic-scaling/) 。

certificateReferences

CertificateReference[]

要安装在池中每个计算节点上的证书列表。
对于 Windows 节点,Batch 服务会将证书安装到指定的证书存储和位置。 对于 Linux 计算节点,证书存储在 Task 工作目录内的目录中,并向 Task 提供一个环境变量AZ_BATCH_CERTIFICATES_DIR来查询此位置。 对于“remoteUser”可见性的证书,在用户的主目录中创建一个“certs”目录, (例如 /home/{user-name}/certs) ,证书位于该目录中。

警告:此属性已弃用,将在 2024 年 2 月之后删除。 请改用 Azure KeyVault 扩展

cloudServiceConfiguration

CloudServiceConfiguration

池的云服务配置。
此属性和 virtualMachineConfiguration 是互斥的,必须指定其中一个属性。 如果 Batch 帐户是在将 poolAllocationMode 属性设置为“UserSubscription”的情况下创建的,则无法指定此属性。

displayName

string

池的显示名称。
显示名称不一定是唯一的,可以包含最大长度为 1024 的任何 Unicode 字符。

enableAutoScale

boolean

池大小是否应随时间自动调整。
如果为 false,则必须至少指定一个 targetDedicatedNodes 和 targetLowPriorityNodes。 如果为 true,则 autoScaleFormula 属性是必需的,池将根据公式自动调整大小。 默认值为 false。

enableInterNodeCommunication

boolean

池是否允许计算节点之间的直接通信。
启用节点间通信会限制池的最大大小,因为池的计算节点存在部署限制。 这可能会导致池未达到其所需大小。 默认值为 false。

id

string

唯一标识帐户中的池的字符串。
ID 可以包含字母数字字符(包括连字符和下划线)的任意组合,并且不能包含超过 64 个字符。 ID 是保留大小写且不区分大小写的 (即,帐户中可能没有两个仅因大小写) 而不同的池 ID。

metadata

MetadataItem[]

与作为元数据的池关联的名称/值对的列表。
Batch 服务不赋予元数据任何含义;它仅用于使用用户代码。

mountConfiguration

MountConfiguration[]

在池的整个生存期内使用指定的文件系统装载存储。
使用基于 Azure 文件共享、NFS、CIFS 或 Blobfuse 的文件系统装载存储。

networkConfiguration

NetworkConfiguration

池的网络配置。
池的网络配置。

resizeTimeout

string

将计算节点分配到池的超时。
此超时仅适用于手动缩放;当 enableAutoScale 设置为 true 时,它不起作用。 默认值为 15 分钟。 最小值为 5 分钟。 如果指定的值小于 5 分钟,Batch 服务将返回错误;如果直接调用 REST API,则 HTTP 状态代码为 400 (错误请求) 。

resourceTags

object

与池关联的用户指定的标记。
要与Azure Batch池关联的用户定义的标记。 指定后,这些标记将传播到与池关联的后备 Azure 资源。 只有在将 poolAllocationMode 属性设置为“UserSubscription”的情况下创建 Batch 帐户时,才能指定此属性。

startTask

StartTask

在加入池时,指定要在每个计算节点上运行的任务。
将计算节点添加到池或重启计算节点时,任务将运行。

targetDedicatedNodes

integer

池中所需专用计算节点数。
如果 enableAutoScale 设置为 true,则不得指定此属性。 如果 enableAutoScale 设置为 false,则必须设置 targetDedicatedNodes 和/或 targetLowPriorityNodes。

targetLowPriorityNodes

integer

池中所需的现成/低优先级计算节点数。
如果 enableAutoScale 设置为 true,则不得指定此属性。 如果 enableAutoScale 设置为 false,则必须设置 targetDedicatedNodes 和/或 targetLowPriorityNodes。

targetNodeCommunicationMode

NodeCommunicationMode

池的所需节点通信模式。
如果省略,默认值为 Default。

taskSchedulingPolicy

TaskSchedulingPolicy

任务如何跨池中的计算节点分布。
如果未指定,则默认值为 spread。

taskSlotsPerNode

integer

可用于在池中单个计算节点上运行并发任务的任务槽数。
默认值为 1。 最大值是池 vmSize 核心数的 4 倍或 256 的较小值。

userAccounts

UserAccount[]

将在池中的每个计算节点上创建的用户帐户列表。

virtualMachineConfiguration

VirtualMachineConfiguration

池的虚拟机配置。
此属性和 cloudServiceConfiguration 是互斥的,必须指定其中一个属性。

vmSize

string

池中虚拟机的大小。 池中的所有虚拟机大小相同。
有关使用 cloudServiceConfiguration) 创建的云服务池 (池的可用虚拟机大小的信息,请参阅云服务 (https://azure.microsoft.com/documentation/articles/cloud-services-sizes-specs/) 的大小。 Batch 支持除 ExtraSmall、A1V2 和 A2V2 以外的所有云服务 VM 大小。 有关使用 virtualMachineConfiguration) 创建的虚拟机市场 (池的映像的池的可用 VM 大小的信息,请参阅适用于 虚拟机 (Linux) (https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) 或 虚拟机 (Windows) (https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/) 的大小。 Batch 支持除STANDARD_A0和具有高级存储 (STANDARD_GS、STANDARD_DS和STANDARD_DSV2系列) 以外的所有 Azure VM 大小。

PoolEndpointConfiguration

池的终结点配置。

名称 类型 说明
inboundNATPools

InboundNATPool[]

入站 NAT 池的列表,可用于在外部对单个计算节点上的特定端口进行寻址。
每个 Batch 池的最大入站 NAT 池数为 5。 如果超过最大入站 NAT 池数,请求将失败,并显示 HTTP 状态代码 400。 如果 IPAddressProvisioningType 为 NoPublicIPAddresses,则无法指定此项。

PublicIPAddressConfiguration

池的网络配置的公共 IP 地址配置。

名称 类型 说明
ipAddressIds

string[]

预配计算节点时 Batch 服务将使用的公共 IP 列表。
此处指定的 IP 数限制池的最大大小 - 可为每个公共 IP 分配 100 个专用节点或 100 个现成/低优先级节点。 例如,需要 250 个专用 VM 的池至少需要指定 3 个公共 IP。 此集合的每个元素采用以下形式:/subscriptions/{subscription}/resourceGroups/{group}/providers/Microsoft.Network/publicIPAddresses/{ip}。

provision

IPAddressProvisioningType

池的公共 IP 地址的预配类型。
默认值为 BatchManaged。

ResourceFile

要下载到计算节点的单个文件或多个文件。

名称 类型 说明
autoStorageContainerName

string

自动存储帐户中的存储容器名称。
autoStorageContainerName、storageContainerUrl 和 httpUrl 属性互斥,必须指定其中一个属性。

blobPrefix

string

从 Azure 存储容器下载 Blob 时要使用的 Blob 前缀。 仅下载名称以指定前缀开头的 blob。
仅当使用 autoStorageContainerName 或 storageContainerUrl 时, 属性才有效。 此前缀可以是部分文件名或子目录。 如果未指定前缀,则将下载容器中的所有文件。

fileMode

string

八进制格式的文件权限模式属性。
此属性仅适用于下载到 Linux 计算节点的文件。 如果为将下载到 Windows 计算节点的 resourceFile 指定了它,则会忽略它。 如果未为 Linux 计算节点指定此属性,则对文件应用默认值 0770。

filePath

string

计算节点上下载文件的位置, () 相对于任务的工作目录。
如果指定了 httpUrl 属性,则 filePath 是必需的,并描述文件将下载到的路径,包括文件名。 否则,如果指定了 autoStorageContainerName 或 storageContainerUrl 属性,则 filePath 是可选的,并且是将文件下载到的目录。 如果 filePath 用作目录,则已与输入数据关联的任何目录结构都将完全保留并追加到指定的 filePath 目录。 指定的相对路径不能从任务的工作目录 (例如通过使用“..”) 。

httpUrl

string

要下载的文件的 URL。
autoStorageContainerName、storageContainerUrl 和 httpUrl 属性互斥,必须指定其中一个属性。 如果 URL 指向 Azure Blob 存储,则它必须可从计算节点中读取。 可通过三种方式获取 Azure 存储中 Blob 的此类 URL:包括共享访问签名 (SAS) 授予对 blob 的读取权限、使用具有读取权限的托管标识,或设置 Blob 或其容器的 ACL 以允许公共访问。

identityReference

ComputeNodeIdentityReference

对用户分配的标识的引用,用于访问 storageContainerUrl 或 httpUrl 指定的Azure Blob 存储
对与计算节点将使用的 Batch 池关联的用户分配标识的引用。

storageContainerUrl

string

Azure Blob 存储中 Blob 容器的 URL。
autoStorageContainerName、storageContainerUrl 和 httpUrl 属性互斥,必须指定其中一个属性。 此 URL 必须可从计算节点中读取和列出。 可通过三种方式为 Azure 存储中的容器获取此类 URL:包括共享访问签名 (SAS) 授予对容器的读取和列出权限,使用具有读取和列出权限的托管标识,或设置容器的 ACL 以允许公共访问。

SecurityProfile

指定虚拟机或虚拟机规模集的安全配置文件设置。

名称 类型 说明
encryptionAtHost

boolean

用户可以在请求中使用此属性来启用或禁用虚拟机或虚拟机规模集的主机加密。 这将为所有磁盘启用加密,包括主机本身的资源/临时磁盘。

securityType

SecurityTypes

指定虚拟机的 SecurityType。 必须将其设置为任何指定的值才能启用 UefiSettings。

uefiSettings

UefiSettings

指定创建虚拟机时使用的安全设置,例如安全启动和 vTPM。
指定创建虚拟机时使用的安全设置,例如安全启动和 vTPM。

SecurityTypes

指定虚拟机的 SecurityType。 必须将其设置为任何指定的值才能启用 UefiSettings。

名称 类型 说明
trustedLaunch

string

受信任启动能够防范具有持续性的高级攻击手法。

ServiceArtifactReference

指定使用“最新”映像版本时,用于为规模集中的所有虚拟机设置相同映像版本的服务项目引用 ID。

名称 类型 说明
id

string

ServiceArtifactReference 的服务项目引用 ID
服务项目引用 ID 的格式为 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/serviceArtifacts/{serviceArtifactName}/vmArtifactsProfiles/{vmArtifactsProfilesName}

StartTask

当节点加入Azure Batch服务中的池时,或者在重新启动或重置计算节点映像时运行的任务。

名称 类型 说明
commandLine

string

StartTask 的命令行。
命令行不在 shell 下运行,因此无法利用 shell 功能,例如环境变量扩展。 如果要利用此类功能,则应在命令行中调用 shell,例如在 Windows 中使用“cmd /c MyCommand”或 Linux 中的“/bin/sh -c MyCommand”。 如果命令行引用文件路径,则应使用相对于 Task 工作目录) 的相对路径 (,或使用 Batch 提供的环境变量 (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables) 。

containerSettings

TaskContainerSettings

运行 StartTask 的容器的设置。
指定此项后,所有目录以递归方式AZ_BATCH_NODE_ROOT_DIR (节点上Azure Batch目录的根目录) 映射到容器中,所有 Task 环境变量都映射到容器中,任务命令行在容器中执行。 AZ_BATCH_NODE_ROOT_DIR 外部容器中生成的文件可能不会反映在主机磁盘上,这意味着 Batch 文件 API 将无法访问这些文件。

environmentSettings

EnvironmentSetting[]

StartTask 的环境变量设置列表。

maxTaskRetryCount

integer

可以重试任务的最大次数。
如果任务退出代码为非零,Batch 服务会重试任务。 请注意,此值专门用于控制重试的次数。 Batch 服务将尝试一次任务,然后可能会重试到此限制。 例如,如果最大重试计数为 3,则 Batch 在首次尝试 (最多尝试 4 次 Task,) 重试 3 次。 如果最大重试计数为 0,Batch 服务不会重试 Task。 如果最大重试计数为 -1,Batch 服务将无限制地重试任务,但不建议对启动任务或任何任务执行此操作。 默认值为 0(不重试)。

resourceFiles

ResourceFile[]

运行命令行之前 Batch 服务将下载到计算节点的文件列表。 资源文件列表有最大大小。 超过最大大小时,请求将失败,响应错误代码为 RequestEntityTooLarge。 如果发生这种情况,必须减小 ResourceFiles 集合的大小。 这可以通过 .zip 文件、应用程序包或 Docker 容器来实现。
此元素下列出的文件位于 Task 的工作目录中。

userIdentity

UserIdentity

运行 StartTask 时所依据的用户标识。
如果省略,则任务将作为任务唯一的非管理用户运行。

waitForSuccess

boolean

Batch 服务是否应等待 StartTask 成功完成 (即退出代码 0) 退出,然后再计划计算节点上的任何任务。
如果 True 且 StartTask 在节点上失败,Batch 服务会将 StartTask 重试到最大重试计数 (maxTaskRetryCount) 。 如果任务在所有重试后仍未成功完成,则 Batch 服务会将节点标记为不可用,并且不会为其计划任务。 可以通过计算节点状态和故障信息详细信息来检测此情况。 如果为 false,Batch 服务将不会等待 StartTask 完成。 在这种情况下,其他任务可以在 StartTask 仍在运行时开始在计算节点上执行;即使 StartTask 失败,也会继续在计算节点上计划新任务。 默认值为 true。

StorageAccountType

用于创建数据磁盘或 OS 磁盘的存储帐户类型。

名称 类型 说明
premium_lrs

string

数据磁盘/OS 磁盘应使用高级本地冗余存储。

standard_lrs

string

数据磁盘/OS 磁盘应使用标准本地冗余存储。

standardssd_lrs

string

数据磁盘/OS 磁盘应使用标准 SSD 本地冗余存储。

TaskContainerSettings

Task 的容器设置。

名称 类型 说明
containerRunOptions

string

容器 create 命令的其他选项。
除了 Batch 服务控制的选项外,这些附加选项还作为参数提供给“docker create”命令。

imageName

string

用于创建要在其中运行 Task 的容器的映像。
这是完整的映像引用,将指定为“docker pull”。 如果未提供标记作为映像名称的一部分,则默认使用标记“:latest”。

registry

ContainerRegistry

包含容器映像的专用注册表。
如果已在创建池时提供此设置,则可以省略此设置。

workingDirectory

ContainerWorkingDirectory

容器任务工作目录的位置。
默认值为“taskWorkingDirectory”。

TaskSchedulingPolicy

指定任务应如何跨计算节点分布。

名称 类型 说明
nodeFillType

ComputeNodeFillType

任务如何跨池中的计算节点分布。
如果未指定,则默认值为 spread。

UefiSettings

指定创建虚拟机时使用的安全设置,例如安全启动和 vTPM。

名称 类型 说明
secureBootEnabled

boolean

指定是否应在虚拟机上启用安全启动。

vTpmEnabled

boolean

指定是否应在虚拟机上启用 vTPM。

UserAccount

用于创建用于在Azure Batch计算节点上执行任务的用户的属性。

名称 类型 说明
elevationLevel

ElevationLevel

用户帐户的提升级别。
默认值为 nonAdmin。

linuxUserConfiguration

LinuxUserConfiguration

用户帐户的 Linux 特定用户配置。
如果在 Windows 池上指定此属性,则会忽略此属性。 如果未指定,则使用默认选项创建用户。

name

string

用户帐户的名称。 名称可以包含最大长度为 20 的任何 Unicode 字符。

password

string

用户帐户的密码。

windowsUserConfiguration

WindowsUserConfiguration

用户帐户的 Windows 特定用户配置。
仅当用户位于 Windows 池中时,才能指定此属性。 如果未指定 并在 Windows 池上,则使用默认选项创建用户。

UserIdentity

运行 Task 时所依据的用户标识的定义。

名称 类型 说明
autoUser

AutoUserSpecification

运行 Task 的自动用户。
userName 和 autoUser 属性互斥;必须指定一个,但不能同时指定两者。

username

string

运行 Task 时所依据的用户标识的名称。
userName 和 autoUser 属性互斥;必须指定一个,但不能同时指定两者。

VirtualMachineConfiguration

基于 Azure 虚拟机基础结构的池中计算节点的配置。

名称 类型 说明
containerConfiguration

ContainerConfiguration

池的容器配置。
如果指定,则会在池中的每个计算节点上执行安装程序,以允许任务在容器中运行。 在此池上运行的所有常规任务和作业管理器任务都必须指定 containerSettings 属性,所有其他任务都可以指定它。

dataDisks

DataDisk[]

附加到池中计算节点的数据磁盘的配置。
如果池中的计算节点需要附加空数据磁盘,则必须指定此属性。 这无法更新。 每个计算节点获取自己的磁盘, (磁盘不是文件共享) 。 无法附加现有磁盘,每个附加磁盘均为空。 从池中删除计算节点时,磁盘及其关联的所有数据也会被删除。 附加磁盘后未格式化,在使用之前必须格式化磁盘 - 有关详细信息,请参阅 https://docs.microsoft.com/en-us/azure/virtual-machines/linux/classic/attach-disk#initialize-a-new-data-disk-in-linuxhttps://docs.microsoft.com/en-us/azure/virtual-machines/windows/attach-disk-ps#add-an-empty-data-disk-to-a-virtual-machine

diskEncryptionConfiguration

DiskEncryptionConfiguration

池的磁盘加密配置。
如果已指定,则会在节点预配期间对池中的每个节点执行加密。

extensions

VMExtension[]

池的虚拟机扩展。
如果指定,则会在每个节点上安装此配置中提到的扩展。

imageReference

ImageReference

对 Azure 虚拟机市场映像或要使用的自定义虚拟机映像的引用。

licenseType

string

部署操作系统时要使用的本地许可证的类型。
这仅适用于包含 Windows 操作系统的映像,并且仅当你为将要部署的计算节点持有有效的本地许可证时才应使用。 如果省略,则不应用任何本地许可折扣。 值为:

Windows_Server - 本地许可证适用于 Windows Server。 Windows_Client - 本地许可证适用于 Windows 客户端。

nodeAgentSKUId

string

要在池中的计算节点上预配的 Batch 计算节点代理的 SKU。
Batch 计算节点代理是在池中的每个计算节点上运行的程序,并在计算节点与 Batch 服务之间提供命令和控制接口。 计算节点代理的不同实现(称为 SKU)适用于不同的操作系统。 必须指定与所选映像引用匹配的计算节点代理 SKU。 若要获取支持的计算节点代理 SKU 的列表及其已验证映像引用的列表,请参阅“列出支持的计算节点代理 SKU”操作。

nodePlacementConfiguration

NodePlacementConfiguration

池的节点放置配置。
此配置将指定有关如何以物理方式分配池中的节点的规则。

osDisk

OSDisk

虚拟机操作系统磁盘的设置。

securityProfile

SecurityProfile

指定虚拟机或虚拟机规模集的安全配置文件设置。
指定虚拟机或虚拟机规模集的安全配置文件设置。

serviceArtifactReference

ServiceArtifactReference

指定使用“最新”映像版本时,用于为规模集中的所有虚拟机设置相同映像版本的服务项目引用 ID。
服务项目引用 ID 的格式为 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/gallerys/{galleryName}/serviceArtifacts/{serviceArtifactName}/vmArtifactsProfiles/{vmArtifactsProfilesName}

windowsConfiguration

WindowsConfiguration

虚拟机上的 Windows 操作系统设置。
如果 imageReference 属性指定 Linux OS 映像,则不得指定此属性。

VMExtension

虚拟机扩展的配置。

名称 类型 说明
autoUpgradeMinorVersion

boolean

指示如果扩展在部署时可用,则是否应使用较新的次要版本。 但是,部署后,除非重新部署,否则扩展不会升级次要版本,即使此属性设置为 true 也是如此。

enableAutomaticUpgrade

boolean

指示如果有较新版本的可用扩展,则平台是否应自动升级扩展。

name

string

虚拟机扩展的名称。

protectedSettings

object

该扩展可以包含 protectedSettings 或 protectedSettingsFromKeyVault,或者根本不包含受保护的设置。

provisionAfterExtensions

string[]

扩展名称的集合。
扩展名称的集合,之后需要预配此扩展。

publisher

string

扩展处理程序发布者的名称。

settings

object

扩展的 JSON 格式公共设置。

type

string

扩展的类型。

typeHandlerVersion

string

脚本处理程序的版本。

WindowsConfiguration

要应用于虚拟机的 Windows 操作系统设置。

名称 类型 说明
enableAutomaticUpdates

boolean

是否在虚拟机上启用自动更新。
如果省略,则默认值为 true。

WindowsUserConfiguration

用于在 Windows 计算节点上创建用户帐户的属性。

名称 类型 说明
loginMode

LoginMode

用户的登录模式
VirtualMachineConfiguration 池的默认值为“batch”,CloudServiceConfiguration 池的默认值为“interactive”。