Share via


BatchClient.ResizePoolAsync Method

Definition

Overloads

ResizePoolAsync(String, BatchPoolResizeContent, Nullable<Int32>, Nullable<DateTimeOffset>, RequestConditions, CancellationToken)

Changes the number of Compute Nodes that are assigned to a Pool.

ResizePoolAsync(String, RequestContent, Nullable<Int32>, Nullable<DateTimeOffset>, RequestConditions, RequestContext)

[Protocol Method] Changes the number of Compute Nodes that are assigned to a Pool.

ResizePoolAsync(String, BatchPoolResizeContent, Nullable<Int32>, Nullable<DateTimeOffset>, RequestConditions, CancellationToken)

Changes the number of Compute Nodes that are assigned to a Pool.

public virtual System.Threading.Tasks.Task<Azure.Response> ResizePoolAsync (string poolId, Azure.Compute.Batch.BatchPoolResizeContent content, int? timeOutInSeconds = default, DateTimeOffset? ocpdate = default, Azure.RequestConditions requestConditions = default, System.Threading.CancellationToken cancellationToken = default);
abstract member ResizePoolAsync : string * Azure.Compute.Batch.BatchPoolResizeContent * Nullable<int> * Nullable<DateTimeOffset> * Azure.RequestConditions * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Azure.Response>
override this.ResizePoolAsync : string * Azure.Compute.Batch.BatchPoolResizeContent * Nullable<int> * Nullable<DateTimeOffset> * Azure.RequestConditions * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Azure.Response>
Public Overridable Function ResizePoolAsync (poolId As String, content As BatchPoolResizeContent, Optional timeOutInSeconds As Nullable(Of Integer) = Nothing, Optional ocpdate As Nullable(Of DateTimeOffset) = Nothing, Optional requestConditions As RequestConditions = Nothing, Optional cancellationToken As CancellationToken = Nothing) As Task(Of Response)

Parameters

poolId
String

The ID of the Pool to get.

content
BatchPoolResizeContent

The options to use for resizing the pool.

timeOutInSeconds
Nullable<Int32>

The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds. If the value is larger than 30, the default will be used instead.".

ocpdate
Nullable<DateTimeOffset>

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.

requestConditions
RequestConditions

The content to send as the request conditions of the request.

cancellationToken
CancellationToken

The cancellation token to use.

Returns

Exceptions

poolId or content is null.

poolId is an empty string, and was expected to be non-empty.

Examples

This sample shows how to call ResizePoolAsync.

Uri endpoint = new Uri("<https://my-service.azure.com>");
TokenCredential credential = new DefaultAzureCredential();
BatchClient client = new BatchClient(endpoint, credential);

BatchPoolResizeContent content = new BatchPoolResizeContent();
Response response = await client.ResizePoolAsync("<poolId>", content);

This sample shows how to call ResizePoolAsync with all parameters.

Uri endpoint = new Uri("<https://my-service.azure.com>");
TokenCredential credential = new DefaultAzureCredential();
BatchClient client = new BatchClient(endpoint, credential);

BatchPoolResizeContent content = new BatchPoolResizeContent
{
    TargetDedicatedNodes = 1234,
    TargetLowPriorityNodes = 1234,
    ResizeTimeout = XmlConvert.ToTimeSpan("PT1H23M45S"),
    NodeDeallocationOption = BatchNodeDeallocationOption.Requeue,
};
Response response = await client.ResizePoolAsync("<poolId>", content, timeOutInSeconds: 1234, ocpdate: DateTimeOffset.Parse("Tue, 10 May 2022 18:57:31 GMT"), requestConditions: null);

Remarks

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.

Applies to

ResizePoolAsync(String, RequestContent, Nullable<Int32>, Nullable<DateTimeOffset>, RequestConditions, RequestContext)

[Protocol Method] Changes the number of Compute Nodes that are assigned to a Pool.

public virtual System.Threading.Tasks.Task<Azure.Response> ResizePoolAsync (string poolId, Azure.Core.RequestContent content, int? timeOutInSeconds = default, DateTimeOffset? ocpdate = default, Azure.RequestConditions requestConditions = default, Azure.RequestContext context = default);
abstract member ResizePoolAsync : string * Azure.Core.RequestContent * Nullable<int> * Nullable<DateTimeOffset> * Azure.RequestConditions * Azure.RequestContext -> System.Threading.Tasks.Task<Azure.Response>
override this.ResizePoolAsync : string * Azure.Core.RequestContent * Nullable<int> * Nullable<DateTimeOffset> * Azure.RequestConditions * Azure.RequestContext -> System.Threading.Tasks.Task<Azure.Response>
Public Overridable Function ResizePoolAsync (poolId As String, content As RequestContent, Optional timeOutInSeconds As Nullable(Of Integer) = Nothing, Optional ocpdate As Nullable(Of DateTimeOffset) = Nothing, Optional requestConditions As RequestConditions = Nothing, Optional context As RequestContext = Nothing) As Task(Of Response)

Parameters

poolId
String

The ID of the Pool to get.

content
RequestContent

The content to send as the body of the request.

timeOutInSeconds
Nullable<Int32>

The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds. If the value is larger than 30, the default will be used instead.".

ocpdate
Nullable<DateTimeOffset>

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.

requestConditions
RequestConditions

The content to send as the request conditions of the request.

context
RequestContext

The request context, which can override default behaviors of the client pipeline on a per-call basis.

Returns

The response returned from the service.

Exceptions

poolId or content is null.

poolId is an empty string, and was expected to be non-empty.

Service returned a non-success status code.

Examples

This sample shows how to call ResizePoolAsync.

Uri endpoint = new Uri("<https://my-service.azure.com>");
TokenCredential credential = new DefaultAzureCredential();
BatchClient client = new BatchClient(endpoint, credential);

using RequestContent content = RequestContent.Create(new object());
Response response = await client.ResizePoolAsync("<poolId>", content);

Console.WriteLine(response.Status);

This sample shows how to call ResizePoolAsync with all parameters and request content.

Uri endpoint = new Uri("<https://my-service.azure.com>");
TokenCredential credential = new DefaultAzureCredential();
BatchClient client = new BatchClient(endpoint, credential);

using RequestContent content = RequestContent.Create(new
{
    targetDedicatedNodes = 1234,
    targetLowPriorityNodes = 1234,
    resizeTimeout = "PT1H23M45S",
    nodeDeallocationOption = "requeue",
});
Response response = await client.ResizePoolAsync("<poolId>", content, timeOutInSeconds: 1234, ocpdate: DateTimeOffset.Parse("Tue, 10 May 2022 18:57:31 GMT"), requestConditions: null);

Console.WriteLine(response.Status);

Applies to