Jobs - Replace Job
更新指定作業的屬性。
這完全取代了工作中所有可更新的屬性。 例如,若工作與其相關聯有約束,且此請求未指定限制,批次服務將移除現有約束。
PUT {endpoint}/jobs/{jobId}?api-version=2025-06-01
PUT {endpoint}/jobs/{jobId}?api-version=2025-06-01&timeOut={timeOut}
URI 參數
| 名稱 | 位於 | 必要 | 類型 | Description |
|---|---|---|---|---|
|
endpoint
|
path | True |
string (uri) |
Batch 帳戶端點 (例如:https://batchaccount.eastus2.batch.azure.com)。 |
|
job
|
path | True |
string |
你想更新屬性的職缺ID。 |
|
api-version
|
query | True |
string minLength: 1 |
要用於這項作業的 API 版本。 |
|
time
|
query |
integer (int32) |
伺服器可以花費數秒處理要求的時間上限。 預設值為 30 秒。 若值大於30,則會使用預設值。」 |
要求標頭
Media Types: "application/json; odata=minimalmetadata"
| 名稱 | 必要 | 類型 | Description |
|---|---|---|---|
| client-request-id |
string |
呼叫端產生的要求身分識別,格式為 GUID,不含大括弧,例如 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0。 |
|
| return-client-request-id |
boolean |
伺服器是否應該在回應中傳回 client-request-id。 |
|
| ocp-date |
string (date-time-rfc7231) |
發出要求的時間。 用戶端連結庫通常會將此設定為目前的系統時鐘時間;如果您要直接呼叫 REST API,請明確設定它。 |
|
| If-Modified-Since |
string (date-time-rfc7231) |
時間戳,指出用戶端已知的資源上次修改時間。 只有在服務上的資源自指定時間以來已修改時,才會執行此作業。 |
|
| If-Unmodified-Since |
string (date-time-rfc7231) |
時間戳,指出用戶端已知的資源上次修改時間。 只有在服務上的資源自指定時間以來尚未修改時,才會執行此作業。 |
|
| If-Match |
string |
與用戶端已知的資源版本相關聯的ETag值。 只有在服務上的資源目前的 ETag 完全符合用戶端指定的值時,才會執行此作業。 |
|
| If-None-Match |
string |
與用戶端已知的資源版本相關聯的ETag值。 只有在服務的目前 ETag 不符合用戶端指定的值時,才會執行作業。 |
要求本文
Media Types: "application/json; odata=minimalmetadata"
| 名稱 | 必要 | 類型 | Description |
|---|---|---|---|
| poolInfo | True |
與作業相關聯的集區設定。 |
|
| allowTaskPreemption |
boolean |
此作業中的工作是否可以由其他高優先順序工作先佔。 (此屬性預設無法使用。請聯絡支援人員以取得相關資訊)如果將值設為 True,則提交給系統的其他高優先順序工作將優先處理,並且能夠從此工作重新排入任務佇列。 您可以使用更新作業 API 建立作業之後,更新作業的allowTaskPreemption。 |
|
| constraints |
作業的執行條件約束。 |
||
| maxParallelTasks |
integer (int32) |
工作可以平行執行的工作數目上限。 (此屬性預設無法使用。如需詳細資訊,請聯絡支援人員)maxParallelTasks 的值必須為 -1 或大於 0(如果指定)。 如果未指定,預設值為 -1,這表示可以一次執行的工作數目沒有限制。 您可以使用更新作業 API 建立作業之後,更新作業的 maxParallelTasks。 |
|
| metadata |
與作業做為元數據相關聯的名稱/值組清單。 Batch 服務不會將任何意義指派給元數據;它僅供使用者程式代碼使用。 |
||
| onAllTasksComplete |
當作業中的所有工作都處於已完成狀態時,Batch 服務應該採取的動作。 預設值為 noaction。 |
||
| priority |
integer (int32) |
作業的優先順序。 優先順序值的範圍可以從 -1000 到 1000,-1000 是最低優先順序,1000 是最高優先順序。 預設值為 0。 |
回應
| 名稱 | 類型 | Description |
|---|---|---|
| 200 OK |
要求已成功。 標題
|
|
| Other Status Codes |
未預期的錯誤回應。 |
安全性
OAuth2Auth
類型:
oauth2
Flow:
implicit
授權 URL:
https://login.microsoftonline.com/common/oauth2/v2.0/authorize
範圍
| 名稱 | Description |
|---|---|
| https://batch.core.windows.net//.default |
範例
Job patch
範例要求
PUT {endpoint}/jobs/jobId?api-version=2025-06-01
{
"priority": 100,
"constraints": {
"maxWallClockTime": "PT1H",
"maxTaskRetryCount": -1
},
"poolInfo": {
"poolId": "poolId"
}
}
範例回覆
定義
| 名稱 | Description |
|---|---|
|
Authentication |
工作可用來執行 Batch 服務作業之驗證令牌的設定。 |
|
Automatic |
用於執行自動OS升級的組態參數。 |
|
Auto |
AutoUserScope 枚舉 |
|
Auto |
指定執行 Azure Batch 工作的自動用戶選項。 |
|
Azure |
用來使用 Blobfuse 連線到 Azure 記憶體容器的資訊。 |
|
Azure |
用來連線到 Azure 檔案共享的資訊。 |
|
Batch |
BatchAccessScope 枚舉 |
|
Batch |
當作業中的所有工作都處於已完成狀態時,Batch 服務應該採取的動作。 |
|
Batch |
要部署到計算節點之封裝的參考。 |
|
Batch |
指定暫時「自動集區」的特性。 Batch 服務會在提交作業時建立此自動集區。 |
|
Batch |
容器啟用集區的組態。 |
|
Batch |
指定計算節點 (VM) 所使用作業系統磁碟的暫時磁碟設定。 |
|
Batch |
從 Azure Batch 服務收到的錯誤回應。 |
|
Batch |
Azure Batch 錯誤回應中包含的其他信息專案。 |
|
Batch |
Azure Batch 錯誤回應中收到的錯誤訊息。 |
|
Batch |
BatchErrorSourceCategory 的列舉 |
|
Batch |
輸入 NAT 集區,可用來在外部處理 Batch 集區中計算節點上的特定埠。 |
|
Batch |
Azure Batch 作業。 |
|
Batch |
作業的執行條件約束。 |
|
Batch |
BatchJobDefaultOrder 枚舉 |
|
Batch |
包含 Azure Batch 服務中作業執行的相關信息。 |
|
Batch |
指定作業管理員工作的詳細數據。 作業管理員工作會在建立作業時自動啟動。 Batch 服務會嘗試在作業的任何其他工作之前排程作業管理員工作。 壓縮集區時,Batch 服務會嘗試保留作業管理員工作儘可能長時間執行的節點(也就是在執行作業管理員工作的計算節點之前,會移除執行「一般」工作的計算節點)。 當作業管理員工作失敗且需要重新啟動時,系統會嘗試以最高優先順序排程它。 如果沒有可用的閑置計算節點,系統可能會終止集區中其中一個執行中的工作,並將它傳回佇列,以便讓作業管理員工作能夠重新啟動。 請注意,一個作業中的作業管理員工作不會優先於其他作業中的工作。 跨作業,只會觀察到作業層級優先順序。 例如,如果優先順序為 0 作業的作業管理員需要重新啟動,則不會取代優先順序 1 作業的工作。 批次會在節點上觸發復原作業時重試工作。 復原作業的範例包括當狀況不良的節點重新啟動或計算節點因主機失敗而消失時,包括 (但不限於) 。 由於復原作業的重試與 無關,而且不會計入 maxTaskRetryCount。 即使 maxTaskRetryCount 是 0,由於復原作業,可能會發生內部重試。 因此,所有工作都應該是等冪的。 這表示工作必須容許中斷並重新啟動,而不會造成任何損毀或重複的數據。 長時間執行工作的最佳做法是使用某種形式的檢查點。 |
|
Batch |
(此屬性預設無法使用。請聯絡支援人員以取得更多資訊)任務的網路設定。 |
|
Batch |
在任何指定計算節點上作業的任何工作之前,要執行的作業準備工作。 您可以使用作業準備來準備節點以執行作業的工作。 作業準備中通常執行的活動包括:下載作業中所有工作所使用的通用資源檔。 作業準備工作可以將這些通用資源檔下載到節點上的共用位置。 (AZ_BATCH_NODE_ROOT_DIR\shared),或啟動節點上的本地服務,讓該作業的所有工作都可以與其通訊。 如果作業準備工作失敗(也就是說,在結束代碼 0 之前耗盡重試計數),Batch 將不會在節點上執行此作業的工作。 計算節點仍無法執行此作業的工作,直到重新製作映像為止。 計算節點會維持使用中狀態,並可用於其他作業。 作業準備工作可以在相同的節點上執行多次。 因此,您應該撰寫作業準備工作來處理重新執行。 如果節點重新啟動,作業準備工作會在排程作業的任何其他工作之前,於計算節點上再次執行,如果 rerunOnNodeRebootAfterSuccess 為 true,或作業準備工作先前未完成。 如果重新製作節點映像,作業準備工作會在排程作業的任何工作之前再次執行。 批次會在節點上觸發復原作業時重試工作。 復原作業的範例包括當狀況不良的節點重新啟動或計算節點因主機失敗而消失時,包括 (但不限於) 。 由於復原作業的重試與 無關,而且不會計入 maxTaskRetryCount。 即使 maxTaskRetryCount 是 0,由於復原作業,可能會發生內部重試。 因此,所有工作都應該是等冪的。 這表示工作必須容許中斷並重新啟動,而不會造成任何損毀或重複的數據。 長時間執行工作的最佳做法是使用某種形式的檢查點。 |
|
Batch |
在作業執行所在的任何計算節點上執行作業完成時執行的作業發行工作。 作業發行工作會在作業結束時執行,因為下列其中一項原因:使用者呼叫終止作業 API,或在作業仍在使用中時刪除作業 API、達到作業的時鐘時間限制上限,且作業仍在使用中,或作業的作業管理員工作完成,且作業設定為在作業管理員完成時終止。 作業發行工作會在作業的工作執行所在的每個節點上執行,以及作業準備工作執行並完成。 如果您在執行作業準備工作之後重新設定節點的映像,而作業會在該節點上執行的任何進一步工作結束(因此作業準備工作不會重新執行),則作業發行工作不會在該計算節點上執行。 如果節點在作業發行工作仍在執行時重新啟動,當計算節點啟動時,作業發行工作會再次執行。 在完成所有作業發行工作之前,作業不會標示為完成。 作業發行工作會在背景執行。 它不會佔用排程位置;也就是說,它不會計入集區上指定的 taskSlotsPerNode 限制。 |
|
Batch |
排程作業時 Batch 服務遇到的錯誤。 |
|
Batch |
BatchJobState 列舉 |
|
Batch |
作業的資源使用量統計數據。 |
|
Batch |
Batch 服務不會指派任何意義給此元數據;它僅供使用者程式代碼使用。 |
|
Batch |
BatchNodeFillType 的枚舉 |
|
Batch |
與計算節點將使用的 Batch 集區相關聯的使用者指派身分識別參考。 |
|
Batch |
針對區域放置,集區中的節點將會配置在同一個區域中。 針對區域放置,集區中的節點會分散到不同區域,並盡最大努力平衡。 |
|
Batch |
BatchNodePlacementPolicyType enums |
|
Batch |
計算節點之作業系統磁碟的設定(VM)。 |
|
Batch |
集區的端點組態。 |
|
Batch |
其中一個集區身分識別的參照,以加密磁碟。 此身分識別將用來存取金鑰保存庫。 |
|
Batch |
指定作業應如何指派給集區。 |
|
Batch |
BatchPoolLifetimeOption 的枚舉 |
|
Batch |
建立新集區的規格。 |
|
Batch |
集區網路設定的公用IP位址組態。 |
|
Batch |
批次會在節點上觸發復原作業時重試工作。 復原作業的範例包括當狀況不良的節點重新啟動或計算節點因主機失敗而消失時,包括 (但不限於) 。 由於復原作業的重試與 無關,而且不會計入 maxTaskRetryCount。 即使 maxTaskRetryCount 是 0,由於復原作業,可能會發生內部重試。 因此,所有工作都應該是等冪的。 這表示工作必須容許中斷並重新啟動,而不會造成任何損毀或重複的數據。 長時間執行工作的最佳做法是使用某種形式的檢查點。 在某些情況下,即使計算節點未重新啟動,StartTask 仍可能會重新執行。 請特別小心,以避免 StartTasks 從 StartTask 工作目錄建立中斷程式或安裝/啟動服務,因為這樣會阻止 Batch 重新執行 StartTask。 |
|
Batch |
要套用至工作的執行條件約束。 |
|
Batch |
工作的容器設定。 |
|
Batch |
TaskFailure 枚舉 |
|
Batch |
指定工作應如何分散到計算節點。 |
|
Batch |
指定建立虛擬機時所使用的安全開機和 vTPM 等安全性設定。 |
|
Batch |
指定受控磁碟的安全性配置檔設定。 注: 它只能為機密虛擬機設置,並且在使用機密虛擬機時需要。 |
|
Batch |
Azure 虛擬機 Marketplace 映像或 Azure 計算資源庫映像的參考。 若要取得 Azure Batch 驗證的所有 Azure Marketplace 映像參考清單,請參閱作業。 |
|
Caching |
快取類型列舉 |
|
Cifs |
用來連線到 CIFS 檔案系統的資訊。 |
|
Container |
您想要掛接至工作容器的路徑和掛接模式專案。 |
|
Container |
要掛接至容器工作容器的路徑。 |
|
Container |
私人容器登錄。 |
|
Container |
ContainerType 列舉 |
|
Container |
ContainerWorkingDirectory 枚舉 |
|
Data |
集區中與計算節點相關聯的數據磁碟將使用的設定。 使用連結的數據磁碟時,您必須從 VM 內掛接和格式化磁碟,才能使用這些磁碟。 |
|
Diff |
規定所有運算節點(虛擬機)在作業系統磁碟的臨時磁碟位置。 用戶可以在要求中使用這個屬性來選擇操作系統應該位於哪個位置。例如,暫時 OS 磁碟布建的快取磁碟空間。 關於臨時作業系統磁碟容量需求,請參閱 Windows 虛擬機的臨時作業系統磁碟容量要求 at at https://learn.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements 及 Linux 虛擬機 https://learn.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements |
|
Disk |
用於加密磁碟的客戶受控金鑰參考。 |
|
Disk |
在集區中的計算節點上套用的磁碟加密組態。 使用 Azure 計算資源庫映像建立的 Linux 集區不支援磁碟加密設定。 |
|
Disk |
磁碟加密集的 ARM 資源識別碼。 |
|
Disk |
DiskEncryptionTarget 的枚舉 |
|
Dynamic |
DynamicVNetAssignmentScope enums |
|
Elevation |
高程層列舉 |
|
Environment |
要設定於工作進程的環境變數。 |
|
Host |
指定特定的主機端點設定。 |
|
Host |
HostEndpointSettingsModeTypes 枚舉 |
|
Inbound |
InboundEndpointProtocol 枚舉 |
|
Ip |
IPAddressProvisioningType 枚舉 |
| IPFamily |
用來指定集區可用的 IP 版本的 IP 系列。 |
| IPTag |
包含與公用IP位址相關聯的IP標籤。 |
|
Linux |
用來在 Linux 計算節點上建立使用者帳戶的屬性。 |
|
Login |
登入模式列舉 |
|
Managed |
受控磁碟參數。 |
|
Mount |
要掛接在每個節點上的文件系統。 |
|
Name |
表示名稱/值組。 |
|
Network |
集區的網路組態。 |
|
Network |
要套用至輸入端點的網路安全組規則。 |
|
Network |
NetworkSecurityGroupRuleAccess 枚舉 |
|
Nfs |
用來連線到 NFS 檔案系統的資訊。 |
|
Output |
在每個檔案上傳上,Batch 服務會將兩個記錄檔寫入計算節點 'fileuploadout.txt' 和 'fileuploaderr.txt'。 這些記錄檔可用來深入瞭解特定失敗。 |
|
Output |
指定 Azure Blob 記憶體容器內的檔案上傳目的地。 |
|
Output |
檔案應該上傳至其中的目的地。 |
|
Output |
OutputFileUploadCondition 枚舉 |
|
Output |
輸出檔案上傳作業的選項,包括執行上傳的條件。 |
|
Output |
HTTP 標頭名稱/值組 |
|
Proxy |
在建立虛擬機時指定 ProxyAgent 設定。 |
|
Resource |
要下載至計算節點的單一檔案或多個檔案。 |
|
Rolling |
執行滾動升級時所使用的組態參數。 |
|
Security |
SecurityEncryptionTypes 枚舉 |
|
Security |
指定虛擬機或虛擬機擴展集的安全性配置檔設定。 |
|
Security |
指定虛擬機的 SecurityType。 它必須設定為任何指定的值,才能啟用 UefiSettings。 |
|
Service |
指定使用 'latest' 映射版本時,用來為擴展集中所有虛擬機設定相同映像版本的服務成品參考標識符。 |
|
Storage |
StorageAccountType 列舉 |
|
Upgrade |
升級模式列舉 |
|
Upgrade |
描述升級原則 - 自動、手動或滾動。 |
|
User |
用來建立用來在 Azure Batch 計算節點上執行工作的用戶的屬性。 |
|
User |
執行工作的使用者身分識別定義。 指定userName或 autoUser 屬性,但不能同時指定兩者。 |
|
Virtual |
以 Azure 虛擬機器基礎結構為基礎的集區中計算節點的組態。 |
| VMExtension |
虛擬機延伸模組的組態。 |
|
Windows |
要套用至虛擬機的 Windows 作業系統設定。 |
|
Windows |
用來在 Windows 計算節點上建立用戶帳戶的屬性。 |
AuthenticationTokenSettings
工作可用來執行 Batch 服務作業之驗證令牌的設定。
| 名稱 | 類型 | Description |
|---|---|---|
| access |
就是 Token 授權存取的批次資源。 認證權杖允許存取有限的批次服務操作。 目前唯一支援的存取屬性值是「job」,它能存取包含該任務的所有與工作相關的操作。 |
AutomaticOsUpgradePolicy
用於執行自動OS升級的組態參數。
| 名稱 | 類型 | Description |
|---|---|---|
| disableAutomaticRollback |
boolean |
是否應停用OS映像復原功能。 |
| enableAutomaticOSUpgrade |
boolean |
指出當較新版本的OS映像可用時,是否應該以滾動方式自動套用作業系統升級至擴展集實例。 |
| osRollingUpgradeDeferral |
boolean |
如果 OS 正在執行工作,請延遲 TVM 上的 OS 升級。 |
| useRollingUpgradePolicy |
boolean |
指出是否應在自動OS升級期間使用滾動升級原則。 如果未在 VMSS 上定義任何原則,自動 OS 升級將會回復為默認原則。 |
AutoUserScope
AutoUserScope 枚舉
| 值 | Description |
|---|---|
| task |
指定服務應為該任務建立新使用者。 |
| pool |
指定該任務作為共用的自動使用者帳號執行,該帳號會在池中每個運算節點建立。 |
AutoUserSpecification
指定執行 Azure Batch 工作的自動用戶選項。
| 名稱 | 類型 | Description |
|---|---|---|
| elevationLevel |
自動使用者的提高許可權層級。 預設值為 nonAdmin。 |
|
| scope |
自動用戶的範圍。 預設值為集區。 如果集區正在執行 Windows,則當需要更嚴格的工作隔離時,應該指定 Task 的值。 例如,如果工作以可能影響其他工作的方式改變登錄。 |
AzureBlobFileSystemConfiguration
用來使用 Blobfuse 連線到 Azure 記憶體容器的資訊。
| 名稱 | 類型 | Description |
|---|---|---|
| accountKey |
string (password) |
Azure 記憶體帳戶金鑰。 此屬性與 sasKey 和身分識別互斥;必須只指定一個。 |
| accountName |
string |
Azure 儲存體帳戶名稱。 |
| blobfuseOptions |
string |
要傳遞至掛接命令的其他命令行選項。 這些是 Windows 中的「net use」選項,Linux 中的「掛接」選項。 |
| containerName |
string |
Azure Blob 記憶體容器名稱。 |
| identityReference |
指的是使用者用來存取 containerName 的使用者身份。 此屬性與 accountKey 和 sasKey 互斥;必須只指定一個。 |
|
| relativeMountPath |
string |
檔案系統將掛載的計算節點上的相對路徑。 所有文件系統都會掛接至 Batch 掛接目錄,可透過 AZ_BATCH_NODE_MOUNTS_DIR 環境變數存取。 |
| sasKey |
string (password) |
Azure 記憶體 SAS 令牌。 此屬性與 accountKey 和身分識別互斥;必須只指定一個。 |
AzureFileShareConfiguration
用來連線到 Azure 檔案共享的資訊。
| 名稱 | 類型 | Description |
|---|---|---|
| accountKey |
string (password) |
Azure 記憶體帳戶金鑰。 |
| accountName |
string |
Azure 記憶體帳戶名稱。 |
| azureFileUrl |
string (uri) |
Azure 檔案服務 URL。 這是格式為 『https://{account}.file.core.windows.net/』。 |
| mountOptions |
string |
要傳遞至掛接命令的其他命令行選項。 這些是 Windows 中的「net use」選項,Linux 中的「掛接」選項。 |
| relativeMountPath |
string |
檔案系統將掛載的計算節點上的相對路徑。 所有文件系統都會掛接至 Batch 掛接目錄,可透過 AZ_BATCH_NODE_MOUNTS_DIR 環境變數存取。 |
BatchAccessScope
BatchAccessScope 枚舉
| 值 | Description |
|---|---|
| job |
授權執行包含該任務的工作的所有操作。 |
BatchAllTasksCompleteMode
當作業中的所有工作都處於已完成狀態時,Batch 服務應該採取的動作。
| 值 | Description |
|---|---|
| noaction |
不執行任何動作。 該工作除非被終止或因其他方式停用,否則仍保持有效。 |
| terminatejob |
終止這份工作。 該工作的終止原因設定為「AllTasksComplete」。 |
BatchApplicationPackageReference
要部署到計算節點之封裝的參考。
| 名稱 | 類型 | Description |
|---|---|---|
| applicationId |
string |
要部署的應用程式 ID。 建立集區時,套件的應用程式標識碼必須完整 (/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName})。 |
| version |
string |
要部署的應用程式版本。 如果省略,則會部署預設版本。 若池中省略此項,且未指定預設版本,請求將以錯誤代碼 InvalidApplicationPackageReferences 及 HTTP 狀態碼 409 失敗。 若任務中省略此功能,且未指定預設版本,該任務將因預處理錯誤而失敗。 |
BatchAutoPoolSpecification
指定暫時「自動集區」的特性。 Batch 服務會在提交作業時建立此自動集區。
| 名稱 | 類型 | Description |
|---|---|---|
| autoPoolIdPrefix |
string |
當自動建立池時,會在唯一識別碼中加入一個前綴。 批次服務會在建立時為每個自動池分配一個唯一識別碼。 為了區分為不同目的所建立的池,你可以指定這個元素,為被指派的 ID 加上一個前綴。 前綴長度可達20字元。 |
| keepAlive |
boolean |
是否要在自動保險池的壽命結束後繼續存續。 若為錯誤,批次服務會在池的壽命(依 poolLifeTimeOption 設定決定)到期後刪除;也就是工作或工作排程完成時。 如果屬實,批次服務不會自動刪除池。 使用者自行刪除使用此選項建立的自動池。 |
| pool |
自動泳池的規格。 |
|
| poolLifetimeOption |
自動池的最小壽命,以及排程中多個工作如何分配給池。 |
BatchContainerConfiguration
容器啟用集區的組態。
| 名稱 | 類型 | Description |
|---|---|---|
| containerImageNames |
string[] |
容器圖片名稱的集合。 這是完整的映像參考,正如「docker pull」所指定的。 除非映像以替代登錄檔完整限定,否則映像檔將從預設的 Docker 登錄檔取得。 |
| containerRegistries |
可從中提取容器的其他私人登錄。 若任何映像檔必須從需要憑證的私人登錄檔下載,則必須在此提供憑證。 |
|
| type |
要使用的容器技術。 |
BatchDiffDiskSettings
指定計算節點 (VM) 所使用作業系統磁碟的暫時磁碟設定。
| 名稱 | 類型 | Description |
|---|---|---|
| placement |
指定集區中所有 VM 之作業系統磁碟的暫時磁碟位置。 用戶可以在要求中使用這個屬性來選擇位置,例如快取暫時OS磁碟布建的磁碟空間。 如需暫時 OS 磁碟大小需求的詳細資訊,請參閱 https://learn.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirementshttps://learn.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements 和 Linux VM 的暫時 OS 磁碟大小需求。 |
BatchError
從 Azure Batch 服務收到的錯誤回應。
| 名稱 | 類型 | Description |
|---|---|---|
| code |
string |
錯誤的識別碼。 程序代碼是不變的,而且是要以程序設計方式取用。 |
| message |
描述錯誤的訊息,適用於在使用者介面中顯示。 |
|
| values |
索引鍵/值組的集合,其中包含錯誤的其他詳細數據。 |
BatchErrorDetail
Azure Batch 錯誤回應中包含的其他信息專案。
| 名稱 | 類型 | Description |
|---|---|---|
| key |
string |
指定 Value 屬性意義的識別碼。 |
| value |
string |
錯誤回應隨附的其他資訊。 |
BatchErrorMessage
Azure Batch 錯誤回應中收到的錯誤訊息。
| 名稱 | 類型 | Description |
|---|---|---|
| lang |
string |
錯誤訊息的語言代碼。 |
| value |
string |
訊息的文字。 |
BatchErrorSourceCategory
BatchErrorSourceCategory 的列舉
| 值 | Description |
|---|---|
| usererror |
錯誤是因為使用者問題,例如設定錯誤。 |
| servererror |
錯誤是因為內部伺服器的問題。 |
BatchInboundNatPool
輸入 NAT 集區,可用來在外部處理 Batch 集區中計算節點上的特定埠。
| 名稱 | 類型 | Description |
|---|---|---|
| backendPort |
integer (int32) |
計算節點上的埠號。 這必須是批次池中唯一的。 可接受的值介於 1 到 65535 之間,但 29876 和 29877 除外,因為這些值是保留的。 如果提供任何保留值,要求就會失敗,且 HTTP 狀態代碼為 400。 |
| frontendPortRangeEnd |
integer (int32) |
這是將用於提供個別運算節點後端埠入站存取的外部埠口範圍內的最後一個埠號。 可接受的值範圍介於 1 到 65534 之間,但 Batch 服務保留的埠從 50000 到 55000。 池內所有範圍必須彼此區別,且不得重疊。 每個範圍必須至少包含 40 個埠口。 如果提供任何保留或重疊的值,要求就會失敗,且 HTTP 狀態代碼為 400。 |
| frontendPortRangeStart |
integer (int32) |
這是將用於提供個別運算節點後端埠入站存取的外部埠域中的第一個埠號。 可接受的值範圍介於 1 到 65534 之間,但保留的埠介於 50000 到 55000 之間。 池內所有範圍必須彼此區別,且不得重疊。 每個範圍必須至少包含 40 個埠口。 如果提供任何保留或重疊的值,要求就會失敗,且 HTTP 狀態代碼為 400。 |
| name |
string |
端點的名稱。 名稱必須在批次池中唯一,包含字母、數字、底線、句點及連字號。 名稱必須以字母或數字開頭,結尾必須是字母、數位或底線,且不能超過 77 個字元。 如果提供任何無效的值,要求就會失敗,且 HTTP 狀態代碼為 400。 |
| networkSecurityGroupRules |
將套用至端點的網路安全組規則清單。 批次池中所有端點最多可指定 25 條規則。 如果未指定網路安全組規則,則會建立默認規則以允許輸入存取指定的 backendPort。 如果超過網路安全組規則的最大數目,要求會失敗,並出現 HTTP 狀態代碼 400。 |
|
| protocol |
端點的通訊協定。 |
BatchJob
Azure Batch 作業。
| 名稱 | 類型 | 預設值 | Description |
|---|---|---|---|
| allowTaskPreemption |
boolean |
此作業中的工作是否可以由其他高優先順序工作先佔。 (此屬性預設無法使用。請聯絡支援人員以取得相關資訊)如果將值設為 True,則提交給系統的其他高優先順序工作將優先處理,並且能夠從此工作重新排入任務佇列。 您可以使用更新作業 API 建立作業之後,更新作業的allowTaskPreemption。 |
|
| commonEnvironmentSettings |
一般環境變數設定的清單。 這些環境變數是針對作業中的所有工作設定的(包括作業管理員、作業準備和作業發行工作)。 個別工作可以藉由使用不同的值來指定相同的設定名稱,來覆寫此處指定的環境設定。 |
||
| constraints |
作業的執行條件約束。 |
||
| creationTime |
string (date-time) |
作業的建立時間。 |
|
| displayName |
string |
工作的顯示名稱。 |
|
| eTag |
string |
作業的ETag。 這是不透明的字串。 您可以使用它來偵測作業是否已在要求之間變更。 特別是,您可以在更新作業時傳遞 ETag,以指定只有當其他人同時沒有修改作業時,您的變更才會生效。 |
|
| executionInfo |
作業的執行資訊。 |
||
| id |
string |
可唯一識別帳戶內作業的字串。 標識符是區分大小寫和不區分大小寫的(也就是說,您可能不會在帳戶內有兩個標識符,只有大小寫不同)。 |
|
| jobManagerTask |
作業啟動時要啟動之作業管理員工作的詳細數據。 |
||
| jobPreparationTask |
作業準備工作。 作業準備工作是在作業的任何其他工作之前,在每個計算節點上執行的特殊工作。 |
||
| jobReleaseTask |
作業發行工作。 作業發行工作是工作在作業結束時執行的每個計算節點上執行的特殊工作,該節點已執行作業的任何其他工作。 |
||
| lastModified |
string (date-time) |
作業的最後一次修改時間。 這是作業層級數據上次變更的時間,例如作業狀態或優先順序。 它不會考慮工作層級變更,例如新增工作或工作變更狀態。 |
|
| maxParallelTasks |
integer (int32) |
-1 |
工作可以平行執行的工作數目上限。 (此屬性預設無法使用。如需詳細資訊,請聯絡支援人員)maxParallelTasks 的值必須為 -1 或大於 0(如果指定)。 如果未指定,預設值為 -1,這表示可以一次執行的工作數目沒有限制。 您可以使用更新作業 API 建立作業之後,更新作業的 maxParallelTasks。 |
| metadata |
與作業做為元數據相關聯的名稱/值組清單。 Batch 服務不會將任何意義指派給元數據;它僅供使用者程式代碼使用。 |
||
| networkConfiguration |
(此屬性預設無法使用。請聯絡支援人員以取得更多資訊)任務的網路設定。 |
||
| onAllTasksComplete |
當作業中的所有工作都處於已完成狀態時,Batch 服務應該採取的動作。 預設值為 noaction。 |
||
| onTaskFailure |
當作業中的任何工作失敗時,Batch 服務應該採取的動作。 如果失敗Info,工作會被視為失敗。 如果 Task 在結束重試計數後以非零結束代碼完成,或啟動工作時發生錯誤,例如資源文件下載錯誤,則會設定 failureInfo。 預設值為 noaction。 |
||
| poolInfo |
與作業相關聯的集區設定。 |
||
| previousState |
作業的先前狀態。 如果作業處於初始作用中狀態,則不會設定這個屬性。 |
||
| previousStateTransitionTime |
string (date-time) |
作業進入其先前狀態的時間。 如果作業處於初始作用中狀態,則不會設定這個屬性。 |
|
| priority |
integer (int32) |
作業的優先順序。 優先順序值的範圍可以從 -1000 到 1000,-1000 是最低優先順序,1000 是最高優先順序。 預設值為 0。 |
|
| state |
作業的目前狀態。 |
||
| stateTransitionTime |
string (date-time) |
作業進入其目前狀態的時間。 |
|
| stats |
作業整個存留期的資源使用量統計數據。 只有在使用包含 『stats』 屬性的 expand 子句擷取 BatchJob 時,才會填入此屬性;否則為 null。 統計數據可能無法立即取得。 Batch 服務會定期匯總統計數據。 一般延遲約30分鐘。 |
||
| url |
string (uri) |
作業的 URL。 |
|
| usesTaskDependencies |
boolean |
作業中的工作是否可以定義彼此的相依性。 默認值為 false。 |
BatchJobConstraints
作業的執行條件約束。
| 名稱 | 類型 | Description |
|---|---|---|
| maxTaskRetryCount |
integer (int32) |
每個任務可重試的最大次數。 如果 Batch 服務結束代碼為非零,則會重試工作。 請注意,這個值會特別控制重試次數。 批次服務會嘗試每個任務一次,之後可以重複嘗試,直到這個限制。 例如,如果最大重試次數是 3 次,批次任務最多可嘗試 4 次(一次初次嘗試與三次重試)。 如果最大重試次數為 0,批次服務不會重試任務。 若最大重試次數為 -1,批次服務可無限重試任務。 預設值為 0(沒有重試)。 |
| maxWallClockTime |
string (duration) |
工作可執行的最大時間,從工作建立起算。 若工作未在時間限制內完成,批次服務會終止該工作及仍在執行的任務。 在這種情況下,終止原因將是 MaxWallClockTimeExpiry。 若未指定此屬性,工作時間無限制。 |
BatchJobDefaultOrder
BatchJobDefaultOrder 枚舉
| 值 | Description |
|---|---|
| none |
任務應從池中所有相同優先順序的作業均勻排程。 |
| creationtime |
如果工作優先順序相同,應該先排程先前建立的工作任務。 |
BatchJobExecutionInfo
包含 Azure Batch 服務中作業執行的相關信息。
| 名稱 | 類型 | Description |
|---|---|---|
| endTime |
string (date-time) |
任務完成時間。 此屬性僅在工作處於完成狀態時設定。 |
| poolId |
string |
此工作所指派的池碼。 此元素包含工作實際分配的池。 當你從服務取得工作細節時,它們也會包含一個 poolInfo 元素,裡面包含工作新增或更新時的池設定資料。 該 poolInfo 元素也可能包含 poolId。 如果有,那兩個ID就是一樣的。 如果沒有,代表該工作是在自動池中執行,而這個屬性包含該自動池的 ID。 |
| schedulingError |
服務在啟動工作時遇到的任何錯誤細節。 若在啟動工作時沒有錯誤,則此屬性不被設定。 |
|
| startTime |
string (date-time) |
工作開始時間。 這就是約會被創造的時刻。 |
| terminateReason |
string |
一串描述任務結束原因的串子。 此屬性僅在工作處於完成狀態時設定。 如果批次服務終止該工作,它會設定如下原因:JMComplete - 工作管理員任務已完成,且 killJobOnCompletion 設為 true。 MaxWallClockTimeExpiry - 該工作達到其 maxWallClockTime 限制。 TerminateJobSchedule - 該工作作為排程的一部分執行,排程終止。 AllTasksComplete - 該工作 onAllTasksComplete 屬性設為 terminatejob,且工作中所有任務皆已完成。 TaskFailed - 該工作中的 onTaskFailure 屬性設定為 performExitOptionsJobAction,且該工作中的任務失敗,並以 terminateJob 的 jobAction 為退出條件。 任何其他字串都是使用者定義的理由,該理由在呼叫「終止工作」操作時指定。 |
BatchJobManagerTask
指定作業管理員工作的詳細數據。 作業管理員工作會在建立作業時自動啟動。 Batch 服務會嘗試在作業的任何其他工作之前排程作業管理員工作。 壓縮集區時,Batch 服務會嘗試保留作業管理員工作儘可能長時間執行的節點(也就是在執行作業管理員工作的計算節點之前,會移除執行「一般」工作的計算節點)。 當作業管理員工作失敗且需要重新啟動時,系統會嘗試以最高優先順序排程它。 如果沒有可用的閑置計算節點,系統可能會終止集區中其中一個執行中的工作,並將它傳回佇列,以便讓作業管理員工作能夠重新啟動。 請注意,一個作業中的作業管理員工作不會優先於其他作業中的工作。 跨作業,只會觀察到作業層級優先順序。 例如,如果優先順序為 0 作業的作業管理員需要重新啟動,則不會取代優先順序 1 作業的工作。 批次會在節點上觸發復原作業時重試工作。 復原作業的範例包括當狀況不良的節點重新啟動或計算節點因主機失敗而消失時,包括 (但不限於) 。 由於復原作業的重試與 無關,而且不會計入 maxTaskRetryCount。 即使 maxTaskRetryCount 是 0,由於復原作業,可能會發生內部重試。 因此,所有工作都應該是等冪的。 這表示工作必須容許中斷並重新啟動,而不會造成任何損毀或重複的數據。 長時間執行工作的最佳做法是使用某種形式的檢查點。
| 名稱 | 類型 | Description |
|---|---|---|
| allowLowPriorityNode |
boolean |
工作管理員任務是否可以在特定/低優先權的運算節點上執行。 預設值為 True。 |
| applicationPackageReferences |
批次服務會在執行命令列前部署到運算節點的應用程式套件清單。應用程式套件會被下載並部署到共享目錄,而非任務工作目錄。 因此,如果參考的應用程式套件已經在計算節點上且是最新的,則不會重新下載;使用計算節點上現有的副本。 若無法安裝參考的應用程式套件,例如因套件已被刪除或下載失敗,任務即告失敗。 |
|
| authenticationTokenSettings |
工作可用來執行 Batch 服務作業之驗證令牌的設定。 若設定此屬性,批次服務會提供任務認證權杖,可用於驗證批次服務操作,無需帳號存取金鑰。 權杖是透過AZ_BATCH_AUTHENTICATION_TOKEN環境變數提供的。 任務能使用該標記執行的操作取決於設定。 例如,任務可以請求工作權限以新增其他任務到該工作,或檢查該工作或工作下其他任務的狀態。 |
|
| commandLine |
string |
工作管理員任務的指令列。 命令行不會在殼層下執行,因此無法利用殼層功能,例如環境變數擴充。 如果您想要利用這些功能,您應該在命令行中叫用殼層,例如在 Windows 中使用 “cmd /c MyCommand”,或在 Linux 中使用 “/bin/sh -c MyCommand”。 如果命令行參考檔案路徑,它應該使用相對路徑(相對於Task工作目錄),或使用 Batch 提供的環境變數 (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables)。 |
| constraints |
適用於工作管理員任務的限制條件。 |
|
| containerSettings |
工作管理員任務執行容器的設定。 如果執行此任務的池子有 containerConfiguration 設定,也必須設定此設定。 如果執行此任務的池沒有設定 containerConfiguration ,則必須不要設定。 當指定此位置時,所有位於AZ_BATCH_NODE_ROOT_DIR(節點上 Azure Batch 目錄根節點)下方的目錄會遞迴地映射到容器中,所有任務環境變數也映射到容器中,任務命令列則在容器中執行。 容器中產生的檔案可能不會被反映到主機磁碟AZ_BATCH_NODE_ROOT_DIR,導致批次檔案 API 無法存取這些檔案。 |
|
| displayName |
string |
工作管理員任務的顯示名稱。 它不必是唯一的,且可包含任何 Unicode 字元,長度最多可達 1024。 |
| environmentSettings |
工作管理員任務的環境變數設定清單。 |
|
| id |
string |
一個字串,唯一識別工作中的工作管理員任務。 ID 可包含任意組合的字母數字,包括連字號和底線,且最多可包含 64 個字元。 |
| killJobOnCompletion |
boolean |
完成工作管理員任務是否代表整個工作已完成。 若屬實,當工作管理員任務完成時,批次服務會標記該工作為完成。 如果此時仍有其他任務在執行(除了工作釋放),這些任務會被終止。 若為錯誤,則完成工作管理員任務不影響工作狀態。 在這種情況下,你應該使用 onAllTasksComplete 屬性來終止該工作,或讓客戶端或使用者明確終止該工作。 例如,若工作管理員建立一組任務,但之後不再參與任務執行。 預設值為 True。 如果你使用 onAllTasksComplete 和 onTaskFailure 屬性來控制工作生命週期,並且只用工作管理員任務來建立該工作的任務(而非監控進度),那麼將 killJobOnCompletion 設為 false 非常重要。 |
| outputFiles |
批次服務執行命令列後會從計算節點上傳的檔案清單。 對於多實例任務,檔案只會從執行主要任務的計算節點上傳。 |
|
| requiredSlots |
integer (int32) |
任務需要執行的排程時段數量。 預設值為 1。 任務只有在計算節點有足夠空閒排程槽時才能排程執行。 對於多實例任務,此特性不被支援且不得指定。 |
| resourceFiles |
Batch 服務在執行命令行之前,會先下載至計算節點的檔案清單。 此元素底下列出的檔案位於工作的工作目錄中。 資源檔案清單的大小上限。 超過大小上限時,要求將會失敗,而回應錯誤碼會是 RequestEntityTooLarge。 如果發生這種情況,ResourceFiles 的集合必須縮小大小。 這可以使用 .zip 檔案、應用程式套件或 Docker 容器來達成。 |
|
| runExclusive |
boolean |
工作管理員任務是否需要獨佔其執行的計算節點。 如果屬實,只要工作管理器仍在運行,其他任務就不會在同一節點上執行。 若為 false,其他任務可與運算節點上的作業管理器同時執行。 工作管理員任務通常會計入計算節點的並行任務限制,因此只有當計算節點允許多個並行任務時才有此限制。 預設值為 True。 |
| userIdentity |
工作管理員任務執行的使用者身份。 若省略,該任務將以非管理員使用者身份執行,且是任務獨一無二的使用者。 |
BatchJobNetworkConfiguration
(此屬性預設無法使用。請聯絡支援人員以取得更多資訊)任務的網路設定。
| 名稱 | 類型 | Description |
|---|---|---|
| skipWithdrawFromVNet |
boolean |
當作業終止或刪除時,是否要將計算節點從虛擬網路提取至 DNC。 如果為 true,節點會維持加入虛擬網路至 DNC。 如果為 false,當作業結束時,節點會自動撤銷。 預設為 False。 |
| subnetId |
string |
虛擬網路子網的 ARM 資源識別碼,從作業執行工作的計算節點將會在工作期間加入。 虛擬網路必須位於與 Azure Batch 帳戶相同的區域和訂用帳戶中。 指定的子網應該有足夠的可用IP位址,以容納將從作業執行工作的計算節點數目。 這最多可達集區中的計算節點數目。 'MicrosoftAzureBatch' 服務主體必須具有指定 VNet 的「傳統虛擬機參與者」Role-Based 訪問控制 (RBAC) 角色,Azure Batch 服務才能排程節點上的工作。 藉由檢查指定的 VNet 是否有任何相關聯的網路安全組 (NSG),即可驗證此情況。 如果 NSG 拒絕與指定子網中的節點通訊,Batch 服務會將計算節點的狀態設定為無法使用。 這是 /subscriptions/{subscription}/resourceGroups/{group}/providers/{provider}/virtualNetworks/{network}/subnets/{subnet}的格式。 如果指定的 VNet 有任何相關聯的網路安全組 (NSG),則必須啟用一些保留的系統埠,才能從 Azure Batch 服務進行輸入通訊。 針對使用虛擬機設定建立的集區,請啟用埠 29876 和 29877,以及適用於 Linux 的埠 22,以及適用於 Windows 的埠 3389。 埠 443 也需要開啟,才能對 Azure 記憶體進行通訊的輸出連線。 如需詳細資訊,請參閱:https://learn.microsoft.com/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration。 |
BatchJobPreparationTask
在任何指定計算節點上作業的任何工作之前,要執行的作業準備工作。 您可以使用作業準備來準備節點以執行作業的工作。 作業準備中通常執行的活動包括:下載作業中所有工作所使用的通用資源檔。 作業準備工作可以將這些通用資源檔下載到節點上的共用位置。 (AZ_BATCH_NODE_ROOT_DIR\shared),或啟動節點上的本地服務,讓該作業的所有工作都可以與其通訊。 如果作業準備工作失敗(也就是說,在結束代碼 0 之前耗盡重試計數),Batch 將不會在節點上執行此作業的工作。 計算節點仍無法執行此作業的工作,直到重新製作映像為止。 計算節點會維持使用中狀態,並可用於其他作業。 作業準備工作可以在相同的節點上執行多次。 因此,您應該撰寫作業準備工作來處理重新執行。 如果節點重新啟動,作業準備工作會在排程作業的任何其他工作之前,於計算節點上再次執行,如果 rerunOnNodeRebootAfterSuccess 為 true,或作業準備工作先前未完成。 如果重新製作節點映像,作業準備工作會在排程作業的任何工作之前再次執行。 批次會在節點上觸發復原作業時重試工作。 復原作業的範例包括當狀況不良的節點重新啟動或計算節點因主機失敗而消失時,包括 (但不限於) 。 由於復原作業的重試與 無關,而且不會計入 maxTaskRetryCount。 即使 maxTaskRetryCount 是 0,由於復原作業,可能會發生內部重試。 因此,所有工作都應該是等冪的。 這表示工作必須容許中斷並重新啟動,而不會造成任何損毀或重複的數據。 長時間執行工作的最佳做法是使用某種形式的檢查點。
| 名稱 | 類型 | Description |
|---|---|---|
| commandLine |
string |
工作準備任務的指令列。 命令行不會在殼層下執行,因此無法利用殼層功能,例如環境變數擴充。 如果您想要利用這些功能,您應該在命令行中叫用殼層,例如在 Windows 中使用 “cmd /c MyCommand”,或在 Linux 中使用 “/bin/sh -c MyCommand”。 如果命令行參考檔案路徑,它應該使用相對路徑(相對於Task工作目錄),或使用 Batch 提供的環境變數 (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables)。 |
| constraints |
適用於工作準備任務的限制條件。 |
|
| containerSettings |
工作準備任務所處容器的設定。 當指定此位置時,所有位於AZ_BATCH_NODE_ROOT_DIR(節點上 Azure Batch 目錄根節點)下方的目錄會遞迴地映射到容器中,所有任務環境變數也映射到容器中,任務命令列則在容器中執行。 容器中產生的檔案可能不會被反映到主機磁碟AZ_BATCH_NODE_ROOT_DIR,導致批次檔案 API 無法存取這些檔案。 |
|
| environmentSettings |
工作準備任務的環境變數設定清單。 |
|
| id |
string |
一個字串,唯一識別工作中的工作準備任務。 ID 可包含任意組合的字母數字,包括連字號和底線,且最多可包含 64 個字元。 若未指定此屬性,批次服務會預設值為「工作準備」。 工作中沒有其他任務可以擁有與工作準備任務相同的 ID。 如果你嘗試提交相同 ID 的任務,批次服務會以錯誤代碼 TaskIdSameAsJobPreparationTask 拒絕該請求;如果你直接呼叫 REST API,HTTP 狀態碼是 409(衝突)。 |
| rerunOnNodeRebootAfterSuccess |
boolean |
批次服務是否應該在運算節點重啟後重執行工作準備任務。 如果運算節點被重新映像化,或工作準備任務未完成(例如因為重啟發生在任務執行中),工作準備任務總是會重新執行。 因此,你應該總是寫出一個工作準備任務,使其具有冪性且多次執行時行為正確。 預設值為 True。 |
| resourceFiles |
Batch 服務在執行命令行之前,會先下載至計算節點的檔案清單。 此元素底下列出的檔案位於工作的工作目錄中。 資源檔案清單的大小上限。 超過大小上限時,要求將會失敗,而回應錯誤碼會是 RequestEntityTooLarge。 如果發生這種情況,ResourceFiles 的集合必須縮小大小。 這可以使用 .zip 檔案、應用程式套件或 Docker 容器來達成。 |
|
| userIdentity |
工作準備任務所依據的使用者身份。 若省略,該任務將作為 Windows 計算節點任務獨有的非管理使用者,或在 Linux 計算節點的池中作為非管理員使用者執行。 |
|
| waitForSuccess |
boolean |
批次服務是否應該等待工作準備任務成功完成後,再排程該工作的其他任務到計算節點。 若工作準備任務以出口代碼0退出,則該任務即告成功完成。 若為真且作業準備任務在節點上失敗,批次服務會重試該任務至最大重試次數(依約束元素所規定)。 如果任務在所有重試後仍未成功完成,則批次服務將不會將該工作的任務排程到該節點。 節點保持活躍狀態,並有資格執行其他作業的任務。 若為錯誤,批次服務不會等待工作準備任務完成。 此時,工作的其他任務可以在工作準備任務仍在執行時開始在計算節點執行;即使工作準備任務失敗,新的任務仍會持續在計算節點排程。 預設值為 True。 |
BatchJobReleaseTask
在作業執行所在的任何計算節點上執行作業完成時執行的作業發行工作。 作業發行工作會在作業結束時執行,因為下列其中一項原因:使用者呼叫終止作業 API,或在作業仍在使用中時刪除作業 API、達到作業的時鐘時間限制上限,且作業仍在使用中,或作業的作業管理員工作完成,且作業設定為在作業管理員完成時終止。 作業發行工作會在作業的工作執行所在的每個節點上執行,以及作業準備工作執行並完成。 如果您在執行作業準備工作之後重新設定節點的映像,而作業會在該節點上執行的任何進一步工作結束(因此作業準備工作不會重新執行),則作業發行工作不會在該計算節點上執行。 如果節點在作業發行工作仍在執行時重新啟動,當計算節點啟動時,作業發行工作會再次執行。 在完成所有作業發行工作之前,作業不會標示為完成。 作業發行工作會在背景執行。 它不會佔用排程位置;也就是說,它不會計入集區上指定的 taskSlotsPerNode 限制。
| 名稱 | 類型 | Description |
|---|---|---|
| commandLine |
string |
工作釋放任務的命令列。 命令行不會在殼層下執行,因此無法利用殼層功能,例如環境變數擴充。 如果您想要利用這些功能,您應該在命令行中叫用殼層,例如在 Windows 中使用 “cmd /c MyCommand”,或在 Linux 中使用 “/bin/sh -c MyCommand”。 如果命令行參考檔案路徑,它應該使用相對路徑(相對於Task工作目錄),或使用 Batch 提供的環境變數 (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables)。 |
| containerSettings |
工作釋放任務執行容器的設定。 當指定此位置時,所有位於AZ_BATCH_NODE_ROOT_DIR(節點上 Azure Batch 目錄根節點)下方的目錄會遞迴地映射到容器中,所有任務環境變數也映射到容器中,任務命令列則在容器中執行。 容器中產生的檔案可能不會被反映到主機磁碟AZ_BATCH_NODE_ROOT_DIR,導致批次檔案 API 無法存取這些檔案。 |
|
| environmentSettings |
工作釋放任務的環境變數設定清單。 |
|
| id |
string |
一個字串,唯一識別工作中的工作釋放任務。 ID 可包含任意組合的字母數字,包括連字號和底線,且最多可包含 64 個字元。 如果你沒有指定這個屬性,批次服務會預設值為「jobrelease」。 工作中不能有其他任務與工作釋放任務相同的 ID。 如果你嘗試提交相同 ID 的任務,批次服務會以錯誤代碼 TaskIdSameAsJobReleaseTask 拒絕該請求;如果你直接呼叫 REST API,HTTP 狀態碼是 409(衝突)。 |
| maxWallClockTime |
string (duration) |
工作釋放任務在特定計算節點上可執行的最大經過時間,從任務開始的時間開始計算。 若任務未在時間限制內完成,批次服務會終止該任務。 預設值為15分鐘。 你不能指定逾15分鐘的暫停時間。 若有,批次服務會錯誤拒絕;如果你直接呼叫 REST API,HTTP 狀態碼是 400(錯誤請求)。 |
| resourceFiles |
Batch 服務在執行命令行之前,會先下載至計算節點的檔案清單。 資源檔案清單的大小上限。 超過大小上限時,要求將會失敗,而回應錯誤碼會是 RequestEntityTooLarge。 如果發生這種情況,ResourceFiles 的集合必須縮小大小。 這可以使用 .zip 檔案、應用程式套件或 Docker 容器來達成。 此元素底下列出的檔案位於工作的工作目錄中。 |
|
| retentionTime |
string (duration) |
在計算節點上保留工作釋放任務目錄的最短時間。 在此之後,批次服務可能會刪除任務目錄及其所有內容。 預設為 7 天,也就是說,除非移除運算節點或刪除工作,否則任務目錄會保留 7 天。 |
| userIdentity |
工作釋放任務執行的使用者身份。 若省略,該任務將以非管理員使用者身份執行,且是任務獨一無二的使用者。 |
BatchJobSchedulingError
排程作業時 Batch 服務遇到的錯誤。
| 名稱 | 類型 | Description |
|---|---|---|
| category |
工作排程錯誤的類別。 |
|
| code |
string |
工作排程錯誤的識別碼。 程序代碼是不變的,而且是要以程序設計方式取用。 |
| details |
與排程錯誤相關的額外錯誤細節清單。 |
|
| message |
string |
一則描述作業排程錯誤的訊息,旨在用於使用者介面顯示。 |
BatchJobState
BatchJobState 列舉
| 值 | Description |
|---|---|
| active |
該工作可排程任務。 |
| disabling |
使用者曾要求停用該工作,但停用操作仍在進行中(例如,等待任務終止)。 |
| disabled |
有使用者停用了該工作。 沒有任務正在執行,也不會排程新的任務。 |
| enabling |
有使用者請求啟用該工作,但啟用操作仍在進行中。 |
| terminating |
該工作即將完成,可能是因為工作管理員任務已完成,或是使用者終止了該工作,但終止操作仍在進行中(例如,因為工作釋放任務正在執行)。 |
| completed |
所有任務都已終止,系統將不再接受任何任務或工作變更。 |
| deleting |
有使用者要求刪除該工作,但刪除操作仍在進行中(例如,系統仍在終止執行中的任務)。 |
BatchJobStatistics
作業的資源使用量統計數據。
| 名稱 | 類型 | Description |
|---|---|---|
| kernelCPUTime |
string (duration) |
工作中所有任務所消耗的核心模式 CPU 時間(涵蓋所有核心與所有運算節點的總和)。 |
| lastUpdateTime |
string (date-time) |
統計數據最後更新的時間。 所有統計資料都限制在 startTime 到 lastUpdateTime 之間的範圍。 |
| numFailedTasks |
string (int64) |
工作中在指定時間範圍內失敗的任務總數。 如果任務用盡最大重試次數卻未回傳出口碼 0,則該任務即告失敗。 |
| numSucceededTasks |
string (int64) |
在指定時間範圍內,工作中成功完成的任務總數。 任務若返回退出代碼 0,則表示任務成功完成。 |
| numTaskRetries |
string (int64) |
在指定時間範圍內,工作中所有任務的重試總數。 |
| readIOGiB |
number (float) |
工作中所有任務從磁碟讀取的總資料量(GiB)。 |
| readIOps |
string (int64) |
工作中所有任務所執行的磁碟讀取操作總數。 |
| startTime |
string (date-time) |
統計數據涵蓋的時間範圍的開始時間。 |
| url |
string (uri) |
統計數據的網址。 |
| userCPUTime |
string (duration) |
使用者模式的 CPU 總時間(涵蓋所有核心與所有計算節點)由工作中所有任務所消耗。 |
| waitTime |
string (duration) |
工作中所有任務的總等待時間。 任務的等待時間定義為從任務建立到執行開始之間的時間。 (若任務因失敗而重試,等待時間即為最近一次任務執行的時間。)此數值僅在帳戶生命週期統計中報告;它未包含在職位統計中。 |
| wallClockTime |
string (duration) |
工作中所有任務的總壁鐘時間。 牆鐘時間是指從任務開始在運算節點執行到結束(或如果任務尚未完成統計資料最後更新時間)的經過時間。 如果任務被重試,這也包括所有任務重試的牆壁時鐘時間。 |
| writeIOGiB |
number (float) |
工作中所有任務寫入磁碟的總資料量(以 GiB)為單位。 |
| writeIOps |
string (int64) |
工作中所有任務所執行的磁碟寫入操作總數。 |
BatchMetadataItem
Batch 服務不會指派任何意義給此元數據;它僅供使用者程式代碼使用。
| 名稱 | 類型 | Description |
|---|---|---|
| name |
string |
元數據項目的名稱。 |
| value |
string |
元數據專案的值。 |
BatchNodeFillType
BatchNodeFillType 的枚舉
| 值 | Description |
|---|---|
| spread |
任務應該在池中所有運算節點間平均分配。 |
| pack |
在分配到下一個運算節點之前,應盡可能多地指派任務(taskSlotsPerNode)。 |
BatchNodeIdentityReference
與計算節點將使用的 Batch 集區相關聯的使用者指派身分識別參考。
| 名稱 | 類型 | Description |
|---|---|---|
| resourceId |
string (arm-id) |
使用者指派身分識別的 ARM 資源識別碼。 |
BatchNodePlacementConfiguration
針對區域放置,集區中的節點將會配置在同一個區域中。 針對區域放置,集區中的節點會分散到不同區域,並盡最大努力平衡。
| 名稱 | 類型 | Description |
|---|---|---|
| policy |
Batch 集區上的節點放置原則類型。 Batch 服務用來布建節點的配置原則。 如果未指定,Batch 會使用區域原則。 |
BatchNodePlacementPolicyType
BatchNodePlacementPolicyType enums
| 值 | Description |
|---|---|
| regional |
集區中的所有節點都會配置在同一個區域中。 |
| zonal |
池中的節點會分散在不同的可用區域,並採取盡力平衡。 |
BatchOsDisk
計算節點之作業系統磁碟的設定(VM)。
| 名稱 | 類型 | Description |
|---|---|---|
| caching |
指定快取需求。 可能的值為:None、ReadOnly、ReadWrite。 預設值為:標準記憶體的 [無]。 進階記憶體的 ReadOnly。 |
|
| diskSizeGB |
integer (int32) |
建立新的 OS 磁碟時,以 GB 為單位的初始磁碟大小。 |
| ephemeralOSDiskSettings |
指定計算節點 (VM) 所使用作業系統磁碟的暫時磁碟設定。 |
|
| managedDisk |
受控磁碟參數。 |
|
| writeAcceleratorEnabled |
boolean |
指定是否應該在磁碟上啟用或停用 writeAccelerator。 |
BatchPoolEndpointConfiguration
集區的端點組態。
| 名稱 | 類型 | Description |
|---|---|---|
| inboundNATPools |
一份可用於外部特定運算節點埠址的入站 NAT 池清單。 每個批次池的最大入站 NAT 池數為 5 個。 若超過 최대 入站 NAT 池數,請求將失敗,HTTP 狀態碼為 400。 如果 IPAddressProvisioningType 為 NoPublicIPAddresses,則無法指定此專案。 |
BatchPoolIdentityReference
其中一個集區身分識別的參照,以加密磁碟。 此身分識別將用來存取金鑰保存庫。
| 名稱 | 類型 | Description |
|---|---|---|
| resourceId |
string (arm-id) |
使用者指派身分識別的 ARM 資源識別碼。 此參考必須包含在集區身分識別中。 |
BatchPoolInfo
指定作業應如何指派給集區。
| 名稱 | 類型 | Description |
|---|---|---|
| autoPoolSpecification |
臨時「自動分池」的特性。 Batch 服務會在提交作業時建立此自動集區。 若自動池建立失敗,批次服務會將作業移至完成狀態,池建立錯誤會設定在作業的排程錯誤屬性中。 批次服務管理自動池的生命週期(包括建立及除非指定 keepAlive 刪除)。 在作業啟動期間,任何影響自動池壽命的使用者行為都會導致意外行為。 你必須指定 Pool ID 或自動 Pool 規格,但不能同時指定。 |
|
| poolId |
string |
現有泳池的 ID。 該工作的所有任務都會在指定的池子上執行。 您必須確保本網站所提及的游泳池存在。 如果在批次服務嘗試排程工作時,該池不存在,該工作不會執行任務,直到你建立該 ID 的池子。請注意,批次服務不會拒絕工作請求;它只是不會執行任務,直到池子存在。 你必須指定 Pool ID 或自動 Pool 規格,但不能同時指定。 |
BatchPoolLifetimeOption
BatchPoolLifetimeOption 的枚舉
| 值 | Description |
|---|---|
| jobschedule |
該池在工作排程的整個期間存在。 批次服務在建立排程上的第一個工作時建立池。 你只能將此選項套用於工作排程,不能套用在工作。 |
| job |
池子存在於其所奉獻的使命的生命期間。 批次服務在建立工作時建立池。 如果「工作」選項套用到工作排程,批次服務會為排程中建立的每個工作建立新的自動池。 |
BatchPoolSpecification
建立新集區的規格。
| 名稱 | 類型 | Description |
|---|---|---|
| applicationPackageReferences |
要安裝在集區中每個計算節點上的套件清單。 建立集區時,套件的應用程式標識碼必須完整 (/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName})。 封裝參考的變更會影響聯結集區的所有新節點,但不會影響已在集區中的計算節點,直到重新啟動或重新映射為止。 任何指定的集區上最多有10個套件參考。 |
|
| autoScaleEvaluationInterval |
string (duration) |
根據自動調整公式自動調整集區大小的時間間隔。 預設值為15分鐘。 最小值和最大值分別為 5 分鐘和 168 小時。 如果您指定的值小於 5 分鐘或大於 168 小時,Batch 服務會拒絕要求,且屬性值錯誤無效;如果您直接呼叫 REST API,則 HTTP 狀態代碼為 400 (不正確的要求)。 |
| autoScaleFormula |
string |
集區中所需計算節點數目的公式。 如果 enableAutoScale 設定為 false,則不得指定此屬性。 如果 enableAutoScale 設定為 true,則為必要專案。 在建立集區之前,會先檢查公式是否有效。 如果公式無效,Batch 服務會以詳細的錯誤資訊拒絕要求。 |
| displayName |
string |
集區的顯示名稱。 顯示名稱不是唯一的,而且可以包含最大長度為 1024 的任何 Unicode 字元。 |
| enableAutoScale |
boolean |
集區大小是否應該隨著時間自動調整。 如果為 false,則必須指定至少一個 targetDedicatedNodes 和 targetLowPriorityNodes。 如果為 true,則需要 autoScaleFormula 元素。 集區會根據公式自動重設大小。 預設值為 false。 |
| enableInterNodeCommunication |
boolean |
集區是否允許計算節點之間的直接通訊。 啟用節點間通訊會限制集區的大小上限,因為集區的計算節點有部署限制。 這可能會導致集區無法達到其所需的大小。 預設值為 false。 |
| metadata |
與集區相關聯的名稱/值組清單做為元數據。 Batch 服務不會將任何意義指派給元數據;它僅供使用者程式代碼使用。 |
|
| mountConfiguration |
要掛接在集區中每個節點上的檔案系統清單。 這支援 Azure 檔案服務、NFS、CIFS/SMB 和 Blobfuse。 |
|
| networkConfiguration |
集區的網路組態。 |
|
| resizeTimeout |
string (duration) |
將計算節點配置至集區的逾時。 此逾時僅適用於手動調整;當 enableAutoScale 設定為 true 時,它沒有任何作用。 預設值為15分鐘。 最小值為 5 分鐘。 如果您指定小於 5 分鐘的值,Batch 服務會拒絕要求併發生錯誤;如果您直接呼叫 REST API,則 HTTP 狀態代碼為 400 (不正確的要求)。 |
| startTask |
在聯結集區時,要在每個計算節點上執行的工作。 當計算節點新增至集區或計算節點重新啟動時,工作就會執行。 |
|
| targetDedicatedNodes |
integer (int32) |
集區中所需的專用計算節點數目。 如果 enableAutoScale 設定為 true,則不得指定此屬性。 如果 enableAutoScale 設定為 false,則您必須設定 targetDedicatedNodes、targetLowPriorityNodes 或兩者。 |
| targetLowPriorityNodes |
integer (int32) |
集區中所需的現成/低優先順序計算節點數目。 如果 enableAutoScale 設定為 true,則不得指定此屬性。 如果 enableAutoScale 設定為 false,則您必須設定 targetDedicatedNodes、targetLowPriorityNodes 或兩者。 |
| taskSchedulingPolicy |
工作如何分散到集區中的計算節點。 如果未指定,則會散佈預設值。 |
|
| taskSlotsPerNode |
integer (int32) |
可用於在集區中單一計算節點上執行並行工作的工作位置數目。 預設值為 1。 最大值是集區 vmSize 或 256 核心數目的 4 倍小。 |
| upgradePolicy |
集區的升級原則。 描述升級原則 - 自動、手動或滾動。 |
|
| userAccounts |
要建立於集區中每個計算節點上的用戶帳戶清單。 |
|
| virtualMachineConfiguration |
集區的虛擬機組態。 您必須指定這個屬性。 |
|
| vmSize |
string |
集區中虛擬機的大小。 集區中的所有虛擬機大小都相同。 如需集區中虛擬機可用大小的相關信息,請參閱在 Azure Batch 集區中為計算節點選擇 VM 大小(https://learn.microsoft.com/azure/batch/batch-pool-vm-sizes)。 |
BatchPublicIpAddressConfiguration
集區網路設定的公用IP位址組態。
| 名稱 | 類型 | Description |
|---|---|---|
| ipAddressIds |
string[] (arm-id) |
布建計算節點時,Batch 服務將使用的公用IP清單。 此處指定的IP數目會限制集區大小上限 - 100個專用節點或100個現成/低優先順序節點,可以為每個公用IP配置。 例如,需要 250 個專用 VM 的集區至少需要 3 個公用 IP。 此集合的每個元素都是下列形式:/subscriptions/{subscription}/resourceGroups/{group}/providers/Microsoft.Network/publicIPAddresses/{ip}。 |
| ipFamilies |
IPFamily[] |
用來指定集區可用的 IP 版本的 IP 系列。 IP 系列可用來判斷單一堆疊或雙堆疊集區。 對於單一堆棧,預期的值為IPv4。 針對雙堆棧,預期的值為IPv4和IPv6。 |
| ipTags |
IPTag[] |
與集區公用 IP 位址相關聯的 IP 標籤清單。 IP 標籤用於對公共 IP 位址進行分類和過濾,以用於計費和管理目的。 |
| provision |
集區公用IP位址的布建類型。 預設值為 BatchManaged。 |
BatchStartTask
批次會在節點上觸發復原作業時重試工作。 復原作業的範例包括當狀況不良的節點重新啟動或計算節點因主機失敗而消失時,包括 (但不限於) 。 由於復原作業的重試與 無關,而且不會計入 maxTaskRetryCount。 即使 maxTaskRetryCount 是 0,由於復原作業,可能會發生內部重試。 因此,所有工作都應該是等冪的。 這表示工作必須容許中斷並重新啟動,而不會造成任何損毀或重複的數據。 長時間執行工作的最佳做法是使用某種形式的檢查點。 在某些情況下,即使計算節點未重新啟動,StartTask 仍可能會重新執行。 請特別小心,以避免 StartTasks 從 StartTask 工作目錄建立中斷程式或安裝/啟動服務,因為這樣會阻止 Batch 重新執行 StartTask。
| 名稱 | 類型 | Description |
|---|---|---|
| commandLine |
string |
StartTask 的命令行。 命令行不會在殼層下執行,因此無法利用殼層功能,例如環境變數擴充。 如果您想要利用這些功能,您應該在命令行中叫用殼層,例如在 Windows 中使用 “cmd /c MyCommand”,或在 Linux 中使用 “/bin/sh -c MyCommand”。 如果命令行參考檔案路徑,它應該使用相對路徑(相對於Task工作目錄),或使用 Batch 提供的環境變數 (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables)。 |
| containerSettings |
啟動任務所處容器的設定。 當指定此位置時,所有位於AZ_BATCH_NODE_ROOT_DIR(節點上 Azure Batch 目錄根節點)下方的目錄會遞迴地映射到容器中,所有任務環境變數也映射到容器中,任務命令列則在容器中執行。 容器中產生的檔案可能不會被反映到主機磁碟AZ_BATCH_NODE_ROOT_DIR,導致批次檔案 API 無法存取這些檔案。 |
|
| environmentSettings |
StartTask 的環境變數設定清單。 |
|
| maxTaskRetryCount |
integer (int32) |
重試工作的最大次數。 如果 Batch 服務結束代碼為非零,則會重試工作。 請注意,這個值會特別控制重試次數。 Batch 服務會嘗試工作一次,然後可能會重試到此限制。 例如,如果重試計數上限為 3,Batch 會嘗試工作最多 4 次(一次初始嘗試,3 次重試)。 如果重試計數上限為0,Batch服務就不會重試工作。 如果重試計數上限為 -1,Batch 服務會不限制地重試工作,但不建議用於啟動工作或任何工作。 預設值為 0(沒有重試)。 |
| resourceFiles |
Batch 服務在執行命令行之前,會先下載至計算節點的檔案清單。 資源檔案清單的大小上限。 超過大小上限時,要求將會失敗,而回應錯誤碼會是 RequestEntityTooLarge。 如果發生這種情況,ResourceFiles 的集合必須縮小大小。 這可以使用 .zip 檔案、應用程式套件或 Docker 容器來達成。 此元素底下列出的檔案位於工作的工作目錄中。 |
|
| userIdentity |
啟動任務執行的使用者身份。 若省略,該任務將以非管理員使用者身份執行,且是任務獨一無二的使用者。 |
|
| waitForSuccess |
boolean |
在排程計算節點上的任何工作之前,Batch 服務是否應該等候 StartTask 順利完成(也就是結束代碼 0)。 如果 True 且 StartTask 在節點上失敗,Batch 服務會重試 StartTask,最多重試計數上限 (maxTaskRetryCount)。 如果工作在所有重試之後仍未順利完成,則 Batch 服務會將節點標示為無法使用,且不會排程工作。 您可以透過計算節點狀態和失敗資訊詳細資料來偵測此狀況。 如果為 false,Batch 服務將不會等候 StartTask 完成。 在此情況下,當 StartTask 仍在執行時,其他工作可以在計算節點上開始執行;即使 StartTask 失敗,新的工作仍會繼續排程在計算節點上。 默認值為 true。 |
BatchTaskConstraints
要套用至工作的執行條件約束。
| 名稱 | 類型 | Description |
|---|---|---|
| maxTaskRetryCount |
integer (int32) |
重試工作的最大次數。 如果 Batch 服務結束代碼為非零,則會重試工作。 請注意,這個值特別控制任務執行檔的重試次數,因為退出碼非零。 Batch 服務會嘗試工作一次,然後可能會重試到此限制。 例如,如果重試計數上限為 3,Batch 會嘗試工作最多 4 次(一次初始嘗試,3 次重試)。 若最大重試次數為 0,批次服務在第一次嘗試後不會重試該任務。 如果重試計數上限為 -1,Batch 服務會不限制地重試工作,但不建議用於啟動工作或任何工作。 預設值為 0(沒有重試)。 |
| maxWallClockTime |
string (duration) |
任務可執行的最大經過時間,從任務開始的時間開始計算。 若任務未在時間限制內完成,批次服務會終止該任務。 若未指定,任務時間限制則無時間限制。 |
| retentionTime |
string (duration) |
任務目錄在執行時的計算節點上,從執行完成起的最小保留時間。 在此之後,批次服務可能會刪除任務目錄及其所有內容。 預設為 7 天,也就是說,除非移除運算節點或刪除工作,否則任務目錄會保留 7 天。 |
BatchTaskContainerSettings
工作的容器設定。
| 名稱 | 類型 | Description |
|---|---|---|
| containerHostBatchBindMounts |
您要掛接至容器工作的路徑。 如果此陣列為 Null 或不存在,容器工作將會在 Windows 中掛接整個暫存磁碟驅動器(或 Linux 中的AZ_BATCH_NODE_ROOT_DIR)。 如果此陣列設定為空白,它就不會將任何數據路徑掛接至容器。 |
|
| containerRunOptions |
string |
容器 create 命令的其他選項。 除了 Batch 服務所控制的自變數之外,這些額外的選項也會提供為 「docker create」 命令的自變數。 |
| imageName |
string |
用來建立任務執行容器的映像。 這是完整的映像參考,正如「docker pull」所指定的。 若圖片名稱中未提供標籤,則預設使用標籤「:latest」。 |
| registry |
包含容器映像檔的私有登錄檔。 若在創建池時已提供此設定,則可省略此設定。 |
|
| workingDirectory |
容器任務工作目錄的位置。 默認值為 『taskWorkingDirectory』。 |
BatchTaskFailureMode
TaskFailure 枚舉
| 值 | Description |
|---|---|
| noaction |
不執行任何動作。 該工作除非被終止或因其他方式停用,否則仍保持有效。 |
| performexitoptionsjobaction |
終止這份工作。 該工作的終止原因設定為「AllTasksComplete」。 |
BatchTaskSchedulingPolicy
指定工作應如何分散到計算節點。
| 名稱 | 類型 | 預設值 | Description |
|---|---|---|---|
| jobDefaultOrder | none |
從具有相同優先順序的不同工作排程任務的順序。 如果未指定,則預設值為 none。 |
|
| nodeFillType |
工作如何分散到集區中的計算節點。 如果未指定,則會散佈預設值。 |
BatchUefiSettings
指定建立虛擬機時所使用的安全開機和 vTPM 等安全性設定。
| 名稱 | 類型 | Description |
|---|---|---|
| secureBootEnabled |
boolean |
指定是否應在虛擬機上啟用安全開機。 |
| vTpmEnabled |
boolean |
指定是否應在虛擬機上啟用 vTPM。 |
BatchVmDiskSecurityProfile
指定受控磁碟的安全性配置檔設定。 注: 它只能為機密虛擬機設置,並且在使用機密虛擬機時需要。
| 名稱 | 類型 | Description |
|---|---|---|
| securityEncryptionType |
指定受控磁碟的 EncryptionType。 它設定為 VMGuestStateOnly,以便只加密 VMGuestState Blob,而 NonPersistedTPM 則不會保存 VMGuestState Blob 中的韌體狀態。 注: 只能為機密虛擬機設置,並且在使用機密虛擬機時是必需的。 |
BatchVmImageReference
Azure 虛擬機 Marketplace 映像或 Azure 計算資源庫映像的參考。 若要取得 Azure Batch 驗證的所有 Azure Marketplace 映像參考清單,請參閱作業。
| 名稱 | 類型 | Description |
|---|---|---|
| communityGalleryImageId |
string |
社群圖庫圖片唯一識別碼。 這個屬性與其他屬性互斥,而且可以從社群資源庫映像 GET 呼叫擷取。 |
| exactVersion |
string |
用於建立節點的特定平台映像檔或市場映像版本。 此唯讀欄位與「版本」只有在建立池時指定的「版本」值為「最新」時才會有所不同。 |
| offer |
string |
Azure 虛擬機市場映像的提供類型。 例如,UbuntuServer 或 WindowsServer。 |
| publisher |
string |
Azure 虛擬機市場映像的發布者。 例如,Canonical 或 MicrosoftWindowsServer。 |
| sharedGalleryImageId |
string |
共用圖庫影像唯一識別碼。 這個屬性與其他屬性互斥,而且可以從共用資源庫映像 GET 呼叫擷取。 |
| sku |
string |
Azure 虛擬機市場映像的 SKU。 例如,18.04-LTS 或 2019-Datacenter。 |
| version |
string |
Azure 虛擬機市場映像版本。 可設定「最新」值以選擇最新版本的映像檔。 如果省略,預設值為 'latest'。 |
| virtualMachineImageId |
string (arm-id) |
Azure 計算資源庫映射的 ARM 資源識別碼。 池中的運算節點將使用此映像 ID 建立。這類格式為 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageDefinitionName}/versions/{VersionId} 或 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/images/{imageDefinitionName},預設為最新映像版本。 此特性與其他 ImageReference 屬性互斥。 Azure Compute Gallery 映像檔必須在相同區域內有副本,且必須與 Azure Batch 帳號處於相同的訂閱中。 若 imageID 未指定映像版本,則會使用最新版本。 關於批次運算節點代理與批次服務通訊的防火牆設定,請參見 https://learn.microsoft.com/azure/batch/nodes-and-pools#virtual-network-vnet-and-firewall-configuration。 |
CachingType
快取類型列舉
| 值 | Description |
|---|---|
| none |
磁碟的快取模式未啟用。 |
| readonly |
磁碟的快取模式是唯讀的。 |
| readwrite |
磁碟的快取模式是讀取和寫入。 |
CifsMountConfiguration
用來連線到 CIFS 檔案系統的資訊。
| 名稱 | 類型 | Description |
|---|---|---|
| mountOptions |
string |
要傳遞至掛接命令的其他命令行選項。 這些是 Windows 中的「net use」選項,Linux 中的「掛接」選項。 |
| password |
string (password) |
要用於驗證 CIFS 檔案系統的密碼。 |
| relativeMountPath |
string |
檔案系統將掛載的計算節點上的相對路徑。 所有文件系統都會掛接至 Batch 掛接目錄,可透過 AZ_BATCH_NODE_MOUNTS_DIR 環境變數存取。 |
| source |
string |
要掛接之文件系統的 URI。 |
| username |
string |
要用於對 CIFS 檔案系統進行驗證的使用者。 |
ContainerHostBatchBindMountEntry
您想要掛接至工作容器的路徑和掛接模式專案。
| 名稱 | 類型 | Description |
|---|---|---|
| isReadOnly |
boolean |
將此來源路徑掛接為唯讀模式或否。 默認值為 false (讀取/寫入模式)。 針對 Linux,如果您將此路徑掛接為讀取/寫入模式,這並不表示容器中的所有使用者都有路徑的讀取/寫入存取權,這取決於主機 VM 中的存取權。 如果此路徑是只讀掛接,容器內的所有使用者將無法修改路徑。 |
| source |
掛接至容器客戶的路徑可以選取。 |
ContainerHostDataPath
要掛接至容器工作容器的路徑。
| 值 | Description |
|---|---|
| Shared |
要共用其檔案之多重實例工作的路徑。 |
| Startup |
開始工作的路徑。 |
| VfsMounts |
路徑包含此節點上掛接的所有虛擬檔案系統。 |
| Task |
工作路徑。 |
| JobPrep |
作業準備工作路徑。 |
| Applications |
應用程式路徑。 |
ContainerRegistryReference
私人容器登錄。
| 名稱 | 類型 | Description |
|---|---|---|
| identityReference |
使用者指派身分識別的參考,用來存取 Azure Container Registry,而不是使用者名稱和密碼。 |
|
| password |
string (password) |
登入登錄伺服器的密碼。 |
| registryServer |
string (uri) |
登錄 URL。 如果省略,預設值為 「docker.io」。。 |
| username |
string |
要登入登錄伺服器的用戶名稱。 |
ContainerType
ContainerType 列舉
| 值 | Description |
|---|---|
| dockerCompatible |
Docker 相容容器技術將用來啟動容器。 |
| criCompatible |
CRI 型技術將用來啟動容器。 |
ContainerWorkingDirectory
ContainerWorkingDirectory 枚舉
| 值 | Description |
|---|---|
| taskWorkingDirectory |
使用標準的批次服務任務工作目錄,該目錄會包含由批次填充的任務資源檔案。 |
| containerImageDefault |
請使用容器 Image 中定義的工作目錄。 請注意,此目錄不會包含批次下載的資源檔案。 |
DataDisk
集區中與計算節點相關聯的數據磁碟將使用的設定。 使用連結的數據磁碟時,您必須從 VM 內掛接和格式化磁碟,才能使用這些磁碟。
| 名稱 | 類型 | Description |
|---|---|---|
| caching |
要針對數據磁碟啟用的快取類型。 快取的預設值為 readwrite。 如需快取選項的相關信息,請參閱:https://blogs.msdn.microsoft.com/windowsazurestorage/2012/06/27/exploring-windows-azure-drives-disks-and-images/。 |
|
| diskSizeGB |
integer (int32) |
以 GB 為單位的初始磁碟大小。 |
| lun |
integer (int32) |
邏輯單元編號。 logicalUnitNumber 可用來唯一識別每個數據磁碟。 如果連結多個磁碟,每個磁碟都應該有相異的logicalUnitNumber。 值必須介於 0 到 63 之間,且包含 。 |
| managedDisk |
受控磁碟參數。 |
DiffDiskPlacement
規定所有運算節點(虛擬機)在作業系統磁碟的臨時磁碟位置。 用戶可以在要求中使用這個屬性來選擇操作系統應該位於哪個位置。例如,暫時 OS 磁碟布建的快取磁碟空間。 關於臨時作業系統磁碟容量需求,請參閱 Windows 虛擬機的臨時作業系統磁碟容量要求 at at https://learn.microsoft.com/azure/virtual-machines/windows/ephemeral-os-disks#size-requirements 及 Linux 虛擬機 https://learn.microsoft.com/azure/virtual-machines/linux/ephemeral-os-disks#size-requirements
| 值 | Description |
|---|---|
| cachedisk |
暫時OS磁碟會儲存在VM快取上。 |
DiskCustomerManagedKey
用於加密磁碟的客戶受控金鑰參考。
| 名稱 | 類型 | Description |
|---|---|---|
| identityReference |
其中一個集區身分識別的參照,以加密磁碟。 此身分識別將用來存取 KeyVault。 |
|
| keyUrl |
string |
指向 KeyVault 中金鑰的完整版本金鑰 URL。 不論 rotationToLatestKeyVersionEnabled 值為何,都需要 URL 的版本區段。 |
| rotationToLatestKeyVersionEnabled |
boolean |
將此旗標設定為 true,以啟用磁碟加密自動更新至最新的金鑰版本。 預設值為 false。 |
DiskEncryptionConfiguration
在集區中的計算節點上套用的磁碟加密組態。 使用 Azure 計算資源庫映像建立的 Linux 集區不支援磁碟加密設定。
| 名稱 | 類型 | Description |
|---|---|---|
| customerManagedKey |
加密 OS 磁碟的客戶受控金鑰參考。 客戶自控金鑰會依 EncryptionAtRest 加密 OS 磁碟,而且根據預設,我們也會加密資料磁碟。 只有在集區設定身分識別,且 OsDisk 設定為 DiskEncryption 的其中一個目標時,才能使用它。 |
|
| targets |
磁碟目標 Batch 服務的清單會在計算節點上加密。 磁碟目標 Batch 服務的清單會在計算節點上加密。 |
DiskEncryptionSetParameters
磁碟加密集的 ARM 資源識別碼。
| 名稱 | 類型 | Description |
|---|---|---|
| id |
string (arm-id) |
磁碟加密集的 ARM 資源識別碼。 資源必須與 Batch 帳戶位於相同的訂用帳戶中。 |
DiskEncryptionTarget
DiskEncryptionTarget 的枚舉
| 值 | Description |
|---|---|
| osdisk |
計算節點上的OS磁碟會加密。 |
| temporarydisk |
計算節點上的暫存磁碟會加密。 在 Linux 上,此加密適用於在開機時間進行加密時的其他分割區(例如掛接的數據磁碟上的磁碟分區)。 |
DynamicVNetAssignmentScope
DynamicVNetAssignmentScope enums
| 值 | Description |
|---|---|
| none |
未啟用動態 VNet 指派。 |
| job |
動態 VNet 指派是個別作業完成。 |
ElevationLevel
高程層列舉
| 值 | Description |
|---|---|
| nonadmin |
使用者是標準使用者,沒有提升許可權的存取權。 |
| admin |
使用者是具有較高存取權的使用者,且會以完整的系統管理員許可權運作。 |
EnvironmentSetting
要設定於工作進程的環境變數。
| 名稱 | 類型 | Description |
|---|---|---|
| name |
string |
環境變數的名稱。 |
| value |
string |
環境變數的值。 |
HostEndpointSettings
指定特定的主機端點設定。
| 名稱 | 類型 | Description |
|---|---|---|
| inVMAccessControlProfileReferenceId |
string |
以 /subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/inVMAccessControlProfiles/{profile}/versions/{version} 的形式指定 InVMAccessControlProfileVersion 資源識別碼的參考。 |
| mode |
指定存取控制原則執行模式。 |
HostEndpointSettingsModeTypes
HostEndpointSettingsModeTypes 枚舉
| 值 | Description |
|---|---|
| Audit |
在稽核模式中,系統的作用就像是強制執行訪問控制原則,包括在記錄中發出存取拒絕專案,但它實際上不會拒絕任何對主機端點的要求。 |
| Enforce |
強制模式是建議的操作模式,系統會強制執行存取控制政策。 此屬性不能與 'inVMAccessControlProfileReferenceId' 一起使用。 |
InboundEndpointProtocol
InboundEndpointProtocol 枚舉
| 值 | Description |
|---|---|
| tcp |
針對端點使用 TCP。 |
| udp |
針對端點使用UDP。 |
IpAddressProvisioningType
IPAddressProvisioningType 枚舉
| 值 | Description |
|---|---|
| batchmanaged |
公用IP將由 Batch 建立和管理。 視集區的大小而定,可能會有多個公用IP。 |
| usermanaged |
公用IP是由使用者提供,並且將用來布建計算節點。 |
| nopublicipaddresses |
不會建立公共 IP 位址。 |
IPFamily
用來指定集區可用的 IP 版本的 IP 系列。
| 值 | Description |
|---|---|
| IPv4 |
池中提供 IPv4 支援。 |
| IPv6 |
池中提供 IPv6 支援。 |
IPTag
包含與公用IP位址相關聯的IP標籤。
| 名稱 | 類型 | Description |
|---|---|---|
| ipTagType |
string |
IP 標籤類型。 範例:FirstPartyUsage。 |
| tag |
string |
與公用IP相關聯的IP標籤。 範例:SQL。 |
LinuxUserConfiguration
用來在 Linux 計算節點上建立使用者帳戶的屬性。
| 名稱 | 類型 | Description |
|---|---|---|
| gid |
integer (int32) |
使用者帳號的群組ID。 uid 和 gid 屬性必須一起指定或完全不指定。 如果未指定,則基礎操作系統會挑選 gid。 |
| sshPrivateKey |
string (password) |
使用者帳號的 SSH 私鑰。 私鑰不得受到密碼保護。 當 Linux 池的 enableInterNodeCommunication 屬性為真時,私鑰用於自動配置基於非對稱金鑰的 SSH 認證(若 enableInterNodeCommunication 為假則忽略)。 其方式是將金鑰組放入使用者的 .ssh 目錄中。 若未指定,計算節點間不會設定無密碼 SSH(使用者的 .ssh 目錄不會被修改)。 |
| uid |
integer (int32) |
使用者帳號的使用者 ID。 uid 和 gid 屬性必須一起指定或完全不指定。 如果未指定基礎操作系統,則會挑選 uid。 |
LoginMode
登入模式列舉
| 值 | Description |
|---|---|
| batch |
LOGON32_LOGON_BATCH Win32 登入模式。 建議針對長時間執行的平行進程使用批次登入模式。 |
| interactive |
LOGON32_LOGON_INTERACTIVE Win32 登入模式。 Windows 虛擬機器配置池啟用了 UAC。 若此選項在 Windows 虛擬機器組態池中以提升的使用者身份使用,則使用者會話不會被提升,除非任務命令列執行的應用程式被設定為始終需要管理員權限或始終要求最大權限。 |
ManagedDisk
受控磁碟參數。
| 名稱 | 類型 | Description |
|---|---|---|
| diskEncryptionSet |
指定受控磁碟的客戶受控磁碟加密集資源標識符。 它只能在 UserSubscription 模式下設定。 |
|
| securityProfile |
指定受控磁碟的安全性配置檔設定。 |
|
| storageAccountType |
受控磁碟的記憶體帳戶類型。 |
MountConfiguration
要掛接在每個節點上的文件系統。
| 名稱 | 類型 | Description |
|---|---|---|
| azureBlobFileSystemConfiguration |
在每個節點上使用 Blob FUSE 掛接的 Azure 記憶體容器。 這個屬性與其他所有屬性互斥。 |
|
| azureFileShareConfiguration |
要掛接在每個節點上的 Azure 檔案共用。 這個屬性與其他所有屬性互斥。 |
|
| cifsMountConfiguration |
要掛接在每個節點上的 CIFS/SMB 文件系統。 這個屬性與其他所有屬性互斥。 |
|
| nfsMountConfiguration |
要掛接在每個節點上的NFS文件系統。 這個屬性與其他所有屬性互斥。 |
NameValuePair
表示名稱/值組。
| 名稱 | 類型 | Description |
|---|---|---|
| name |
string |
名稱與值對中的名字。 |
| value |
string |
名稱與值對中的值。 |
NetworkConfiguration
集區的網路組態。
| 名稱 | 類型 | Description |
|---|---|---|
| dynamicVNetAssignmentScope |
動態 vnet 指派的範圍。 |
|
| enableAcceleratedNetworking |
boolean |
此集區是否應該啟用加速網路。 加速網路可讓單一根 I/O 虛擬化(SR-IOV)連線到 VM,這可能會導致改善網路效能。 如需詳細資訊,請參閱:https://learn.microsoft.com/azure/virtual-network/accelerated-networking-overview。 |
| endpointConfiguration |
批次池中計算節點端點的設定。 |
|
| publicIPAddressConfiguration |
Batch 集區中計算節點的公用IPAddress組態。 |
|
| subnetId |
string |
虛擬網路子網的 ARM 資源識別碼,池中的運算節點將加入該子網。 這是 /subscriptions/{subscription}/resourceGroups/{group}/providers/{provider}/virtualNetworks/{network}/subnets/{subnet}的格式。 虛擬網路必須位於與 Azure Batch 帳戶相同的區域和訂用帳戶中。 指定的子網應有足夠的空閒 IP 位址以容納池中計算節點的數量。 如果子網沒有足夠的空閒 IP 位址,池子會部分分配節點,並發生重新大小錯誤。 'MicrosoftAzureBatch' 服務主體必須具有指定 VNet 的「傳統虛擬機參與者」Role-Based 訪問控制 (RBAC) 角色。 指定的子網路必須允許來自 Azure 批次服務的通訊,才能在節點上排程任務。 藉由檢查指定的 VNet 是否有任何相關聯的網路安全組 (NSG),即可驗證此情況。 如果 NSG 拒絕與指定子網中的節點通訊,Batch 服務會將計算節點的狀態設定為無法使用。 僅支援 ARM 虛擬網路(「Microsoft.Network/virtualNetworks」)。 若指定的 VNet 有任何相關的網路安全群組(NSG),則必須啟用少數保留的系統埠用於入站通訊,包括埠 29876 與 29877。 同時在埠 443 上啟用對 Azure 記憶體的輸出連線。 如需詳細資訊,請參閱:https://learn.microsoft.com/azure/batch/nodes-and-pools#virtual-network-vnet-and-firewall-configuration |
NetworkSecurityGroupRule
要套用至輸入端點的網路安全組規則。
| 名稱 | 類型 | Description |
|---|---|---|
| access |
應該針對指定的IP位址、子網範圍或卷標採取的動作。 |
|
| priority |
integer (int32) |
此規則的優先順序。 池內的優先順序必須是唯一的,並依優先順序評估。 數位越低,優先順序越高。 例如,可以使用訂單號碼 150、250 和 350 來指定規則。 順序編號為 150 的規則優先於順序為 250 的規則。 允許的優先順序為 150 到 4096。 如果提供任何保留或重複的值,要求就會失敗,且 HTTP 狀態代碼為 400。 |
| sourceAddressPrefix |
string |
要符合規則的來源位址前置詞或標籤。 有效值為單一IP位址(例如10.10.10.10.10)、IP子網(例如192.168.1.0/24)、預設標記或 * (適用於所有位址)。 如果提供任何其他值,要求就會因為 HTTP 狀態代碼 400 而失敗。 |
| sourcePortRanges |
string[] |
要與規則相符的來源埠範圍。 有效的值包括 ''(所有埠 0 - 65535)、特定埠(例如 22)或埠範圍(如 100-200)。埠口必須在 0 到 65535 之間。本集合中的每個條目不得與其他條目重疊(無論是同一個範圍或單一埠)。若提供其他值,請求會以 HTTP 狀態碼 400 失敗。預設值為 ''。 |
NetworkSecurityGroupRuleAccess
NetworkSecurityGroupRuleAccess 枚舉
| 值 | Description |
|---|---|
| allow |
允許存取。 |
| deny |
拒絕存取。 |
NfsMountConfiguration
用來連線到 NFS 檔案系統的資訊。
| 名稱 | 類型 | Description |
|---|---|---|
| mountOptions |
string |
要傳遞至掛接命令的其他命令行選項。 這些是 Windows 中的「net use」選項,Linux 中的「掛接」選項。 |
| relativeMountPath |
string |
檔案系統將掛載的計算節點上的相對路徑。 所有文件系統都會掛接至 Batch 掛接目錄,可透過 AZ_BATCH_NODE_MOUNTS_DIR 環境變數存取。 |
| source |
string |
要掛接之文件系統的 URI。 |
OutputFile
在每個檔案上傳上,Batch 服務會將兩個記錄檔寫入計算節點 'fileuploadout.txt' 和 'fileuploaderr.txt'。 這些記錄檔可用來深入瞭解特定失敗。
| 名稱 | 類型 | Description |
|---|---|---|
| destination |
輸出檔案的目的地。 |
|
| filePattern |
string |
一個指示要上傳哪些檔案的模式。 同時支援相對路徑與絕對路徑。 相對路徑是相對於任務工作目錄的。 支援以下萬用字元:* 匹配 0 個或多個字元(例如 pattern abc* 會匹配 abc 或 abcdef),** 匹配任意目錄,? 匹配任意單一字元,[abc] 匹配括號中的一個字元,[a-c] 匹配範圍中的一個字元。 括號中可以包含一個否定,以匹配任何未指定的字元(例如 [!abc] 可以匹配除 a、b 或 c 以外的任何字元)。 如果檔名以「.」開頭,預設會忽略,但可透過明確指定來匹配(例如 .gif 不會匹配 .a.gif,但 。.gif 會)。 一個簡單的例子:***.txt 匹配任務工作目錄中任何不以 '.' 開頭且以 .txt 結尾的檔案,或任何子目錄。 如果檔名包含萬用字元,可以用括號來避開(例如 abc[] 會對應一個名為 abc 的檔案)。 請注意,在 Windows 上 \ 和 / 都被視為目錄分隔符,但在 Linux 上只有 / 是。 環境變數(Windows 上的%var% 或 Linux 上的 $var)會在套用模式前展開。 |
| uploadOptions |
上傳操作的額外選項,包括在何種情況下進行上傳。 |
OutputFileBlobContainerDestination
指定 Azure Blob 記憶體容器內的檔案上傳目的地。
| 名稱 | 類型 | Description |
|---|---|---|
| containerUrl |
string (uri) |
Azure Blob 儲存容器中要上傳檔案的容器網址。 若未使用管理身份,URL 必須包含共享存取簽章(SAS)以授予容器寫入權限。 |
| identityReference |
這是用來存取 Azure Blob Storage 的使用者指派身份的參考,該身份由 containerUrl 指定。 身份必須有寫入 Azure Blob Storage 容器的權限。 |
|
| path |
string |
Azure Storage 容器中的目的地 blob 或虛擬目錄。 如果 filePattern 指的是特定檔案(即沒有萬用字元),那麼 path 就是要上傳該檔案的 blob 名稱。 如果 filePattern 包含一個或多個通行字元(因此可能匹配多個檔案),則 path 是 blob 虛擬目錄的名稱(每個 blob 名稱前加),用來上傳檔案。 若省略,檔案會上傳到容器根節點,並附有與其檔案名稱相符的 blob 名稱。 |
| uploadHeaders |
一份用於上傳輸出檔案的標頭名稱與值對清單。 這些標頭會在上傳到 Azure Storage 時指定。 關於上傳 blob 時允許標頭的官方文件: https://learn.microsoft.com/rest/api/storageservices/put-blob#request-headers-all-blob-types。 |
OutputFileDestination
檔案應該上傳至其中的目的地。
| 名稱 | 類型 | Description |
|---|---|---|
| container |
Azure blob 儲存中檔案上傳的位置。 |
OutputFileUploadCondition
OutputFileUploadCondition 枚舉
| 值 | Description |
|---|---|
| tasksuccess |
只有在任務程序結束後,且退出代碼為 0 後才上傳檔案。 |
| taskfailure |
只有在任務程序結束並使用非零退出碼後,才上傳檔案。 |
| taskcompletion |
任務程序結束後上傳檔案,不管退出代碼是什麼。 |
OutputFileUploadConfig
輸出檔案上傳作業的選項,包括執行上傳的條件。
| 名稱 | 類型 | Description |
|---|---|---|
| uploadCondition |
任務輸出檔案或一組檔案應在何種條件下上傳。 預設是任務完成。 |
OutputFileUploadHeader
HTTP 標頭名稱/值組
| 名稱 | 類型 | Description |
|---|---|---|
| name |
string |
上傳輸出檔案時,標頭名稱不區分大小寫。 |
| value |
string |
上傳輸出檔案時要使用的標頭值。 |
ProxyAgentSettings
在建立虛擬機時指定 ProxyAgent 設定。
| 名稱 | 類型 | Description |
|---|---|---|
| enabled |
boolean |
指定是否應該在虛擬機器或虛擬機器擴展集上啟用中繼資料安全性通訊協定功能。 預設值為 False。 |
| imds |
IMDS 端點的設定。 |
|
| wireServer |
WireServer 端點的設定。 |
ResourceFile
要下載至計算節點的單一檔案或多個檔案。
| 名稱 | 類型 | Description |
|---|---|---|
| autoStorageContainerName |
string |
自動儲存帳戶中的儲存容器名稱。 autoStorageContainerName、storageContainerUrl 和 httpUrl 屬性互斥,其中一個必須指定。 |
| blobPrefix |
string |
從 Azure 記憶體容器下載 Blob 時要使用的 Blob 前置詞。 只會下載名稱開頭為指定前置詞的 Blob。 只有在使用 autoStorageContainerName 或 storageContainerUrl 時,屬性才有效。 此前置詞可以是部分檔名或子目錄。 如果未指定前置詞,則會下載容器中的所有檔案。 |
| fileMode |
string |
以八進位格式的檔案許可權模式屬性。 此特性僅適用於下載至 Linux 運算節點的檔案。 如果是為 resourceFile 指定,該檔案會被下載到 Windows 運算節點,則會被忽略。 若 Linux 運算節點未指定此屬性,則預設值為 0770。 |
| filePath |
string |
相對於任務工作目錄,在計算節點上下載檔案的位置。 如果指定 HTTPUrl 屬性,則需要 filePath,並描述將下載檔案的路徑,包括檔名。 否則,如果指定 autoStorageContainerName 或 storageContainerUrl 屬性,則 filePath 是選擇性的,而且是要下載檔案的目錄。 在 filePath 當做目錄使用的情況下,任何已經與輸入數據相關聯的目錄結構都會完整保留,並附加至指定的 filePath 目錄。 指定的相對路徑不能從任務的工作目錄中跳出(例如使用「..」)。 |
| httpUrl |
string (uri) |
要下載之檔案的 URL。 autoStorageContainerName、storageContainerUrl 和 httpUrl 屬性互斥,其中一個必須指定。 如果 URL 指向 Azure Blob 記憶體,則必須從計算節點讀取它。 在 Azure 記憶體中取得 Blob 的這類 URL 有三種方式:包括授與 Blob 讀取許可權的共用存取簽章(SAS),使用具有讀取許可權的受控識別,或設定 Blob 或其容器的 ACL 以允許公用存取。 |
| identityReference |
這是用來存取 Azure Blob 儲存裝置的使用者指定身份的參考,該身份由 storageContainerUrl 或 httpURL 指定。 |
|
| storageContainerUrl |
string (uri) |
Azure Blob 記憶體中 Blob 容器的 URL。 autoStorageContainerName、storageContainerUrl 和 httpUrl 屬性互斥,其中一個必須指定。 此 URL 必須可從計算節點讀取和列出。 有三種方式可以取得 Azure 記憶體中容器的這類 URL:包括授與容器讀取和清單許可權的共用存取簽章(SAS),使用具有讀取和清單許可權的受控識別,或為容器設定 ACL 以允許公用存取。 |
RollingUpgradePolicy
執行滾動升級時所使用的組態參數。
| 名稱 | 類型 | Description |
|---|---|---|
| enableCrossZoneUpgrade |
boolean |
允許 VMSS 在建構升級批次時忽略 AZ 界限。 將 Update 網域和 maxBatchInstancePercent 納入考慮,以判斷批次大小。 只有當使用 NodePlacementConfiguration 作為 Zonal 時,此欄位才能設定為 true 或 false。 |
| maxBatchInstancePercent |
integer (int32) |
一個批次中滾動升級同時升級的虛擬機實例總數上限百分比。 由於這是最大值,先前或未來批次中狀況不良的實例可能會導致批次中的實例百分比降低,以確保更高的可靠性。 此欄位的值應介於 5 到 100 之間,包含。 如果 maxBatchInstancePercent 和 maxUnhealthyInstancePercent 都指派值,maxBatchInstancePercent 的值不應該超過 maxUnhealthyInstancePercent。 |
| maxUnhealthyInstancePercent |
integer (int32) |
擴展集中可同時狀況不良的虛擬機實例總數百分比上限,可能是因為升級而造成狀況不良,或在滾動升級中止之前,在虛擬機健康情況檢查中發現狀況不良狀態。 啟動任何批次之前,會先檢查此條件約束。 此欄位的值應介於 5 到 100 之間,包含。 如果 maxBatchInstancePercent 和 maxUnhealthyInstancePercent 都指派值,maxBatchInstancePercent 的值不應該超過 maxUnhealthyInstancePercent。 |
| maxUnhealthyUpgradedInstancePercent |
integer (int32) |
可發現處於狀況不良狀態的已升級虛擬機實例百分比上限。 升級每個批次之後,就會進行這項檢查。 如果超過這個百分比,滾動更新就會中止。 此欄位的值應介於 0 到 100 之間,並包含。 |
| pauseTimeBetweenBatches |
string (duration) |
完成一個批次中所有虛擬機的更新,以及開始下一個批次之間的等候時間。 持續時間應以 ISO 8601 格式指定。 |
| prioritizeUnhealthyInstances |
boolean |
在任何狀況良好的實例之前,升級擴展集中所有狀況不良的實例。 |
| rollbackFailedInstancesOnPolicyBreach |
boolean |
如果違反滾動升級原則,回復實例至先前的模型。 |
SecurityEncryptionTypes
SecurityEncryptionTypes 枚舉
| 值 | Description |
|---|---|
| DiskWithVMGuestState |
受控磁碟的 EncryptionType 會設定為 DiskWithVMGuestState,以加密受控磁碟以及 VMGuestState Blob。 資料磁碟不支援此功能。 |
| NonPersistedTPM |
受控磁碟的 EncryptionType 會設定為 NonPersistedTPM,以不會在 VMGuestState Blob 中保存韌體狀態。 |
| VMGuestStateOnly |
受控磁碟的 EncryptionType 會設定為 VMGuestStateOnly,以僅加密 VMGuestState Blob。 |
SecurityProfile
指定虛擬機或虛擬機擴展集的安全性配置檔設定。
| 名稱 | 類型 | Description |
|---|---|---|
| encryptionAtHost |
boolean |
用戶可以在要求中使用這個屬性來啟用或停用虛擬機或虛擬機擴展集的主機加密。 這會啟用所有磁碟的加密,包括主機本身的資源/暫存磁碟。 如需主機需求加密的詳細資訊,請參閱 https://learn.microsoft.com/azure/virtual-machines/disk-encryption#supported-vm-sizes。 |
| proxyAgentSettings |
在建立虛擬機時指定 ProxyAgent 設定。 |
|
| securityType |
指定虛擬機的 SecurityType。 它必須設定為任何指定的值,才能啟用 UefiSettings。 |
|
| uefiSettings |
指定建立虛擬機時所使用的安全開機和 vTPM 等安全性設定。 指定建立虛擬機時所使用的安全開機和 vTPM 等安全性設定。 |
SecurityTypes
指定虛擬機的 SecurityType。 它必須設定為任何指定的值,才能啟用 UefiSettings。
| 值 | Description |
|---|---|
| trustedLaunch |
可信啟動會防止進階和持續性攻擊技術侵擾。 |
| confidentialvm |
Azure 機密運算提供機密 VM 適用於具有高安全性和機密性需求的租使用者。 這些虛擬機器以硬體強化的方式提供明確的界限,以滿足您的安全需求。 您可以使用機密 VM 進行移轉,而不需要變更程式代碼,而平臺可保護 VM 的狀態不受讀取或修改。 |
ServiceArtifactReference
指定使用 'latest' 映射版本時,用來為擴展集中所有虛擬機設定相同映像版本的服務成品參考標識符。
| 名稱 | 類型 | Description |
|---|---|---|
| id |
string |
ServiceArtifactReference 的服務工件參考 ID。 服務成品參考標識符的格式為 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/gallerys/{galleryName}/serviceArtifacts/{serviceArtifactName}/vmArtifactsProfiles/{vmArtifactsProfilesName} |
StorageAccountType
StorageAccountType 列舉
| 值 | Description |
|---|---|
| standard_lrs |
資料磁碟應該使用標準本機備援儲存體。 |
| premium_lrs |
資料磁碟應該使用進階本機備援記憶體。 |
| standardssd_lrs |
數據磁碟/OS 磁碟應使用標準 SSD 本地備援記憶體。 |
UpgradeMode
升級模式列舉
| 值 | Description |
|---|---|
| automatic |
擴展集中的所有虛擬機都會同時自動更新。 |
| manual |
您可以控制擴展集中虛擬機更新的應用程式。 您可以使用 manualUpgrade 動作來執行此動作。 |
| rolling |
擴展集中的現有實例會在要升級的批次中關閉。 升級的批次完成後,實例會再次開始取得流量,下一個批次將會開始。 這會繼續執行,直到所有實例都 up-to-date 為止。 |
UpgradePolicy
描述升級原則 - 自動、手動或滾動。
| 名稱 | 類型 | Description |
|---|---|---|
| automaticOSUpgradePolicy |
用於執行自動OS升級的組態參數。 用於執行自動OS升級的組態參數。 |
|
| mode |
指定升級至擴展集中虛擬機的模式。 |
|
| rollingUpgradePolicy |
執行滾動升級時所使用的組態參數。 |
UserAccount
用來建立用來在 Azure Batch 計算節點上執行工作的用戶的屬性。
| 名稱 | 類型 | Description |
|---|---|---|
| elevationLevel |
使用者帳號的等級。 預設值為 nonAdmin。 |
|
| linuxUserConfiguration |
Linux 專用的使用者設定。 若在 Windows 池中指定此功能,則會忽略此特性。 如果未指定,則會使用預設選項建立使用者。 |
|
| name |
string |
使用者帳號名稱。 名稱可以包含最多 20 個字元的任何 Unicode 字元。 |
| password |
string (password) |
使用者帳號的密碼。 |
| windowsUserConfiguration |
Windows 專用的使用者設定。 此屬性僅在使用者處於 Windows 池中時才能指定。 若未指定且在 Windows 池中,使用者會以預設選項建立。 |
UserIdentity
執行工作的使用者身分識別定義。 指定userName或 autoUser 屬性,但不能同時指定兩者。
| 名稱 | 類型 | Description |
|---|---|---|
| autoUser |
執行任務的自動使用者。 userName 和 autoUser 屬性互斥;您必須指定一個,但不能同時指定兩者。 |
|
| username |
string |
任務執行時所使用的使用者身份名稱。 userName 和 autoUser 屬性互斥;您必須指定一個,但不能同時指定兩者。 |
VirtualMachineConfiguration
以 Azure 虛擬機器基礎結構為基礎的集區中計算節點的組態。
| 名稱 | 類型 | Description |
|---|---|---|
| containerConfiguration |
泳池的容器配置。 若有指定,會對池中的每個計算節點進行設定,以允許任務在容器中執行。 所有在這個池子上執行的一般任務和工作管理員任務都必須指定 containerSettings 屬性,其他所有任務也可以指定。 |
|
| dataDisks |
Data |
連接於運算節點的資料磁碟配置。 若池中的運算節點需要連接空資料磁碟,則必須指定此特性。 這無法更新。 每個運算節點都有自己的磁碟(該磁碟不是檔案共享)。 現有的磁碟無法連接,每個連接的磁碟都是空的。 當計算節點從池中移除時,磁碟及其所有相關資料也會被刪除。 磁碟安裝後不會格式化,必須在使用前格式化——更多資訊請參見 https://learn.microsoft.com/azure/virtual-machines/linux/classic/attach-disk#initialize-a-new-data-disk-in-linux 和 https://learn.microsoft.com/azure/virtual-machines/windows/attach-disk-ps#add-an-empty-data-disk-to-a-virtual-machine。 |
| diskEncryptionConfiguration |
集區的磁碟加密組態。 如果指定,則會在節點布建期間,在集區中的每個節點上執行加密。 |
|
| extensions |
集區的虛擬機擴充功能。 如果指定,此組態中提及的擴充功能將會安裝在每個節點上。 |
|
| imageReference |
Azure 虛擬機 Marketplace 映像或要使用的自定義虛擬機映像參考。 |
|
| licenseType |
string |
此規定僅適用於包含 Windows 作業系統的映像檔,且僅在持有有效本地授權的計算節點時使用。 如果省略,則不會套用任何內部部署授權折扣。 值為: Windows_Server - 內部部署授權適用於 Windows Server。 Windows_Client - 內部部署授權適用於 Windows 用戶端。 |
| nodeAgentSKUId |
string |
要布建在集區中計算節點上的 Batch 計算節點代理程式的 SKU。 Batch Compute Node 代理程式是在集區中的每個計算節點上執行的程式,並提供計算節點與 Batch 服務之間的命令與控制介面。 針對不同的操作系統,計算節點代理程式有不同的實作,稱為 SKU。 您必須指定符合選取的映像參考的計算節點代理程式 SKU。 若要取得支援的計算節點代理程式 SKU 清單及其已驗證的映像參考清單,請參閱「列出支援的計算節點代理程式 SKU」作業。 |
| nodePlacementConfiguration |
集區的節點放置組態。 此設定會指定集區中節點實際配置方式的規則。 |
|
| osDisk |
虛擬機操作系統磁碟的設定。 |
|
| securityProfile |
指定虛擬機或虛擬機擴展集的安全性配置檔設定。 |
|
| serviceArtifactReference |
指定使用 'latest' 映射版本時,用來為擴展集中所有虛擬機設定相同映像版本的服務成品參考標識符。 服務成品參考標識符的格式為 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/gallerys/{galleryName}/serviceArtifacts/{serviceArtifactName}/vmArtifactsProfiles/{vmArtifactsProfilesName} |
|
| windowsConfiguration |
虛擬機上的 Windows 作業系統設定。 若 imageReference 屬性指定 Linux 作業系統映像檔,則此屬性不應被指定。 |
VMExtension
虛擬機延伸模組的組態。
| 名稱 | 類型 | Description |
|---|---|---|
| autoUpgradeMinorVersion |
boolean |
指出如果部署期間有新的次要版本,擴充功能是否應該使用較新的次要版本。 不過,部署之後,除非重新部署,否則擴充功能不會升級次要版本,即使此屬性設定為 true 也一定會升級。 |
| enableAutomaticUpgrade |
boolean |
指出如果有較新版本的延伸模組可用,平臺是否應該自動升級延伸模組。 |
| name |
string |
虛擬機擴充功能的名稱。 |
| protectedSettings |
object |
延伸模組可以包含 protectedSettings 或 protectedSettingsFromKeyVault 或完全沒有受保護的設定。 |
| provisionAfterExtensions |
string[] |
延伸模組名稱的集合。 必須布建此延伸模組之後的延伸模組名稱集合。 |
| publisher |
string |
擴充處理程序發行者的名稱。 |
| settings |
object |
擴充功能的 JSON 格式化公用設定。 |
| type |
string |
分機的類型。 |
| typeHandlerVersion |
string |
腳本處理程式的版本。 |
WindowsConfiguration
要套用至虛擬機的 Windows 作業系統設定。
| 名稱 | 類型 | Description |
|---|---|---|
| enableAutomaticUpdates |
boolean |
虛擬機上是否啟用自動更新。 如果省略,預設值為 true。 |
WindowsUserConfiguration
用來在 Windows 計算節點上建立用戶帳戶的屬性。
| 名稱 | 類型 | Description |
|---|---|---|
| loginMode |
使用者的登入模式。 預設是「批次」(batch)。 |