Condividi tramite


Pools - Replace Pool Properties

Aggiorna le proprietà del Pool specificato.
Questo sostituisce completamente tutte le proprietà aggiornabili della piscina. Ad esempio, se il Pool ha associato un StartTask e se StartTask non è specificato con questa richiesta, allora il servizio Batch rimuoverà l'StartTask esistente.

POST {endpoint}/pools/{poolId}/updateproperties?api-version=2025-06-01
POST {endpoint}/pools/{poolId}/updateproperties?api-version=2025-06-01&timeOut={timeOut}

Parametri dell'URI

Nome In Necessario Tipo Descrizione
endpoint
path True

string (uri)

Endpoint dell'account Batch (ad esempio: https://batchaccount.eastus2.batch.azure.com).

poolId
path True

string

L'ID del Pool da aggiornare.

api-version
query True

string

minLength: 1

Versione dell'API da usare per questa operazione.

timeOut
query

integer (int32)

Tempo massimo di elaborazione della richiesta da parte del server, espresso in secondi. Il valore predefinito è 30 secondi. Se il valore è superiore a 30, verrà utilizzato il valore predefinito.".

Intestazione della richiesta

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

Nome Necessario Tipo Descrizione
client-request-id

string

Identità della richiesta generata dal chiamante, sotto forma di GUID senza decorazioni come parentesi graffe, ad esempio 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.

return-client-request-id

boolean

Indica se il server deve restituire l'ID richiesta client nella risposta.

ocp-date

string (date-time-rfc7231)

Ora di emissione della richiesta. Le librerie client in genere impostano questo valore sull'ora corrente dell'orologio di sistema; impostarla in modo esplicito se si chiama direttamente l'API REST.

Corpo della richiesta

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

Nome Necessario Tipo Descrizione
applicationPackageReferences True

BatchApplicationPackageReference[]

Elenco dei pacchetti dell'applicazione da installare in ogni nodo di calcolo nel pool. L'elenco sostituisce tutti i riferimenti al pacchetto dell'applicazione esistenti nel pool. Le modifiche apportate ai riferimenti al pacchetto dell'applicazione influiscono su tutti i nuovi nodi di calcolo che si aggiungono al pool, ma non influiscono sui nodi di calcolo già presenti nel pool finché non vengono riavviati o ricreati l'immagine. È previsto un massimo di 10 riferimenti al pacchetto dell'applicazione in un determinato pool. Se omesso o se si specifica una raccolta vuota, eventuali riferimenti ai pacchetti di applicazioni esistenti vengono rimossi dal pool. È possibile specificare un massimo di 10 riferimenti in un determinato pool.

metadata True

BatchMetadataItem[]

Elenco di coppie nome-valore associate al pool come metadati. Questo elenco sostituisce tutti i metadati esistenti configurati nel pool. Se omesso o se si specifica una raccolta vuota, tutti i metadati esistenti vengono rimossi dal pool.

startTask

BatchStartTask

Un'attività da eseguire in ogni nodo di calcolo quando viene aggiunto al pool. L'attività viene eseguita quando il nodo di calcolo viene aggiunto al pool o quando il nodo di calcolo viene riavviato. Se questo elemento è presente, sovrascrive qualsiasi StartTask esistente. Se omesso, qualsiasi StartTask esistente viene rimosso dal pool.

Risposte

Nome Tipo Descrizione
204 No Content

Non è disponibile alcun contenuto da inviare per questa richiesta, ma le intestazioni possono essere utili.

Intestazioni

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

BatchError

Risposta di errore imprevista.

Sicurezza

OAuth2Auth

Tipo: oauth2
Flow: implicit
URL di autorizzazione: https://login.microsoftonline.com/common/oauth2/v2.0/authorize

Ambiti

Nome Descrizione
https://batch.core.windows.net//.default

Esempio

Pool update

Esempio di richiesta

POST {endpoint}/pools/poolId/updateproperties?api-version=2025-06-01



{
  "startTask": {
    "commandLine": "/bin/bash -c 'echo start task'"
  },
  "applicationPackageReferences": [],
  "metadata": []
}

Risposta di esempio

Definizioni

Nome Descrizione
AutoUserScope

Enum AutoUserScope

AutoUserSpecification

Specifica le opzioni per l'utente automatico che esegue un'attività di Azure Batch.

BatchApplicationPackageReference

Riferimento a un pacchetto da distribuire nei nodi di calcolo.

BatchError

Risposta di errore ricevuta dal servizio Azure Batch.

BatchErrorDetail

Elemento di informazioni aggiuntive incluse in una risposta di errore di Azure Batch.

BatchErrorMessage

Messaggio di errore ricevuto in una risposta di errore di Azure Batch.

BatchMetadataItem

Il servizio Batch non assegna alcun significato a questi metadati; è esclusivamente per l'uso del codice utente.

BatchNodeIdentityReference

Riferimento a un'identità assegnata dall'utente associata al pool di Batch che verrà usato da un nodo di calcolo.

BatchPoolReplaceOptions

Parametri per la sostituzione delle proprietà in un pool di Azure Batch.

BatchStartTask

Batch ritenta attività quando viene attivata un'operazione di ripristino in un nodo. Esempi di operazioni di ripristino includono (ma non sono limitati a) quando un nodo non integro viene riavviato o un nodo di calcolo è scomparso a causa di un errore dell'host. I tentativi dovuti alle operazioni di ripristino sono indipendenti da e non vengono conteggiati in base a maxTaskRetryCount. Anche se maxTaskRetryCount è 0, può verificarsi un nuovo tentativo interno a causa di un'operazione di ripristino. Per questo motivo, tutte le attività devono essere idempotenti. Ciò significa che le attività devono tollerare l'interruzione e il riavvio senza causare alcun danneggiamento o dati duplicati. La procedura consigliata per le attività a esecuzione prolungata consiste nell'usare una forma di checkpoint. In alcuni casi startTask può essere eseguito di nuovo anche se il nodo di calcolo non è stato riavviato. Prestare particolare attenzione per evitare StartTasks che creano processi di interruzione o installano/avviano i servizi dalla directory di lavoro StartTask, in quanto questo impedisce a Batch di essere in grado di eseguire nuovamente StartTask.

BatchTaskContainerSettings

Impostazioni del contenitore per un'attività.

ContainerHostBatchBindMountEntry

Voce di percorso e modalità di montaggio da montare nel contenitore di attività.

ContainerHostDataPath

Percorsi che verranno montati nel contenitore dell'attività contenitore.

ContainerRegistryReference

Registro contenitori privato.

ContainerWorkingDirectory

ContainerWorkingDirectory enums

ElevationLevel

Enum di ElevationLevel

EnvironmentSetting

Variabile di ambiente da impostare in un processo task.

ResourceFile

Un singolo file o più file da scaricare in un nodo di calcolo.

UserIdentity

Definizione dell'identità utente in cui viene eseguita l'attività. Specificare la proprietà userName o autoUser, ma non entrambe.

AutoUserScope

Enum AutoUserScope

Valore Descrizione
task

Specifica che il servizio dovrebbe creare un nuovo utente per il Task.

pool

Specifica che il Task viene eseguito come il comune account utente automatico creato su ogni Nodo di Calcolo in un Pool.

AutoUserSpecification

Specifica le opzioni per l'utente automatico che esegue un'attività di Azure Batch.

Nome Tipo Descrizione
elevationLevel

ElevationLevel

Livello di elevazione dell'utente automatico. Il valore predefinito è nonAdmin.

scope

AutoUserScope

Ambito dell'utente automatico. Il valore predefinito è pool. Se il pool esegue Windows, è necessario specificare il valore Task se è necessario un isolamento più rigoroso tra le attività. Ad esempio, se l'attività modifica il Registro di sistema in un modo che potrebbe influire su altre attività.

BatchApplicationPackageReference

Riferimento a un pacchetto da distribuire nei nodi di calcolo.

Nome Tipo Descrizione
applicationId

string

L'ID dell'applicazione da distribuire. Quando si crea un pool, l'ID applicazione del pacchetto deve essere completo (/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/applications/{applicationName}).

version

string

Versione dell'applicazione da distribuire. Se omesso, viene distribuita la versione predefinita. Se questo viene omesso in un Pool e non viene specificata una versione predefinita per questa applicazione, la richiesta fallisce con il codice di errore InvalidApplicationPackageReferences e il codice di stato HTTP 409. Se questo viene omesso in un Task e non è specificata una versione predefinita per questa applicazione, il Task fallisce con un errore di pre-elaborazione.

BatchError

Risposta di errore ricevuta dal servizio Azure Batch.

Nome Tipo Descrizione
code

string

Identificatore dell'errore. I codici sono invarianti e devono essere utilizzati a livello di codice.

message

BatchErrorMessage

Messaggio che descrive l'errore, destinato a essere adatto per la visualizzazione in un'interfaccia utente.

values

BatchErrorDetail[]

Raccolta di coppie chiave-valore contenenti dettagli aggiuntivi sull'errore.

BatchErrorDetail

Elemento di informazioni aggiuntive incluse in una risposta di errore di Azure Batch.

Nome Tipo Descrizione
key

string

Identificatore che specifica il significato della proprietà Value.

value

string

Informazioni aggiuntive incluse nella risposta di errore.

BatchErrorMessage

Messaggio di errore ricevuto in una risposta di errore di Azure Batch.

Nome Tipo Descrizione
lang

string

Il codice linguistico del messaggio di errore.

value

string

Testo del messaggio.

BatchMetadataItem

Il servizio Batch non assegna alcun significato a questi metadati; è esclusivamente per l'uso del codice utente.

Nome Tipo Descrizione
name

string

Nome dell'elemento di metadati.

value

string

Valore dell'elemento di metadati.

BatchNodeIdentityReference

Riferimento a un'identità assegnata dall'utente associata al pool di Batch che verrà usato da un nodo di calcolo.

Nome Tipo Descrizione
resourceId

string (arm-id)

ID risorsa ARM dell'identità assegnata dall'utente.

BatchPoolReplaceOptions

Parametri per la sostituzione delle proprietà in un pool di Azure Batch.

Nome Tipo Descrizione
applicationPackageReferences

BatchApplicationPackageReference[]

Elenco dei pacchetti dell'applicazione da installare in ogni nodo di calcolo nel pool. L'elenco sostituisce tutti i riferimenti al pacchetto dell'applicazione esistenti nel pool. Le modifiche apportate ai riferimenti al pacchetto dell'applicazione influiscono su tutti i nuovi nodi di calcolo che si aggiungono al pool, ma non influiscono sui nodi di calcolo già presenti nel pool finché non vengono riavviati o ricreati l'immagine. È previsto un massimo di 10 riferimenti al pacchetto dell'applicazione in un determinato pool. Se omesso o se si specifica una raccolta vuota, eventuali riferimenti ai pacchetti di applicazioni esistenti vengono rimossi dal pool. È possibile specificare un massimo di 10 riferimenti in un determinato pool.

metadata

BatchMetadataItem[]

Elenco di coppie nome-valore associate al pool come metadati. Questo elenco sostituisce tutti i metadati esistenti configurati nel pool. Se omesso o se si specifica una raccolta vuota, tutti i metadati esistenti vengono rimossi dal pool.

startTask

BatchStartTask

Un'attività da eseguire in ogni nodo di calcolo quando viene aggiunto al pool. L'attività viene eseguita quando il nodo di calcolo viene aggiunto al pool o quando il nodo di calcolo viene riavviato. Se questo elemento è presente, sovrascrive qualsiasi StartTask esistente. Se omesso, qualsiasi StartTask esistente viene rimosso dal pool.

BatchStartTask

Batch ritenta attività quando viene attivata un'operazione di ripristino in un nodo. Esempi di operazioni di ripristino includono (ma non sono limitati a) quando un nodo non integro viene riavviato o un nodo di calcolo è scomparso a causa di un errore dell'host. I tentativi dovuti alle operazioni di ripristino sono indipendenti da e non vengono conteggiati in base a maxTaskRetryCount. Anche se maxTaskRetryCount è 0, può verificarsi un nuovo tentativo interno a causa di un'operazione di ripristino. Per questo motivo, tutte le attività devono essere idempotenti. Ciò significa che le attività devono tollerare l'interruzione e il riavvio senza causare alcun danneggiamento o dati duplicati. La procedura consigliata per le attività a esecuzione prolungata consiste nell'usare una forma di checkpoint. In alcuni casi startTask può essere eseguito di nuovo anche se il nodo di calcolo non è stato riavviato. Prestare particolare attenzione per evitare StartTasks che creano processi di interruzione o installano/avviano i servizi dalla directory di lavoro StartTask, in quanto questo impedisce a Batch di essere in grado di eseguire nuovamente StartTask.

Nome Tipo Descrizione
commandLine

string

Riga di comando di StartTask. La riga di comando non viene eseguita in una shell e pertanto non può sfruttare le funzionalità della shell, ad esempio l'espansione delle variabili di ambiente. Se si desidera sfruttare tali funzionalità, è necessario richiamare la shell nella riga di comando, ad esempio usando "cmd /c MyCommand" in Windows o "/bin/sh -c MyCommand" in Linux. Se la riga di comando fa riferimento ai percorsi di file, deve usare un percorso relativo (relativo alla directory di lavoro attività) o usare la variabile di ambiente fornita da Batch (https://learn.microsoft.com/azure/batch/batch-compute-node-environment-variables).

containerSettings

BatchTaskContainerSettings

Le impostazioni del contenitore sotto cui viene eseguita la StartTask. Quando questo viene specificato, tutte le directory ricorsivamente sotto la AZ_BATCH_NODE_ROOT_DIR (la radice delle directory Azure Batch sul nodo) vengono mappate nel container, tutte le variabili dell'ambiente Task vengono mappate nel container e la riga di comando Task viene eseguita nel container. I file prodotti nel contenitore al di fuori di AZ_BATCH_NODE_ROOT_DIR potrebbero non essere riflessi sul disco host, il che significa che le API dei file Batch non potranno accedere a quei file.

environmentSettings

EnvironmentSetting[]

Elenco delle impostazioni delle variabili di ambiente per StartTask.

maxTaskRetryCount

integer (int32)

Numero massimo di tentativi dell'attività. Il servizio Batch ritenta un'attività se il codice di uscita è diverso da zero. Si noti che questo valore controlla in modo specifico il numero di tentativi. Il servizio Batch proverà l'attività una sola volta e potrebbe quindi riprovare fino a questo limite. Ad esempio, se il numero massimo di tentativi è 3, Batch prova l'attività fino a 4 volte (un tentativo iniziale e 3 tentativi). Se il numero massimo di tentativi è 0, il servizio Batch non ritenta l'attività. Se il numero massimo di tentativi è -1, il servizio Batch ritenta l'attività senza limite, ma non è consigliabile per un'attività di avvio o per qualsiasi attività. Il valore predefinito è 0 (nessun tentativo).

resourceFiles

ResourceFile[]

Elenco di file scaricati dal servizio Batch nel nodo di calcolo prima di eseguire la riga di comando. È prevista una dimensione massima per l'elenco dei file di risorse. Quando viene superata la dimensione massima, la richiesta avrà esito negativo e il codice di errore della risposta sarà RequestEntityTooLarge. In questo caso, la raccolta di ResourceFiles deve essere ridotta di dimensioni. A tale scopo, è possibile usare .zip file, pacchetti di applicazioni o contenitori Docker. I file elencati in questo elemento si trovano nella directory di lavoro dell'attività.

userIdentity

UserIdentity

L'identità utente sotto cui viene eseguito il StartTask. Se omesso, il Task viene eseguito come un utente non amministrativo unico per il Task.

waitForSuccess

boolean

Indica se il servizio Batch deve attendere il completamento di StartTask( ovvero uscire con il codice di uscita 0) prima di pianificare qualsiasi attività nel nodo di calcolo. Se true e StartTask non riesce in un nodo, il servizio Batch ritenta l'avvio fino al numero massimo di tentativi (maxTaskRetryCount). Se l'attività non è ancora stata completata correttamente dopo tutti i tentativi, il servizio Batch contrassegna il nodo inutilizzabile e non pianifica attività. Questa condizione può essere rilevata tramite lo stato del nodo di calcolo e i dettagli dell'errore. Se false, il servizio Batch non attenderà il completamento di StartTask. In questo caso, è possibile avviare l'esecuzione di altre attività nel nodo di calcolo mentre StartTask è ancora in esecuzione; e anche se StartTask ha esito negativo, le nuove attività continueranno a essere pianificate nel nodo di calcolo. Il valore predefinito è vero.

BatchTaskContainerSettings

Impostazioni del contenitore per un'attività.

Nome Tipo Descrizione
containerHostBatchBindMounts

ContainerHostBatchBindMountEntry[]

Percorsi da montare nell'attività contenitore. Se questa matrice è null o non è presente, l'attività contenitore monta l'intera unità disco temporanea in Windows (o AZ_BATCH_NODE_ROOT_DIR in Linux). Se questa matrice è impostata come vuota, non verrà montato alcun percorso dati nel contenitore.

containerRunOptions

string

Opzioni aggiuntive per il comando create del contenitore. Queste opzioni aggiuntive vengono fornite come argomenti al comando "docker create", oltre a quelli controllati dal servizio Batch.

imageName

string

L'immagine da usare per creare il contenitore in cui verrà eseguito il Task. Questa è la referenza completa all'Image, come specificato per "docker pull". Se non viene fornito alcun tag come parte del nome dell'Immagine, il tag ":latest" viene usato come predefinito.

registry

ContainerRegistryReference

Il registro privato che contiene l'immagine del contenitore. Questa impostazione può essere omessa se era già stata fornita alla creazione del Pool.

workingDirectory

ContainerWorkingDirectory

La posizione della directory di lavoro Task del container. Il valore predefinito è 'taskWorkingDirectory'.

ContainerHostBatchBindMountEntry

Voce di percorso e modalità di montaggio da montare nel contenitore di attività.

Nome Tipo Descrizione
isReadOnly

boolean

Montare o meno questo percorso di origine come modalità di sola lettura. Il valore predefinito è false (modalità lettura/scrittura). Per Linux, se si monta questo percorso come modalità di lettura/scrittura, ciò non significa che tutti gli utenti nel contenitore dispongano dell'accesso in lettura/scrittura per il percorso, dipende dall'accesso nella macchina virtuale host. Se questo percorso viene montato in sola lettura, tutti gli utenti all'interno del contenitore non potranno modificare il percorso.

source

ContainerHostDataPath

Il percorso che può essere montato nel cliente del contenitore può selezionare.

ContainerHostDataPath

Percorsi che verranno montati nel contenitore dell'attività contenitore.

Valore Descrizione
Shared

Percorso dell'attività a più istanze in cui condividere i propri file.

Startup

Percorso dell'attività di avvio.

VfsMounts

Il percorso contiene tutti i file system virtuali montati in questo nodo.

Task

Percorso dell'attività.

JobPrep

Percorso dell'attività di preparazione del processo.

Applications

Percorso delle applicazioni.

ContainerRegistryReference

Registro contenitori privato.

Nome Tipo Descrizione
identityReference

BatchNodeIdentityReference

Riferimento all'identità assegnata dall'utente da usare per accedere a un Registro Azure Container invece di nome utente e password.

password

string (password)

Password per accedere al server del Registro di sistema.

registryServer

string (uri)

URL del Registro di sistema. Se omesso, il valore predefinito è "docker.io".

username

string

Nome utente per accedere al server del Registro di sistema.

ContainerWorkingDirectory

ContainerWorkingDirectory enums

Valore Descrizione
taskWorkingDirectory

Usa la directory standard di lavoro Task di servizio Batch, che conterrà i File Risorsa Task popolati per Batch.

containerImageDefault

Usa la directory di lavoro definita nell'immagine del container. Attenzione che questa directory non conterrà i File Risorse scaricati da Batch.

ElevationLevel

Enum di ElevationLevel

Valore Descrizione
nonadmin

L'utente è un utente standard senza accesso con privilegi elevati.

admin

L'utente è un utente con accesso con privilegi elevati e opera con autorizzazioni di amministratore complete.

EnvironmentSetting

Variabile di ambiente da impostare in un processo task.

Nome Tipo Descrizione
name

string

Nome della variabile di ambiente.

value

string

Valore della variabile di ambiente.

ResourceFile

Un singolo file o più file da scaricare in un nodo di calcolo.

Nome Tipo Descrizione
autoStorageContainerName

string

Il nome del container di archiviazione nell'account di auto storage. Le proprietà autoStorageContainerName, storageContainerUrl e httpUrl si escludono a vicenda e una di esse deve essere specificata.

blobPrefix

string

Prefisso BLOB da usare durante il download di BLOB da un contenitore di Archiviazione di Azure. Verranno scaricati solo i BLOB i cui nomi iniziano con il prefisso specificato. La proprietà è valida solo quando si usa autoStorageContainerName o storageContainerUrl. Questo prefisso può essere un nome file parziale o una sottodirectory. Se non viene specificato un prefisso, verranno scaricati tutti i file nel contenitore.

fileMode

string

Attributo della modalità di autorizzazione file in formato ottale. Questa proprietà si applica solo ai file scaricati su Linux Compute Nodes. Verrà ignorato se viene specificato per un file di risorsa che verrà scaricato su un nodo di calcolo di Windows. Se questa proprietà non è specificata per un nodo Linux Compute, allora viene applicato un valore predefinito 0770 al file.

filePath

string

La posizione sul Nodo di Calcolo su cui scaricare il/i file/i, rispetto alla directory operativa del Task. Se viene specificata la proprietà httpUrl, filePath è obbligatorio e descrive il percorso in cui verrà scaricato il file, incluso il nome file. In caso contrario, se si specifica la proprietà autoStorageContainerName o storageContainerUrl, filePath è facoltativo ed è la directory in cui scaricare i file. Nel caso in cui filePath venga usato come directory, qualsiasi struttura di directory già associata ai dati di input verrà mantenuta in modo completo e accodato alla directory filePath specificata. Il percorso relativo specificato non può uscire dalla directory di lavoro del Task (ad esempio usando '..').

httpUrl

string (uri)

URL del file da scaricare. Le proprietà autoStorageContainerName, storageContainerUrl e httpUrl si escludono a vicenda e una di esse deve essere specificata. Se l'URL punta ad Archiviazione BLOB di Azure, deve essere leggibile dai nodi di calcolo. Esistono tre modi per ottenere tale URL per un BLOB nell'archiviazione di Azure: includere una firma di accesso condiviso (SAS) che concede le autorizzazioni di lettura per il BLOB, usare un'identità gestita con autorizzazione di lettura o impostare l'ACL per il BLOB o il relativo contenitore per consentire l'accesso pubblico.

identityReference

BatchNodeIdentityReference

Il riferimento all'identità assegnata dall'utente da utilizzare per accedere a Azure Blob Storage specificato da storageContainerUrl o httpUrl.

storageContainerUrl

string (uri)

URL del contenitore BLOB all'interno di Archiviazione BLOB di Azure. Le proprietà autoStorageContainerName, storageContainerUrl e httpUrl si escludono a vicenda e una di esse deve essere specificata. Questo URL deve essere leggibile ed elencabile dai nodi di calcolo. Esistono tre modi per ottenere tale URL per un contenitore nell'archiviazione di Azure: includere una firma di accesso condiviso che concede autorizzazioni di lettura ed elenco per il contenitore, usare un'identità gestita con autorizzazioni di lettura ed elenco o impostare l'ACL per il contenitore per consentire l'accesso pubblico.

UserIdentity

Definizione dell'identità utente in cui viene eseguita l'attività. Specificare la proprietà userName o autoUser, ma non entrambe.

Nome Tipo Descrizione
autoUser

AutoUserSpecification

L'utente automatico sotto cui viene eseguito il Task. Le proprietà userName e autoUser si escludono a vicenda; è necessario specificarne uno ma non entrambi.

username

string

Il nome dell'identità utente con cui viene eseguito il Task. Le proprietà userName e autoUser si escludono a vicenda; è necessario specificarne uno ma non entrambi.