Pool - Resize

Changes the number of Compute Nodes that are assigned to a Pool.
You can only resize a Pool when its allocation state is steady. If the Pool is already resizing, the request fails with status code 409. When you resize a Pool, the Pool's allocation state changes from steady to resizing. You cannot resize Pools which are configured for automatic scaling. If you try to do this, the Batch service returns an error 409. If you resize a Pool downwards, the Batch service chooses which Compute Nodes to remove. To remove specific Compute Nodes, use the Pool remove Compute Nodes API instead.

POST {batchUrl}/pools/{poolId}/resize?api-version=2022-10-01.16.0
POST {batchUrl}/pools/{poolId}/resize?timeout={timeout}&api-version=2022-10-01.16.0

URI Parameters

Name In Required Type Description
batchUrl
path True
  • string

The base URL for all Azure Batch service requests.

poolId
path True
  • string

The ID of the Pool to resize.

api-version
query True
  • string

Client API Version.

timeout
query
  • integer
int32

The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds.

Request Header

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

Name Required Type Description
client-request-id
  • string
uuid

The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0.

return-client-request-id
  • boolean

Whether the server should return the client-request-id in the response.

ocp-date
  • string
date-time-rfc1123

The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directly.

If-Match
  • string

An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service exactly matches the value specified by the client.

If-None-Match
  • string

An ETag value associated with the version of the resource known to the client. The operation will be performed only if the resource's current ETag on the service does not match the value specified by the client.

If-Modified-Since
  • string
date-time-rfc1123

A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been modified since the specified time.

If-Unmodified-Since
  • string
date-time-rfc1123

A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not been modified since the specified time.

Request Body

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

Name Type Description
nodeDeallocationOption

Determines what to do with a Compute Node and its running task(s) if the Pool size is decreasing.
The default value is requeue.

resizeTimeout
  • string

The timeout for allocation of Nodes to the Pool or removal of Compute Nodes from the Pool.
The default value is 15 minutes. The minimum value is 5 minutes. If you specify a value less than 5 minutes, the Batch service returns an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).

targetDedicatedNodes
  • integer

The desired number of dedicated Compute Nodes in the Pool.

targetLowPriorityNodes
  • integer

The desired number of Spot/Low-priority Compute Nodes in the Pool.

Responses

Name Type Description
202 Accepted

The request to the Batch service was successful.

Headers

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

The error from the Batch service.

Security

azure_auth

Azure Active Directory OAuth2 Flow

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

Scopes

Name Description
user_impersonation Impersonate your user account

Authorization

Type: apiKey
In: header

Examples

Pool resize

Sample Request

POST account.region.batch.azure.com/pools/resizePool/resize?api-version=2022-10-01.16.0



{
  "targetDedicatedNodes": 1,
  "targetLowPriorityNodes": 0
}

Sample Response

Definitions

BatchError

An error response received from the Azure Batch service.

BatchErrorDetail

An item of additional information included in an Azure Batch error response.

ComputeNodeDeallocationOption

Determines what to do with a Compute Node and its running task(s) after it has been selected for deallocation.

ErrorMessage

An error message received in an Azure Batch error response.

PoolResizeParameter

Options for changing the size of a Pool.

BatchError

An error response received from the Azure Batch service.

Name Type Description
code
  • string

An identifier for the error. Codes are invariant and are intended to be consumed programmatically.

message

A message describing the error, intended to be suitable for display in a user interface.

values

A collection of key-value pairs containing additional details about the error.

BatchErrorDetail

An item of additional information included in an Azure Batch error response.

Name Type Description
key
  • string

An identifier specifying the meaning of the Value property.

value
  • string

The additional information included with the error response.

ComputeNodeDeallocationOption

Determines what to do with a Compute Node and its running task(s) after it has been selected for deallocation.

Name Type Description
requeue
  • string

Terminate running Task processes and requeue the Tasks. The Tasks will run again when a Compute Node is available. Remove Compute Nodes as soon as Tasks have been terminated.

retaineddata
  • string

Allow currently running Tasks to complete, then wait for all Task data retention periods to expire. Schedule no new Tasks while waiting. Remove Compute Nodes when all Task retention periods have expired.

taskcompletion
  • string

Allow currently running Tasks to complete. Schedule no new Tasks while waiting. Remove Compute Nodes when all Tasks have completed.

terminate
  • string

Terminate running Tasks. The Tasks will be completed with failureInfo indicating that they were terminated, and will not run again. Remove Compute Nodes as soon as Tasks have been terminated.

ErrorMessage

An error message received in an Azure Batch error response.

Name Type Description
lang
  • string

The language code of the error message

value
  • string

The text of the message.

PoolResizeParameter

Options for changing the size of a Pool.

Name Type Description
nodeDeallocationOption

Determines what to do with a Compute Node and its running task(s) if the Pool size is decreasing.
The default value is requeue.

resizeTimeout
  • string

The timeout for allocation of Nodes to the Pool or removal of Compute Nodes from the Pool.
The default value is 15 minutes. The minimum value is 5 minutes. If you specify a value less than 5 minutes, the Batch service returns an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).

targetDedicatedNodes
  • integer

The desired number of dedicated Compute Nodes in the Pool.

targetLowPriorityNodes
  • integer

The desired number of Spot/Low-priority Compute Nodes in the Pool.