共用方式為


Microsoft.Batch batchAccounts/pools 2020-03-01

Bicep 資源定義

batchAccounts/pools 資源類型可以使用目標作業來部署:

如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄檔

資源格式

若要建立 Microsoft.Batch/batchAccounts/pools 資源,請將下列 Bicep 新增至範本。

resource symbolicname 'Microsoft.Batch/batchAccounts/pools@2020-03-01' = {
  parent: resourceSymbolicName
  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'
          ]
        }
        imageReference: {
          id: 'string'
          offer: 'string'
          publisher: 'string'
          sku: 'string'
          version: 'string'
        }
        licenseType: 'string'
        nodeAgentSkuId: 'string'
        windowsConfiguration: {
          enableAutomaticUpdates: bool
        }
      }
    }
    displayName: 'string'
    interNodeCommunication: 'string'
    maxTasksPerNode: int
    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'
    }
    userAccounts: [
      {
        elevationLevel: 'string'
        linuxUserConfiguration: {
          gid: int
          sshPrivateKey: 'string'
          uid: int
        }
        name: 'string'
        password: 'string'
        windowsUserConfiguration: {
          loginMode: 'string'
        }
      }
    ]
    vmSize: 'string'
  }
}

屬性值

ApplicationPackageReference

名字 描述 價值
id 要安裝的應用程式套件識別碼。 這必須位於與集區相同的批次帳戶內。 這可以是特定版本的參考,如果存在,則為預設版本。 字串 (必要)
版本 如果省略此專案,而且此應用程式未指定預設版本,要求會失敗,錯誤碼 InvalidApplicationPackageReferences。 如果您直接呼叫 REST API,HTTP 狀態代碼為 409。 字串

AutoScaleSettings

名字 描述 價值
evaluationInterval 如果省略,預設值為15分鐘(PT15M)。 字串
公式 集區中所需計算節點數目的公式。 字串 (必要)

AutoUserSpecification

名字 描述 價值
elevationLevel 預設值為 nonAdmin。 'Admin'
'NonAdmin'
範圍 預設值為 Pool。 如果集區正在執行 Windows,則當需要更嚴格的工作隔離時,應該指定 Task 的值。 例如,如果工作以可能會影響其他工作的方式變動登錄,或已在集區上指定憑證,而該集區上不應該由一般工作存取,但應該可透過啟動工作存取。 'Pool'
'Task'

AzureBlobFileSystemConfiguration

名字 描述 價值
accountKey 這個屬性與 sasKey 互斥,而且必須指定一個。 字串
accountName Azure 記憶體帳戶名稱。 字串 (必要)
blobfuseOptions 這些是 Windows 中的「net use」選項,Linux 中的「掛接」選項。 字串
containerName Azure Blob 記憶體容器名稱。 字串 (必要)
relativeMountPath 所有文件系統都會掛接至 Batch 掛接目錄,可透過 AZ_BATCH_NODE_MOUNTS_DIR 環境變數存取。 字串 (必要)
sasKey 這個屬性與 accountKey 互斥,而且必須指定一個。 字串

AzureFileShareConfiguration

名字 描述 價值
accountKey Azure 記憶體帳戶金鑰。 字串 (必要)
accountName Azure 記憶體帳戶名稱。 字串 (必要)
azureFileUrl 這是格式為 『https://{account}.file.core.windows.net/』。 字串 (必要)
mountOptions 這些是 Windows 中的「net use」選項,Linux 中的「掛接」選項。 字串
relativeMountPath 所有文件系統都會掛接至 Batch 掛接目錄,可透過 AZ_BATCH_NODE_MOUNTS_DIR 環境變數存取。 字串 (必要)

CertificateReference

名字 描述 價值
id 要安裝在集區上之憑證的完整標識碼。 這必須位於與集區相同的批次帳戶內。 字串 (必要)
storeLocation 預設值為 currentUser。 此屬性僅適用於使用 Windows 節點設定的集區(也就是使用 cloudServiceConfiguration 建立,或使用 Windows 映像參考使用 virtualMachineConfiguration 建立)。 針對 Linux 計算節點,憑證會儲存在工作工作目錄內的目錄中,而環境變數AZ_BATCH_CERTIFICATES_DIR會提供給工作來查詢此位置。 對於可見度為 『remoteUser』 的憑證,會在使用者的主目錄中建立 『certs』 目錄(例如 /home/{user-name}/certs),並將憑證放在該目錄中。 'CurrentUser'
'LocalMachine'
storeName 此屬性僅適用於使用 Windows 節點設定的集區(也就是使用 cloudServiceConfiguration 建立,或使用 Windows 映像參考使用 virtualMachineConfiguration 建立)。 常見的存放區名稱包括:My、Root、CA、Trust、Disallowed、TrustedPeople、TrustedPublisher、AuthRoot、AddressBook,但也可以使用任何自定義存放區名稱。 預設值為 My。 字串
能見度 計算節點上的哪些用戶帳戶應該可以存取憑證的私用數據。 包含任何的字串數組:
'RemoteUser'
'StartTask'
'Task'

CifsMountConfiguration

名字 描述 價值
mountOptions 這些是 Windows 中的「net use」選項,Linux 中的「掛接」選項。 字串
密碼 要用於驗證 CIFS 檔案系統的密碼。 字串 (必要)
relativeMountPath 所有文件系統都會掛接至 Batch 掛接目錄,可透過 AZ_BATCH_NODE_MOUNTS_DIR 環境變數存取。 字串 (必要)
要掛接之文件系統的 URI。 字串 (必要)
username 要用於對 CIFS 檔案系統進行驗證的使用者。 字串 (必要)

CloudServiceConfiguration

名字 描述 價值
osFamily 可能的值為: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 預設值為 * ,指定指定作業系統系列的最新操作系統版本。 字串

ContainerConfiguration

名字 描述 價值
containerImageNames 這是完整的映像參考,如同指定為 “docker pull”。 除非映像具有替代登錄的完整,否則映像會從預設 Docker 登錄進行來源。 string[]
containerRegistries 如果必須從需要認證的私人登錄下載任何映像,則必須在這裡提供這些認證。 ContainerRegistry[]
類型 要使用的容器技術。 'DockerCompatible' (必要)

ContainerRegistry

名字 描述 價值
密碼 登入登錄伺服器的密碼。 字串 (必要)
registryServer 如果省略,預設值為 「docker.io」。。 字串
username 要登入登錄伺服器的用戶名稱。 字串 (必要)

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。 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

名字 描述 價值
名字 環境變數的名稱。 字串 (必要)
價值 環境變數的值。 字串

FixedScaleSettings

名字 描述 價值
nodeDeallocationOption 如果省略,預設值為 Requeue。 'Requeue'
'RetainedData'
'TaskCompletion'
'Terminate'
resizeTimeout 預設值為15分鐘。 逾時值使用 ISO 8601 格式。 例如,使用 PT10M 10 分鐘。 最小值為 5 分鐘。 如果您指定小於 5 分鐘的值,Batch 服務會拒絕要求併發生錯誤;如果您直接呼叫 REST API,則 HTTP 狀態代碼為 400 (不正確的要求)。 字串
targetDedicatedNodes 至少必須設定其中一個 targetDedicatedNodes,targetLowPriorityNodes。 int
targetLowPriorityNodes 至少必須設定其中一個 targetDedicatedNodes,targetLowPriorityNodes。 int

ImageReference

名字 描述 價值
id 這個屬性與其他屬性互斥。 共用映像庫映像必須具有與 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 集區內必須是唯一的。 可接受的值介於 1 到 65535 之間,除了 22、3389、29876 和 29877 之外,保留這些值。 如果提供任何保留值,要求就會失敗,且 HTTP 狀態代碼為 400。 int (必要)
frontendPortRangeEnd 可接受的值範圍介於 1 到 65534 之間,但 Batch 服務保留的埠從 50000 到 55000。 集區內的所有範圍都必須是相異且無法重疊的。 如果提供任何保留或重疊的值,要求就會失敗,且 HTTP 狀態代碼為 400。 int (必要)
frontendPortRangeStart 可接受的值範圍介於 1 到 65534 之間,但保留的埠介於 50000 到 55000 之間。 集區內的所有範圍都必須是相異且無法重疊的。 如果提供任何保留或重疊的值,要求就會失敗,且 HTTP 狀態代碼為 400。 int (必要)
名字 名稱在 Batch 集區內必須是唯一的,可以包含字母、數位、底線、句號和連字元。 名稱必須以字母或數字開頭,結尾必須是字母、數位或底線,且不能超過 77 個字元。 如果提供任何無效的值,要求就會失敗,且 HTTP 狀態代碼為 400。 字串 (必要)
networkSecurityGroupRules 可以跨 Batch 集區上所有端點指定的規則數目上限為 25。 如果未指定網路安全組規則,則會建立默認規則以允許輸入存取指定的 backendPort。 如果超過網路安全組規則的最大數目,要求會失敗,並出現 HTTP 狀態代碼 400。 NetworkSecurityGroupRule[]
協定 端點的通訊協定。 'TCP'
'UDP' (必要)

LinuxUserConfiguration

名字 描述 價值
gid uid 和 gid 屬性必須一起指定或完全不指定。 如果未指定,則基礎操作系統會挑選 gid。 int
sshPrivateKey 私鑰不得受到密碼保護。 當集區的 enableInterNodeCommunication 屬性為 true 時,私鑰用於在 Linux 集區中的節點之間自動設定非對稱密鑰型驗證(如果 enableInterNodeCommunication 為 false,則會忽略它)。 其方式是將金鑰組放入使用者的 .ssh 目錄中。 如果未指定,則不會在節點之間設定無密碼 SSH(不會修改使用者的 .ssh 目錄)。 字串
uid uid 和 gid 屬性必須一起指定或完全不指定。 如果未指定基礎操作系統,則會挑選 uid。 int

MetadataItem

名字 描述 價值
名字 元數據項目的名稱。 字串 (必要)
價值 元數據專案的值。 字串 (必要)

Microsoft.Batch/batchAccounts/pools

名字 描述 價值
名字 資源名稱 字串

約束:
最小長度 = 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) 角色。 指定的子網必須允許來自 Azure Batch 服務的通訊,才能排程計算節點上的工作。 藉由檢查指定的 VNet 是否有任何相關聯的網路安全組 (NSG),即可驗證此情況。 如果 NSG 拒絕與指定子網中計算節點的通訊,Batch 服務會將計算節點的狀態設定為無法使用。 如果指定的 VNet 有任何相關聯的網路安全組 (NSG),則必須啟用一些保留的系統埠來進行輸入通訊。 針對使用虛擬機設定建立的集區,請啟用埠 29876 和 29877,以及適用於 Linux 的埠 22 和適用於 Windows 的埠 3389。 針對使用雲端服務設定建立的集區,請啟用埠 10100、20100 和 30100。 同時在埠 443 上啟用對 Azure 記憶體的輸出連線。 針對 cloudServiceConfiguration 集區,僅支援「傳統」VNET。 如需詳細資訊,請參閱:/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration 字串

NetworkSecurityGroupRule

名字 描述 價值
訪問 應該針對指定的IP位址、子網範圍或卷標採取的動作。 'Allow'
'拒絕' (必要)
優先權 集區內的優先順序必須是唯一的,而且會依優先順序進行評估。 數位越低,優先順序越高。 例如,可以使用訂單號碼 150、250 和 350 來指定規則。 順序編號為 150 的規則優先於順序為 250 的規則。 允許的優先順序為 150 到 4096。 如果提供任何保留或重複的值,要求就會失敗,且 HTTP 狀態代碼為 400。 int (必要)
sourceAddressPrefix 有效值為單一IP位址(例如10.10.10.10.10)、IP子網(例如192.168.1.0/24)、預設標記或 * (適用於所有位址)。 如果提供任何其他值,要求就會因為 HTTP 狀態代碼 400 而失敗。 字串 (必要)
sourcePortRanges 有效值為 『*』 (所有埠 0 - 65535) 或埠或埠範圍的陣列(例如 100-200)。 埠的範圍應介於 0 到 65535 和埠範圍或埠不能重疊。 如果提供任何其他值,要求就會因為 HTTP 狀態代碼 400 而失敗。 預設值為 *。 string[]

NFSMountConfiguration

名字 描述 價值
mountOptions 這些是 Windows 中的「net use」選項,Linux 中的「掛接」選項。 字串
relativeMountPath 所有文件系統都會掛接至 Batch 掛接目錄,可透過 AZ_BATCH_NODE_MOUNTS_DIR 環境變數存取。 字串 (必要)
要掛接之文件系統的 URI。 字串 (必要)

PoolEndpointConfiguration

名字 描述 價值
inboundNatPools 每個 Batch 集區的輸入 NAT 集區數目上限為 5。 如果超過輸入 NAT 集區數目上限,要求會失敗,並出現 HTTP 狀態代碼 400。 InboundNatPool[] (必要)

PoolProperties

名字 描述 價值
applicationLicenses 應用程式授權清單必須是可用 Batch 服務應用程式授權的子集。 如果要求不支持的授權,集區建立將會失敗。 string[]
applicationPackages 應用程式套件參考的變更會影響聯結集區的所有新計算節點,但在重新啟動或重新映像之前,不會影響已在集區中的計算節點。 在任何指定的集區上,最多有10個應用程式套件參考。 ApplicationPackageReference[]
證書 針對 Windows 計算節點,Batch 服務會將憑證安裝至指定的證書存儲和位置。 針對 Linux 計算節點,憑證會儲存在工作工作目錄內的目錄中,而環境變數AZ_BATCH_CERTIFICATES_DIR會提供給工作來查詢此位置。 對於可見度為 『remoteUser』 的憑證,會在使用者的主目錄中建立 『certs』 目錄(例如 /home/{user-name}/certs),並將憑證放在該目錄中。 CertificateReference[]
deploymentConfiguration 使用 CloudServiceConfiguration 會指定應該使用 Azure 雲端服務 (PaaS) 建立節點,而 VirtualMachineConfiguration 則使用 Azure 虛擬機 (IaaS)。 DeploymentConfiguration
displayName 顯示名稱不是唯一的,而且可以包含最大長度為 1024 的任何 Unicode 字元。 字串
interNodeCommunication 這會限制哪些節點可以指派給集區。 啟用此值可減少集區中配置要求節點數目的機會。 如果未指定,這個值會預設為 『Disabled』。 'Disabled'
'Enabled'
maxTasksPerNode 預設值為 1。 最大值是集區 vmSize 或 256 核心數目的 4 倍小。 int
元數據 Batch 服務不會將任何意義指派給元數據;它僅供使用者程式代碼使用。 MetadataItem[]
mountConfiguration 這支援 Azure 檔案服務、NFS、CIFS/SMB 和 Blobfuse。 MountConfiguration[]
networkConfiguration 集區的網路組態。 NetworkConfiguration
scaleSettings 定義集區所需的大小。 這可以是 'fixedScale',其中指定要求的目標DedicatedNodes,或 'autoScale',其會定義定期重新評估的公式。 如果未指定此屬性,集區將會有固定小數字數,且具有 0 個 targetDedicatedNodes。 ScaleSettings
startTask 在 PATCH (update) 作業中,這個屬性可以設定為空白物件,以從集區中移除開始工作。 StartTask
taskSchedulingPolicy 如果未指定,則會散佈預設值。 TaskSchedulingPolicy
userAccounts 要建立於集區中每個節點上的用戶帳戶清單。 UserAccount[]
vmSize 如需雲端服務集區可用虛擬機大小的相關信息(使用 cloudServiceConfiguration 建立的集區),請參閱雲端服務的大小(https://azure.microsoft.com/documentation/articles/cloud-services-sizes-specs/)。 Batch 支援 ExtraSmall 以外的所有雲端服務 VM 大小。 如需使用虛擬機 Marketplace 映像之集區可用 VM 大小的相關信息(使用 virtualMachineConfiguration 建立的集區)請參閱虛擬機的大小 (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和具有進階記憶體以外的所有 Azure VM 大小(STANDARD_GS、STANDARD_DS和STANDARD_DSV2系列)。 字串

PublicIPAddressConfiguration

名字 描述 價值
ipAddressIds 此處指定的IP數目會限制集區的大小上限 - 50 個專用節點或20個低優先順序節點可以配置給每個公用IP。 例如,需要 150 個專用 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 記憶體,則必須使用匿名存取來讀取;也就是說,Batch 服務在下載 Blob 時不會顯示任何認證。 Azure 記憶體中的 Blob 有兩種方式可取得這類 URL:包括授與 Blob 讀取許可權的共用存取簽章(SAS),或設定 Blob 或其容器的 ACL 以允許公用存取。 字串
storageContainerUrl autoStorageContainerName、storageContainerUrl 和 httpUrl 屬性互斥,其中一個必須指定。 此 URL 必須使用匿名存取來讀取且可列出;也就是說,Batch 服務在下載 Blob 時不會顯示任何認證。 Azure 記憶體中的 Blob 有兩種方式可取得這類 URL:包括授與 Blob 讀取和列表許可權的共用存取簽章(SAS),或設定 Blob 或其容器的 ACL 以允許公用存取。 字串

ScaleSettings

名字 描述 價值
autoScale 這個屬性和 fixedScale 互斥,而且必須指定其中一個屬性。 AutoScaleSettings
fixedScale 這個屬性和 autoScale 互斥,而且必須指定其中一個屬性。 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 服務結束代碼為非零,則會重試工作。 請注意,這個值會特別控制重試次數。 Batch 服務會嘗試工作一次,然後可能會重試到此限制。 例如,如果重試計數上限為 3,Batch 會嘗試工作最多 4 次(一次初始嘗試,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” 做為預設值。 字串 (必要)
註冊表 如果已在集區建立時提供,則可以省略此設定。 ContainerRegistry
workingDirectory 指出容器工作工作目錄所在位置的旗標。 默認值為 『taskWorkingDirectory』。 'ContainerImageDefault'
'TaskWorkingDirectory'

TaskSchedulingPolicy

名字 描述 價值
nodeFillType 工作應該如何分散到計算節點。 'Pack'
'傳播' (必要)

UserAccount

名字 描述 價值
elevationLevel nonAdmin - 自動使用者是標準使用者,沒有提升許可權的存取權。 admin - 自動使用者是具有較高存取權的使用者,並使用完整的系統管理員許可權運作。 預設值為 nonAdmin。 'Admin'
'NonAdmin'
linuxUserConfiguration 如果在 Windows 集區上指定,則會忽略這個屬性。 如果未指定,則會使用預設選項建立使用者。 LinuxUserConfiguration
名字 用戶帳戶的名稱。 字串 (必要)
密碼 用戶帳戶的密碼。 字串 (必要)
windowsUserConfiguration 只有當用戶位於 Windows 集區時,才能指定這個屬性。 如果未指定且在 Windows 集區上,則會使用預設選項建立使用者。 WindowsUserConfiguration

UserIdentity

名字 描述 價值
autoUser userName 和 autoUser 屬性互斥;您必須指定一個,但不能同時指定兩者。 AutoUserSpecification
userName userName 和 autoUser 屬性互斥;您必須指定一個,但不能同時指定兩者。 字串

VirtualMachineConfiguration

名字 描述 價值
containerConfiguration 如果指定,會在集區中的每個節點上執行安裝程式,以允許工作在容器中執行。 此集區上執行的所有一般工作和作業管理員工作都必須指定 containerSettings 屬性,而所有其他工作都可以指定它。 ContainerConfiguration
dataDisks 如果集區中的計算節點必須連結空的數據磁碟,則必須指定這個屬性。 DataDisk[]
diskEncryptionConfiguration 如果指定,則會在節點布建期間,在集區中的每個節點上執行加密。 DiskEncryptionConfiguration
imageReference Azure 虛擬機 Marketplace 映像或自定義虛擬機的 Azure 映像資源的參考。 若要取得 Azure Batch 驗證的所有 imageReferences 清單,請參閱「列出支援的節點代理程式 SKU」作業。 ImageReference (必要)
licenseType 這隻適用於包含 Windows 作業系統的映像,而且只有在您保留將部署之節點的有效內部部署授權時,才應該使用。 如果省略,則不會套用任何內部部署授權折扣。 值為:

Windows_Server - 內部部署授權適用於 Windows Server。
Windows_Client - 內部部署授權適用於 Windows 用戶端。
字串
nodeAgentSkuId Batch 節點代理程式是在集區中的每個節點上執行的程式,並提供節點與 Batch 服務之間的命令和控制介面。 針對不同的操作系統,節點代理程式有不同的實作,稱為 SKU。 您必須指定符合所選映像參考的節點代理程式 SKU。 若要取得支持的節點代理程式 SKU 清單及其已驗證映像參考清單,請參閱「列出支援的節點代理程式 SKU」作業。 字串 (必要)
windowsConfiguration 如果 imageReference 指定 Linux OS 映射,則不得指定此屬性。 WindowsConfiguration

WindowsConfiguration

名字 描述 價值
enableAutomaticUpdates 如果省略,預設值為 true。 bool

WindowsUserConfiguration

名字 描述 價值
loginMode 指定使用者的登入模式。 VirtualMachineConfiguration 集區的預設值為互動式模式,而 CloudServiceConfiguration 集區則為批次模式。 'Batch'
'Interactive'

快速入門範例

下列快速入門範例會部署此資源類型。

Bicep 檔案 描述
沒有公用IP位址的 Azure Batch 集區 此範本會建立 Azure Batch 簡化的節點通訊集區,而不需要公用 IP 位址。

ARM 樣本資源定義

batchAccounts/pools 資源類型可以使用目標作業來部署:

如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄檔

資源格式

若要建立 Microsoft.Batch/batchAccounts/pools 資源,請將下列 JSON 新增至範本。

{
  "type": "Microsoft.Batch/batchAccounts/pools",
  "apiVersion": "2020-03-01",
  "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" ]
        },
        "imageReference": {
          "id": "string",
          "offer": "string",
          "publisher": "string",
          "sku": "string",
          "version": "string"
        },
        "licenseType": "string",
        "nodeAgentSkuId": "string",
        "windowsConfiguration": {
          "enableAutomaticUpdates": "bool"
        }
      }
    },
    "displayName": "string",
    "interNodeCommunication": "string",
    "maxTasksPerNode": "int",
    "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"
    },
    "userAccounts": [
      {
        "elevationLevel": "string",
        "linuxUserConfiguration": {
          "gid": "int",
          "sshPrivateKey": "string",
          "uid": "int"
        },
        "name": "string",
        "password": "string",
        "windowsUserConfiguration": {
          "loginMode": "string"
        }
      }
    ],
    "vmSize": "string"
  }
}

屬性值

ApplicationPackageReference

名字 描述 價值
id 要安裝的應用程式套件識別碼。 這必須位於與集區相同的批次帳戶內。 這可以是特定版本的參考,如果存在,則為預設版本。 字串 (必要)
版本 如果省略此專案,而且此應用程式未指定預設版本,要求會失敗,錯誤碼 InvalidApplicationPackageReferences。 如果您直接呼叫 REST API,HTTP 狀態代碼為 409。 字串

AutoScaleSettings

名字 描述 價值
evaluationInterval 如果省略,預設值為15分鐘(PT15M)。 字串
公式 集區中所需計算節點數目的公式。 字串 (必要)

AutoUserSpecification

名字 描述 價值
elevationLevel 預設值為 nonAdmin。 'Admin'
'NonAdmin'
範圍 預設值為 Pool。 如果集區正在執行 Windows,則當需要更嚴格的工作隔離時,應該指定 Task 的值。 例如,如果工作以可能會影響其他工作的方式變動登錄,或已在集區上指定憑證,而該集區上不應該由一般工作存取,但應該可透過啟動工作存取。 'Pool'
'Task'

AzureBlobFileSystemConfiguration

名字 描述 價值
accountKey 這個屬性與 sasKey 互斥,而且必須指定一個。 字串
accountName Azure 記憶體帳戶名稱。 字串 (必要)
blobfuseOptions 這些是 Windows 中的「net use」選項,Linux 中的「掛接」選項。 字串
containerName Azure Blob 記憶體容器名稱。 字串 (必要)
relativeMountPath 所有文件系統都會掛接至 Batch 掛接目錄,可透過 AZ_BATCH_NODE_MOUNTS_DIR 環境變數存取。 字串 (必要)
sasKey 這個屬性與 accountKey 互斥,而且必須指定一個。 字串

AzureFileShareConfiguration

名字 描述 價值
accountKey Azure 記憶體帳戶金鑰。 字串 (必要)
accountName Azure 記憶體帳戶名稱。 字串 (必要)
azureFileUrl 這是格式為 『https://{account}.file.core.windows.net/』。 字串 (必要)
mountOptions 這些是 Windows 中的「net use」選項,Linux 中的「掛接」選項。 字串
relativeMountPath 所有文件系統都會掛接至 Batch 掛接目錄,可透過 AZ_BATCH_NODE_MOUNTS_DIR 環境變數存取。 字串 (必要)

CertificateReference

名字 描述 價值
id 要安裝在集區上之憑證的完整標識碼。 這必須位於與集區相同的批次帳戶內。 字串 (必要)
storeLocation 預設值為 currentUser。 此屬性僅適用於使用 Windows 節點設定的集區(也就是使用 cloudServiceConfiguration 建立,或使用 Windows 映像參考使用 virtualMachineConfiguration 建立)。 針對 Linux 計算節點,憑證會儲存在工作工作目錄內的目錄中,而環境變數AZ_BATCH_CERTIFICATES_DIR會提供給工作來查詢此位置。 對於可見度為 『remoteUser』 的憑證,會在使用者的主目錄中建立 『certs』 目錄(例如 /home/{user-name}/certs),並將憑證放在該目錄中。 'CurrentUser'
'LocalMachine'
storeName 此屬性僅適用於使用 Windows 節點設定的集區(也就是使用 cloudServiceConfiguration 建立,或使用 Windows 映像參考使用 virtualMachineConfiguration 建立)。 常見的存放區名稱包括:My、Root、CA、Trust、Disallowed、TrustedPeople、TrustedPublisher、AuthRoot、AddressBook,但也可以使用任何自定義存放區名稱。 預設值為 My。 字串
能見度 計算節點上的哪些用戶帳戶應該可以存取憑證的私用數據。 包含任何的字串數組:
'RemoteUser'
'StartTask'
'Task'

CifsMountConfiguration

名字 描述 價值
mountOptions 這些是 Windows 中的「net use」選項,Linux 中的「掛接」選項。 字串
密碼 要用於驗證 CIFS 檔案系統的密碼。 字串 (必要)
relativeMountPath 所有文件系統都會掛接至 Batch 掛接目錄,可透過 AZ_BATCH_NODE_MOUNTS_DIR 環境變數存取。 字串 (必要)
要掛接之文件系統的 URI。 字串 (必要)
username 要用於對 CIFS 檔案系統進行驗證的使用者。 字串 (必要)

CloudServiceConfiguration

名字 描述 價值
osFamily 可能的值為: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 預設值為 * ,指定指定作業系統系列的最新操作系統版本。 字串

ContainerConfiguration

名字 描述 價值
containerImageNames 這是完整的映像參考,如同指定為 “docker pull”。 除非映像具有替代登錄的完整,否則映像會從預設 Docker 登錄進行來源。 string[]
containerRegistries 如果必須從需要認證的私人登錄下載任何映像,則必須在這裡提供這些認證。 ContainerRegistry[]
類型 要使用的容器技術。 'DockerCompatible' (必要)

ContainerRegistry

名字 描述 價值
密碼 登入登錄伺服器的密碼。 字串 (必要)
registryServer 如果省略,預設值為 「docker.io」。。 字串
username 要登入登錄伺服器的用戶名稱。 字串 (必要)

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。 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

名字 描述 價值
名字 環境變數的名稱。 字串 (必要)
價值 環境變數的值。 字串

FixedScaleSettings

名字 描述 價值
nodeDeallocationOption 如果省略,預設值為 Requeue。 'Requeue'
'RetainedData'
'TaskCompletion'
'Terminate'
resizeTimeout 預設值為15分鐘。 逾時值使用 ISO 8601 格式。 例如,使用 PT10M 10 分鐘。 最小值為 5 分鐘。 如果您指定小於 5 分鐘的值,Batch 服務會拒絕要求併發生錯誤;如果您直接呼叫 REST API,則 HTTP 狀態代碼為 400 (不正確的要求)。 字串
targetDedicatedNodes 至少必須設定其中一個 targetDedicatedNodes,targetLowPriorityNodes。 int
targetLowPriorityNodes 至少必須設定其中一個 targetDedicatedNodes,targetLowPriorityNodes。 int

ImageReference

名字 描述 價值
id 這個屬性與其他屬性互斥。 共用映像庫映像必須具有與 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 集區內必須是唯一的。 可接受的值介於 1 到 65535 之間,除了 22、3389、29876 和 29877 之外,保留這些值。 如果提供任何保留值,要求就會失敗,且 HTTP 狀態代碼為 400。 int (必要)
frontendPortRangeEnd 可接受的值範圍介於 1 到 65534 之間,但 Batch 服務保留的埠從 50000 到 55000。 集區內的所有範圍都必須是相異且無法重疊的。 如果提供任何保留或重疊的值,要求就會失敗,且 HTTP 狀態代碼為 400。 int (必要)
frontendPortRangeStart 可接受的值範圍介於 1 到 65534 之間,但保留的埠介於 50000 到 55000 之間。 集區內的所有範圍都必須是相異且無法重疊的。 如果提供任何保留或重疊的值,要求就會失敗,且 HTTP 狀態代碼為 400。 int (必要)
名字 名稱在 Batch 集區內必須是唯一的,可以包含字母、數位、底線、句號和連字元。 名稱必須以字母或數字開頭,結尾必須是字母、數位或底線,且不能超過 77 個字元。 如果提供任何無效的值,要求就會失敗,且 HTTP 狀態代碼為 400。 字串 (必要)
networkSecurityGroupRules 可以跨 Batch 集區上所有端點指定的規則數目上限為 25。 如果未指定網路安全組規則,則會建立默認規則以允許輸入存取指定的 backendPort。 如果超過網路安全組規則的最大數目,要求會失敗,並出現 HTTP 狀態代碼 400。 NetworkSecurityGroupRule[]
協定 端點的通訊協定。 'TCP'
'UDP' (必要)

LinuxUserConfiguration

名字 描述 價值
gid uid 和 gid 屬性必須一起指定或完全不指定。 如果未指定,則基礎操作系統會挑選 gid。 int
sshPrivateKey 私鑰不得受到密碼保護。 當集區的 enableInterNodeCommunication 屬性為 true 時,私鑰用於在 Linux 集區中的節點之間自動設定非對稱密鑰型驗證(如果 enableInterNodeCommunication 為 false,則會忽略它)。 其方式是將金鑰組放入使用者的 .ssh 目錄中。 如果未指定,則不會在節點之間設定無密碼 SSH(不會修改使用者的 .ssh 目錄)。 字串
uid uid 和 gid 屬性必須一起指定或完全不指定。 如果未指定基礎操作系統,則會挑選 uid。 int

MetadataItem

名字 描述 價值
名字 元數據項目的名稱。 字串 (必要)
價值 元數據專案的值。 字串 (必要)

Microsoft.Batch/batchAccounts/pools

名字 描述 價值
apiVersion API 版本 '2020-03-01'
名字 資源名稱 字串

約束:
最小長度 = 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) 角色。 指定的子網必須允許來自 Azure Batch 服務的通訊,才能排程計算節點上的工作。 藉由檢查指定的 VNet 是否有任何相關聯的網路安全組 (NSG),即可驗證此情況。 如果 NSG 拒絕與指定子網中計算節點的通訊,Batch 服務會將計算節點的狀態設定為無法使用。 如果指定的 VNet 有任何相關聯的網路安全組 (NSG),則必須啟用一些保留的系統埠來進行輸入通訊。 針對使用虛擬機設定建立的集區,請啟用埠 29876 和 29877,以及適用於 Linux 的埠 22 和適用於 Windows 的埠 3389。 針對使用雲端服務設定建立的集區,請啟用埠 10100、20100 和 30100。 同時在埠 443 上啟用對 Azure 記憶體的輸出連線。 針對 cloudServiceConfiguration 集區,僅支援「傳統」VNET。 如需詳細資訊,請參閱:/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration 字串

NetworkSecurityGroupRule

名字 描述 價值
訪問 應該針對指定的IP位址、子網範圍或卷標採取的動作。 'Allow'
'拒絕' (必要)
優先權 集區內的優先順序必須是唯一的,而且會依優先順序進行評估。 數位越低,優先順序越高。 例如,可以使用訂單號碼 150、250 和 350 來指定規則。 順序編號為 150 的規則優先於順序為 250 的規則。 允許的優先順序為 150 到 4096。 如果提供任何保留或重複的值,要求就會失敗,且 HTTP 狀態代碼為 400。 int (必要)
sourceAddressPrefix 有效值為單一IP位址(例如10.10.10.10.10)、IP子網(例如192.168.1.0/24)、預設標記或 * (適用於所有位址)。 如果提供任何其他值,要求就會因為 HTTP 狀態代碼 400 而失敗。 字串 (必要)
sourcePortRanges 有效值為 『*』 (所有埠 0 - 65535) 或埠或埠範圍的陣列(例如 100-200)。 埠的範圍應介於 0 到 65535 和埠範圍或埠不能重疊。 如果提供任何其他值,要求就會因為 HTTP 狀態代碼 400 而失敗。 預設值為 *。 string[]

NFSMountConfiguration

名字 描述 價值
mountOptions 這些是 Windows 中的「net use」選項,Linux 中的「掛接」選項。 字串
relativeMountPath 所有文件系統都會掛接至 Batch 掛接目錄,可透過 AZ_BATCH_NODE_MOUNTS_DIR 環境變數存取。 字串 (必要)
要掛接之文件系統的 URI。 字串 (必要)

PoolEndpointConfiguration

名字 描述 價值
inboundNatPools 每個 Batch 集區的輸入 NAT 集區數目上限為 5。 如果超過輸入 NAT 集區數目上限,要求會失敗,並出現 HTTP 狀態代碼 400。 InboundNatPool[] (必要)

PoolProperties

名字 描述 價值
applicationLicenses 應用程式授權清單必須是可用 Batch 服務應用程式授權的子集。 如果要求不支持的授權,集區建立將會失敗。 string[]
applicationPackages 應用程式套件參考的變更會影響聯結集區的所有新計算節點,但在重新啟動或重新映像之前,不會影響已在集區中的計算節點。 在任何指定的集區上,最多有10個應用程式套件參考。 ApplicationPackageReference[]
證書 針對 Windows 計算節點,Batch 服務會將憑證安裝至指定的證書存儲和位置。 針對 Linux 計算節點,憑證會儲存在工作工作目錄內的目錄中,而環境變數AZ_BATCH_CERTIFICATES_DIR會提供給工作來查詢此位置。 對於可見度為 『remoteUser』 的憑證,會在使用者的主目錄中建立 『certs』 目錄(例如 /home/{user-name}/certs),並將憑證放在該目錄中。 CertificateReference[]
deploymentConfiguration 使用 CloudServiceConfiguration 會指定應該使用 Azure 雲端服務 (PaaS) 建立節點,而 VirtualMachineConfiguration 則使用 Azure 虛擬機 (IaaS)。 DeploymentConfiguration
displayName 顯示名稱不是唯一的,而且可以包含最大長度為 1024 的任何 Unicode 字元。 字串
interNodeCommunication 這會限制哪些節點可以指派給集區。 啟用此值可減少集區中配置要求節點數目的機會。 如果未指定,這個值會預設為 『Disabled』。 'Disabled'
'Enabled'
maxTasksPerNode 預設值為 1。 最大值是集區 vmSize 或 256 核心數目的 4 倍小。 int
元數據 Batch 服務不會將任何意義指派給元數據;它僅供使用者程式代碼使用。 MetadataItem[]
mountConfiguration 這支援 Azure 檔案服務、NFS、CIFS/SMB 和 Blobfuse。 MountConfiguration[]
networkConfiguration 集區的網路組態。 NetworkConfiguration
scaleSettings 定義集區所需的大小。 這可以是 'fixedScale',其中指定要求的目標DedicatedNodes,或 'autoScale',其會定義定期重新評估的公式。 如果未指定此屬性,集區將會有固定小數字數,且具有 0 個 targetDedicatedNodes。 ScaleSettings
startTask 在 PATCH (update) 作業中,這個屬性可以設定為空白物件,以從集區中移除開始工作。 StartTask
taskSchedulingPolicy 如果未指定,則會散佈預設值。 TaskSchedulingPolicy
userAccounts 要建立於集區中每個節點上的用戶帳戶清單。 UserAccount[]
vmSize 如需雲端服務集區可用虛擬機大小的相關信息(使用 cloudServiceConfiguration 建立的集區),請參閱雲端服務的大小(https://azure.microsoft.com/documentation/articles/cloud-services-sizes-specs/)。 Batch 支援 ExtraSmall 以外的所有雲端服務 VM 大小。 如需使用虛擬機 Marketplace 映像之集區可用 VM 大小的相關信息(使用 virtualMachineConfiguration 建立的集區)請參閱虛擬機的大小 (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和具有進階記憶體以外的所有 Azure VM 大小(STANDARD_GS、STANDARD_DS和STANDARD_DSV2系列)。 字串

PublicIPAddressConfiguration

名字 描述 價值
ipAddressIds 此處指定的IP數目會限制集區的大小上限 - 50 個專用節點或20個低優先順序節點可以配置給每個公用IP。 例如,需要 150 個專用 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 記憶體,則必須使用匿名存取來讀取;也就是說,Batch 服務在下載 Blob 時不會顯示任何認證。 Azure 記憶體中的 Blob 有兩種方式可取得這類 URL:包括授與 Blob 讀取許可權的共用存取簽章(SAS),或設定 Blob 或其容器的 ACL 以允許公用存取。 字串
storageContainerUrl autoStorageContainerName、storageContainerUrl 和 httpUrl 屬性互斥,其中一個必須指定。 此 URL 必須使用匿名存取來讀取且可列出;也就是說,Batch 服務在下載 Blob 時不會顯示任何認證。 Azure 記憶體中的 Blob 有兩種方式可取得這類 URL:包括授與 Blob 讀取和列表許可權的共用存取簽章(SAS),或設定 Blob 或其容器的 ACL 以允許公用存取。 字串

ScaleSettings

名字 描述 價值
autoScale 這個屬性和 fixedScale 互斥,而且必須指定其中一個屬性。 AutoScaleSettings
fixedScale 這個屬性和 autoScale 互斥,而且必須指定其中一個屬性。 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 服務結束代碼為非零,則會重試工作。 請注意,這個值會特別控制重試次數。 Batch 服務會嘗試工作一次,然後可能會重試到此限制。 例如,如果重試計數上限為 3,Batch 會嘗試工作最多 4 次(一次初始嘗試,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” 做為預設值。 字串 (必要)
註冊表 如果已在集區建立時提供,則可以省略此設定。 ContainerRegistry
workingDirectory 指出容器工作工作目錄所在位置的旗標。 默認值為 『taskWorkingDirectory』。 'ContainerImageDefault'
'TaskWorkingDirectory'

TaskSchedulingPolicy

名字 描述 價值
nodeFillType 工作應該如何分散到計算節點。 'Pack'
'傳播' (必要)

UserAccount

名字 描述 價值
elevationLevel nonAdmin - 自動使用者是標準使用者,沒有提升許可權的存取權。 admin - 自動使用者是具有較高存取權的使用者,並使用完整的系統管理員許可權運作。 預設值為 nonAdmin。 'Admin'
'NonAdmin'
linuxUserConfiguration 如果在 Windows 集區上指定,則會忽略這個屬性。 如果未指定,則會使用預設選項建立使用者。 LinuxUserConfiguration
名字 用戶帳戶的名稱。 字串 (必要)
密碼 用戶帳戶的密碼。 字串 (必要)
windowsUserConfiguration 只有當用戶位於 Windows 集區時,才能指定這個屬性。 如果未指定且在 Windows 集區上,則會使用預設選項建立使用者。 WindowsUserConfiguration

UserIdentity

名字 描述 價值
autoUser userName 和 autoUser 屬性互斥;您必須指定一個,但不能同時指定兩者。 AutoUserSpecification
userName userName 和 autoUser 屬性互斥;您必須指定一個,但不能同時指定兩者。 字串

VirtualMachineConfiguration

名字 描述 價值
containerConfiguration 如果指定,會在集區中的每個節點上執行安裝程式,以允許工作在容器中執行。 此集區上執行的所有一般工作和作業管理員工作都必須指定 containerSettings 屬性,而所有其他工作都可以指定它。 ContainerConfiguration
dataDisks 如果集區中的計算節點必須連結空的數據磁碟,則必須指定這個屬性。 DataDisk[]
diskEncryptionConfiguration 如果指定,則會在節點布建期間,在集區中的每個節點上執行加密。 DiskEncryptionConfiguration
imageReference Azure 虛擬機 Marketplace 映像或自定義虛擬機的 Azure 映像資源的參考。 若要取得 Azure Batch 驗證的所有 imageReferences 清單,請參閱「列出支援的節點代理程式 SKU」作業。 ImageReference (必要)
licenseType 這隻適用於包含 Windows 作業系統的映像,而且只有在您保留將部署之節點的有效內部部署授權時,才應該使用。 如果省略,則不會套用任何內部部署授權折扣。 值為:

Windows_Server - 內部部署授權適用於 Windows Server。
Windows_Client - 內部部署授權適用於 Windows 用戶端。
字串
nodeAgentSkuId Batch 節點代理程式是在集區中的每個節點上執行的程式,並提供節點與 Batch 服務之間的命令和控制介面。 針對不同的操作系統,節點代理程式有不同的實作,稱為 SKU。 您必須指定符合所選映像參考的節點代理程式 SKU。 若要取得支持的節點代理程式 SKU 清單及其已驗證映像參考清單,請參閱「列出支援的節點代理程式 SKU」作業。 字串 (必要)
windowsConfiguration 如果 imageReference 指定 Linux OS 映射,則不得指定此屬性。 WindowsConfiguration

WindowsConfiguration

名字 描述 價值
enableAutomaticUpdates 如果省略,預設值為 true。 bool

WindowsUserConfiguration

名字 描述 價值
loginMode 指定使用者的登入模式。 VirtualMachineConfiguration 集區的預設值為互動式模式,而 CloudServiceConfiguration 集區則為批次模式。 'Batch'
'Interactive'

快速入門範本

下列快速入門範本會部署此資源類型。

範本 描述
沒有公用IP位址的 Azure Batch 集區

部署至 Azure
此範本會建立 Azure Batch 簡化的節點通訊集區,而不需要公用 IP 位址。

Terraform (AzAPI 提供者) 資源定義

batchAccounts/pools 資源類型可以使用目標作業來部署:

  • 資源群組

如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄檔

資源格式

若要建立 Microsoft.Batch/batchAccounts/pools 資源,請將下列 Terraform 新增至範本。

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Batch/batchAccounts/pools@2020-03-01"
  name = "string"
  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"
            ]
          }
          imageReference = {
            id = "string"
            offer = "string"
            publisher = "string"
            sku = "string"
            version = "string"
          }
          licenseType = "string"
          nodeAgentSkuId = "string"
          windowsConfiguration = {
            enableAutomaticUpdates = bool
          }
        }
      }
      displayName = "string"
      interNodeCommunication = "string"
      maxTasksPerNode = int
      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"
      }
      userAccounts = [
        {
          elevationLevel = "string"
          linuxUserConfiguration = {
            gid = int
            sshPrivateKey = "string"
            uid = int
          }
          name = "string"
          password = "string"
          windowsUserConfiguration = {
            loginMode = "string"
          }
        }
      ]
      vmSize = "string"
    }
  })
}

屬性值

ApplicationPackageReference

名字 描述 價值
id 要安裝的應用程式套件識別碼。 這必須位於與集區相同的批次帳戶內。 這可以是特定版本的參考,如果存在,則為預設版本。 字串 (必要)
版本 如果省略此專案,而且此應用程式未指定預設版本,要求會失敗,錯誤碼 InvalidApplicationPackageReferences。 如果您直接呼叫 REST API,HTTP 狀態代碼為 409。 字串

AutoScaleSettings

名字 描述 價值
evaluationInterval 如果省略,預設值為15分鐘(PT15M)。 字串
公式 集區中所需計算節點數目的公式。 字串 (必要)

AutoUserSpecification

名字 描述 價值
elevationLevel 預設值為 nonAdmin。 'Admin'
'NonAdmin'
範圍 預設值為 Pool。 如果集區正在執行 Windows,則當需要更嚴格的工作隔離時,應該指定 Task 的值。 例如,如果工作以可能會影響其他工作的方式變動登錄,或已在集區上指定憑證,而該集區上不應該由一般工作存取,但應該可透過啟動工作存取。 'Pool'
'Task'

AzureBlobFileSystemConfiguration

名字 描述 價值
accountKey 這個屬性與 sasKey 互斥,而且必須指定一個。 字串
accountName Azure 記憶體帳戶名稱。 字串 (必要)
blobfuseOptions 這些是 Windows 中的「net use」選項,Linux 中的「掛接」選項。 字串
containerName Azure Blob 記憶體容器名稱。 字串 (必要)
relativeMountPath 所有文件系統都會掛接至 Batch 掛接目錄,可透過 AZ_BATCH_NODE_MOUNTS_DIR 環境變數存取。 字串 (必要)
sasKey 這個屬性與 accountKey 互斥,而且必須指定一個。 字串

AzureFileShareConfiguration

名字 描述 價值
accountKey Azure 記憶體帳戶金鑰。 字串 (必要)
accountName Azure 記憶體帳戶名稱。 字串 (必要)
azureFileUrl 這是格式為 『https://{account}.file.core.windows.net/』。 字串 (必要)
mountOptions 這些是 Windows 中的「net use」選項,Linux 中的「掛接」選項。 字串
relativeMountPath 所有文件系統都會掛接至 Batch 掛接目錄,可透過 AZ_BATCH_NODE_MOUNTS_DIR 環境變數存取。 字串 (必要)

CertificateReference

名字 描述 價值
id 要安裝在集區上之憑證的完整標識碼。 這必須位於與集區相同的批次帳戶內。 字串 (必要)
storeLocation 預設值為 currentUser。 此屬性僅適用於使用 Windows 節點設定的集區(也就是使用 cloudServiceConfiguration 建立,或使用 Windows 映像參考使用 virtualMachineConfiguration 建立)。 針對 Linux 計算節點,憑證會儲存在工作工作目錄內的目錄中,而環境變數AZ_BATCH_CERTIFICATES_DIR會提供給工作來查詢此位置。 對於可見度為 『remoteUser』 的憑證,會在使用者的主目錄中建立 『certs』 目錄(例如 /home/{user-name}/certs),並將憑證放在該目錄中。 'CurrentUser'
'LocalMachine'
storeName 此屬性僅適用於使用 Windows 節點設定的集區(也就是使用 cloudServiceConfiguration 建立,或使用 Windows 映像參考使用 virtualMachineConfiguration 建立)。 常見的存放區名稱包括:My、Root、CA、Trust、Disallowed、TrustedPeople、TrustedPublisher、AuthRoot、AddressBook,但也可以使用任何自定義存放區名稱。 預設值為 My。 字串
能見度 計算節點上的哪些用戶帳戶應該可以存取憑證的私用數據。 包含任何的字串數組:
'RemoteUser'
'StartTask'
'Task'

CifsMountConfiguration

名字 描述 價值
mountOptions 這些是 Windows 中的「net use」選項,Linux 中的「掛接」選項。 字串
密碼 要用於驗證 CIFS 檔案系統的密碼。 字串 (必要)
relativeMountPath 所有文件系統都會掛接至 Batch 掛接目錄,可透過 AZ_BATCH_NODE_MOUNTS_DIR 環境變數存取。 字串 (必要)
要掛接之文件系統的 URI。 字串 (必要)
username 要用於對 CIFS 檔案系統進行驗證的使用者。 字串 (必要)

CloudServiceConfiguration

名字 描述 價值
osFamily 可能的值為: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 預設值為 * ,指定指定作業系統系列的最新操作系統版本。 字串

ContainerConfiguration

名字 描述 價值
containerImageNames 這是完整的映像參考,如同指定為 “docker pull”。 除非映像具有替代登錄的完整,否則映像會從預設 Docker 登錄進行來源。 string[]
containerRegistries 如果必須從需要認證的私人登錄下載任何映像,則必須在這裡提供這些認證。 ContainerRegistry[]
類型 要使用的容器技術。 'DockerCompatible' (必要)

ContainerRegistry

名字 描述 價值
密碼 登入登錄伺服器的密碼。 字串 (必要)
registryServer 如果省略,預設值為 「docker.io」。。 字串
username 要登入登錄伺服器的用戶名稱。 字串 (必要)

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。 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

名字 描述 價值
名字 環境變數的名稱。 字串 (必要)
價值 環境變數的值。 字串

FixedScaleSettings

名字 描述 價值
nodeDeallocationOption 如果省略,預設值為 Requeue。 'Requeue'
'RetainedData'
'TaskCompletion'
'Terminate'
resizeTimeout 預設值為15分鐘。 逾時值使用 ISO 8601 格式。 例如,使用 PT10M 10 分鐘。 最小值為 5 分鐘。 如果您指定小於 5 分鐘的值,Batch 服務會拒絕要求併發生錯誤;如果您直接呼叫 REST API,則 HTTP 狀態代碼為 400 (不正確的要求)。 字串
targetDedicatedNodes 至少必須設定其中一個 targetDedicatedNodes,targetLowPriorityNodes。 int
targetLowPriorityNodes 至少必須設定其中一個 targetDedicatedNodes,targetLowPriorityNodes。 int

ImageReference

名字 描述 價值
id 這個屬性與其他屬性互斥。 共用映像庫映像必須具有與 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 集區內必須是唯一的。 可接受的值介於 1 到 65535 之間,除了 22、3389、29876 和 29877 之外,保留這些值。 如果提供任何保留值,要求就會失敗,且 HTTP 狀態代碼為 400。 int (必要)
frontendPortRangeEnd 可接受的值範圍介於 1 到 65534 之間,但 Batch 服務保留的埠從 50000 到 55000。 集區內的所有範圍都必須是相異且無法重疊的。 如果提供任何保留或重疊的值,要求就會失敗,且 HTTP 狀態代碼為 400。 int (必要)
frontendPortRangeStart 可接受的值範圍介於 1 到 65534 之間,但保留的埠介於 50000 到 55000 之間。 集區內的所有範圍都必須是相異且無法重疊的。 如果提供任何保留或重疊的值,要求就會失敗,且 HTTP 狀態代碼為 400。 int (必要)
名字 名稱在 Batch 集區內必須是唯一的,可以包含字母、數位、底線、句號和連字元。 名稱必須以字母或數字開頭,結尾必須是字母、數位或底線,且不能超過 77 個字元。 如果提供任何無效的值,要求就會失敗,且 HTTP 狀態代碼為 400。 字串 (必要)
networkSecurityGroupRules 可以跨 Batch 集區上所有端點指定的規則數目上限為 25。 如果未指定網路安全組規則,則會建立默認規則以允許輸入存取指定的 backendPort。 如果超過網路安全組規則的最大數目,要求會失敗,並出現 HTTP 狀態代碼 400。 NetworkSecurityGroupRule[]
協定 端點的通訊協定。 'TCP'
'UDP' (必要)

LinuxUserConfiguration

名字 描述 價值
gid uid 和 gid 屬性必須一起指定或完全不指定。 如果未指定,則基礎操作系統會挑選 gid。 int
sshPrivateKey 私鑰不得受到密碼保護。 當集區的 enableInterNodeCommunication 屬性為 true 時,私鑰用於在 Linux 集區中的節點之間自動設定非對稱密鑰型驗證(如果 enableInterNodeCommunication 為 false,則會忽略它)。 其方式是將金鑰組放入使用者的 .ssh 目錄中。 如果未指定,則不會在節點之間設定無密碼 SSH(不會修改使用者的 .ssh 目錄)。 字串
uid uid 和 gid 屬性必須一起指定或完全不指定。 如果未指定基礎操作系統,則會挑選 uid。 int

MetadataItem

名字 描述 價值
名字 元數據項目的名稱。 字串 (必要)
價值 元數據專案的值。 字串 (必要)

Microsoft.Batch/batchAccounts/pools

名字 描述 價值
名字 資源名稱 字串

約束:
最小長度 = 1
最大長度 = 1
模式 = ^[a-zA-Z0-9_-]+$ (必要)
parent_id 此資源為父系之資源的標識碼。 類型資源的標識碼:batchAccounts
性能 與集區相關聯的屬性。 PoolProperties
類型 資源類型 “Microsoft.Batch/batchAccounts/pools@2020-03-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) 角色。 指定的子網必須允許來自 Azure Batch 服務的通訊,才能排程計算節點上的工作。 藉由檢查指定的 VNet 是否有任何相關聯的網路安全組 (NSG),即可驗證此情況。 如果 NSG 拒絕與指定子網中計算節點的通訊,Batch 服務會將計算節點的狀態設定為無法使用。 如果指定的 VNet 有任何相關聯的網路安全組 (NSG),則必須啟用一些保留的系統埠來進行輸入通訊。 針對使用虛擬機設定建立的集區,請啟用埠 29876 和 29877,以及適用於 Linux 的埠 22 和適用於 Windows 的埠 3389。 針對使用雲端服務設定建立的集區,請啟用埠 10100、20100 和 30100。 同時在埠 443 上啟用對 Azure 記憶體的輸出連線。 針對 cloudServiceConfiguration 集區,僅支援「傳統」VNET。 如需詳細資訊,請參閱:/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration 字串

NetworkSecurityGroupRule

名字 描述 價值
訪問 應該針對指定的IP位址、子網範圍或卷標採取的動作。 'Allow'
'拒絕' (必要)
優先權 集區內的優先順序必須是唯一的,而且會依優先順序進行評估。 數位越低,優先順序越高。 例如,可以使用訂單號碼 150、250 和 350 來指定規則。 順序編號為 150 的規則優先於順序為 250 的規則。 允許的優先順序為 150 到 4096。 如果提供任何保留或重複的值,要求就會失敗,且 HTTP 狀態代碼為 400。 int (必要)
sourceAddressPrefix 有效值為單一IP位址(例如10.10.10.10.10)、IP子網(例如192.168.1.0/24)、預設標記或 * (適用於所有位址)。 如果提供任何其他值,要求就會因為 HTTP 狀態代碼 400 而失敗。 字串 (必要)
sourcePortRanges 有效值為 『*』 (所有埠 0 - 65535) 或埠或埠範圍的陣列(例如 100-200)。 埠的範圍應介於 0 到 65535 和埠範圍或埠不能重疊。 如果提供任何其他值,要求就會因為 HTTP 狀態代碼 400 而失敗。 預設值為 *。 string[]

NFSMountConfiguration

名字 描述 價值
mountOptions 這些是 Windows 中的「net use」選項,Linux 中的「掛接」選項。 字串
relativeMountPath 所有文件系統都會掛接至 Batch 掛接目錄,可透過 AZ_BATCH_NODE_MOUNTS_DIR 環境變數存取。 字串 (必要)
要掛接之文件系統的 URI。 字串 (必要)

PoolEndpointConfiguration

名字 描述 價值
inboundNatPools 每個 Batch 集區的輸入 NAT 集區數目上限為 5。 如果超過輸入 NAT 集區數目上限,要求會失敗,並出現 HTTP 狀態代碼 400。 InboundNatPool[] (必要)

PoolProperties

名字 描述 價值
applicationLicenses 應用程式授權清單必須是可用 Batch 服務應用程式授權的子集。 如果要求不支持的授權,集區建立將會失敗。 string[]
applicationPackages 應用程式套件參考的變更會影響聯結集區的所有新計算節點,但在重新啟動或重新映像之前,不會影響已在集區中的計算節點。 在任何指定的集區上,最多有10個應用程式套件參考。 ApplicationPackageReference[]
證書 針對 Windows 計算節點,Batch 服務會將憑證安裝至指定的證書存儲和位置。 針對 Linux 計算節點,憑證會儲存在工作工作目錄內的目錄中,而環境變數AZ_BATCH_CERTIFICATES_DIR會提供給工作來查詢此位置。 對於可見度為 『remoteUser』 的憑證,會在使用者的主目錄中建立 『certs』 目錄(例如 /home/{user-name}/certs),並將憑證放在該目錄中。 CertificateReference[]
deploymentConfiguration 使用 CloudServiceConfiguration 會指定應該使用 Azure 雲端服務 (PaaS) 建立節點,而 VirtualMachineConfiguration 則使用 Azure 虛擬機 (IaaS)。 DeploymentConfiguration
displayName 顯示名稱不是唯一的,而且可以包含最大長度為 1024 的任何 Unicode 字元。 字串
interNodeCommunication 這會限制哪些節點可以指派給集區。 啟用此值可減少集區中配置要求節點數目的機會。 如果未指定,這個值會預設為 『Disabled』。 'Disabled'
'Enabled'
maxTasksPerNode 預設值為 1。 最大值是集區 vmSize 或 256 核心數目的 4 倍小。 int
元數據 Batch 服務不會將任何意義指派給元數據;它僅供使用者程式代碼使用。 MetadataItem[]
mountConfiguration 這支援 Azure 檔案服務、NFS、CIFS/SMB 和 Blobfuse。 MountConfiguration[]
networkConfiguration 集區的網路組態。 NetworkConfiguration
scaleSettings 定義集區所需的大小。 這可以是 'fixedScale',其中指定要求的目標DedicatedNodes,或 'autoScale',其會定義定期重新評估的公式。 如果未指定此屬性,集區將會有固定小數字數,且具有 0 個 targetDedicatedNodes。 ScaleSettings
startTask 在 PATCH (update) 作業中,這個屬性可以設定為空白物件,以從集區中移除開始工作。 StartTask
taskSchedulingPolicy 如果未指定,則會散佈預設值。 TaskSchedulingPolicy
userAccounts 要建立於集區中每個節點上的用戶帳戶清單。 UserAccount[]
vmSize 如需雲端服務集區可用虛擬機大小的相關信息(使用 cloudServiceConfiguration 建立的集區),請參閱雲端服務的大小(https://azure.microsoft.com/documentation/articles/cloud-services-sizes-specs/)。 Batch 支援 ExtraSmall 以外的所有雲端服務 VM 大小。 如需使用虛擬機 Marketplace 映像之集區可用 VM 大小的相關信息(使用 virtualMachineConfiguration 建立的集區)請參閱虛擬機的大小 (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和具有進階記憶體以外的所有 Azure VM 大小(STANDARD_GS、STANDARD_DS和STANDARD_DSV2系列)。 字串

PublicIPAddressConfiguration

名字 描述 價值
ipAddressIds 此處指定的IP數目會限制集區的大小上限 - 50 個專用節點或20個低優先順序節點可以配置給每個公用IP。 例如,需要 150 個專用 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 記憶體,則必須使用匿名存取來讀取;也就是說,Batch 服務在下載 Blob 時不會顯示任何認證。 Azure 記憶體中的 Blob 有兩種方式可取得這類 URL:包括授與 Blob 讀取許可權的共用存取簽章(SAS),或設定 Blob 或其容器的 ACL 以允許公用存取。 字串
storageContainerUrl autoStorageContainerName、storageContainerUrl 和 httpUrl 屬性互斥,其中一個必須指定。 此 URL 必須使用匿名存取來讀取且可列出;也就是說,Batch 服務在下載 Blob 時不會顯示任何認證。 Azure 記憶體中的 Blob 有兩種方式可取得這類 URL:包括授與 Blob 讀取和列表許可權的共用存取簽章(SAS),或設定 Blob 或其容器的 ACL 以允許公用存取。 字串

ScaleSettings

名字 描述 價值
autoScale 這個屬性和 fixedScale 互斥,而且必須指定其中一個屬性。 AutoScaleSettings
fixedScale 這個屬性和 autoScale 互斥,而且必須指定其中一個屬性。 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 服務結束代碼為非零,則會重試工作。 請注意,這個值會特別控制重試次數。 Batch 服務會嘗試工作一次,然後可能會重試到此限制。 例如,如果重試計數上限為 3,Batch 會嘗試工作最多 4 次(一次初始嘗試,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” 做為預設值。 字串 (必要)
註冊表 如果已在集區建立時提供,則可以省略此設定。 ContainerRegistry
workingDirectory 指出容器工作工作目錄所在位置的旗標。 默認值為 『taskWorkingDirectory』。 'ContainerImageDefault'
'TaskWorkingDirectory'

TaskSchedulingPolicy

名字 描述 價值
nodeFillType 工作應該如何分散到計算節點。 'Pack'
'傳播' (必要)

UserAccount

名字 描述 價值
elevationLevel nonAdmin - 自動使用者是標準使用者,沒有提升許可權的存取權。 admin - 自動使用者是具有較高存取權的使用者,並使用完整的系統管理員許可權運作。 預設值為 nonAdmin。 'Admin'
'NonAdmin'
linuxUserConfiguration 如果在 Windows 集區上指定,則會忽略這個屬性。 如果未指定,則會使用預設選項建立使用者。 LinuxUserConfiguration
名字 用戶帳戶的名稱。 字串 (必要)
密碼 用戶帳戶的密碼。 字串 (必要)
windowsUserConfiguration 只有當用戶位於 Windows 集區時,才能指定這個屬性。 如果未指定且在 Windows 集區上,則會使用預設選項建立使用者。 WindowsUserConfiguration

UserIdentity

名字 描述 價值
autoUser userName 和 autoUser 屬性互斥;您必須指定一個,但不能同時指定兩者。 AutoUserSpecification
userName userName 和 autoUser 屬性互斥;您必須指定一個,但不能同時指定兩者。 字串

VirtualMachineConfiguration

名字 描述 價值
containerConfiguration 如果指定,會在集區中的每個節點上執行安裝程式,以允許工作在容器中執行。 此集區上執行的所有一般工作和作業管理員工作都必須指定 containerSettings 屬性,而所有其他工作都可以指定它。 ContainerConfiguration
dataDisks 如果集區中的計算節點必須連結空的數據磁碟,則必須指定這個屬性。 DataDisk[]
diskEncryptionConfiguration 如果指定,則會在節點布建期間,在集區中的每個節點上執行加密。 DiskEncryptionConfiguration
imageReference Azure 虛擬機 Marketplace 映像或自定義虛擬機的 Azure 映像資源的參考。 若要取得 Azure Batch 驗證的所有 imageReferences 清單,請參閱「列出支援的節點代理程式 SKU」作業。 ImageReference (必要)
licenseType 這隻適用於包含 Windows 作業系統的映像,而且只有在您保留將部署之節點的有效內部部署授權時,才應該使用。 如果省略,則不會套用任何內部部署授權折扣。 值為:

Windows_Server - 內部部署授權適用於 Windows Server。
Windows_Client - 內部部署授權適用於 Windows 用戶端。
字串
nodeAgentSkuId Batch 節點代理程式是在集區中的每個節點上執行的程式,並提供節點與 Batch 服務之間的命令和控制介面。 針對不同的操作系統,節點代理程式有不同的實作,稱為 SKU。 您必須指定符合所選映像參考的節點代理程式 SKU。 若要取得支持的節點代理程式 SKU 清單及其已驗證映像參考清單,請參閱「列出支援的節點代理程式 SKU」作業。 字串 (必要)
windowsConfiguration 如果 imageReference 指定 Linux OS 映射,則不得指定此屬性。 WindowsConfiguration

WindowsConfiguration

名字 描述 價值
enableAutomaticUpdates 如果省略,預設值為 true。 bool

WindowsUserConfiguration

名字 描述 價值
loginMode 指定使用者的登入模式。 VirtualMachineConfiguration 集區的預設值為互動式模式,而 CloudServiceConfiguration 集區則為批次模式。 'Batch'
'Interactive'