Pool Interface

public interface Pool

An immutable client-side representation of Pool.

Method Summary

Modifier and Type Method and Description
abstract AllocationState allocationState()

Gets the allocationState property: Whether the pool is resizing.

abstract OffsetDateTime allocationStateTransitionTime()

Gets the allocationStateTransitionTime property: The time at which the pool entered its current allocation state.

abstract List<String> applicationLicenses()

Gets the applicationLicenses property: The list of application licenses the Batch service will make available on each compute node in the pool.

abstract List<ApplicationPackageReference> applicationPackages()

Gets the applicationPackages property: The list of application packages to be installed on each compute node in the pool.

abstract AutoScaleRun autoScaleRun()

Gets the autoScaleRun property: The results and errors from an execution of a pool autoscale formula.

abstract List<CertificateReference> certificates()

Gets the certificates property: The list of certificates to be installed on each compute node in the pool.

abstract OffsetDateTime creationTime()

Gets the creationTime property: The creation time of the pool.

abstract Integer currentDedicatedNodes()

Gets the currentDedicatedNodes property: The number of dedicated compute nodes currently in the pool.

abstract Integer currentLowPriorityNodes()

Gets the currentLowPriorityNodes property: The number of Spot/low-priority compute nodes currently in the pool.

abstract NodeCommunicationMode currentNodeCommunicationMode()

Gets the currentNodeCommunicationMode property: Determines how a pool communicates with the Batch service.

abstract DeploymentConfiguration deploymentConfiguration()

Gets the deploymentConfiguration property: Deployment configuration properties.

abstract Pool disableAutoScale()

Disables automatic scaling for a pool.

abstract Response<Pool> disableAutoScaleWithResponse(Context context)

Disables automatic scaling for a pool.

abstract String displayName()

Gets the displayName property: The display name for the pool.

abstract String etag()

Gets the etag property: The ETag of the resource, used for concurrency statements.

abstract String id()

Gets the id property: Fully qualified resource Id for the resource.

abstract BatchPoolIdentity identity()

Gets the identity property: The type of identity used for the Batch Pool.

abstract PoolInner innerModel()

Gets the inner com.azure.resourcemanager.batch.fluent.models.PoolInner object.

abstract InterNodeCommunicationState interNodeCommunication()

Gets the interNodeCommunication property: Whether the pool permits direct communication between nodes.

abstract OffsetDateTime lastModified()

Gets the lastModified property: The last modified time of the pool.

abstract List<MetadataItem> metadata()

Gets the metadata property: A list of name-value pairs associated with the pool as metadata.

abstract List<MountConfiguration> mountConfiguration()

Gets the mountConfiguration property: A list of file systems to mount on each node in the pool.

abstract String name()

Gets the name property: The name of the resource.

abstract NetworkConfiguration networkConfiguration()

Gets the networkConfiguration property: The network configuration for a pool.

abstract PoolProvisioningState provisioningState()

Gets the provisioningState property: The current state of the pool.

abstract OffsetDateTime provisioningStateTransitionTime()

Gets the provisioningStateTransitionTime property: The time at which the pool entered its current state.

abstract Pool refresh()

Refreshes the resource to sync with Azure.

abstract Pool refresh(Context context)

Refreshes the resource to sync with Azure.

abstract ResizeOperationStatus resizeOperationStatus()

Gets the resizeOperationStatus property: Details about the current or last completed resize operation.

abstract String resourceGroupName()

Gets the name of the resource group.

abstract Map<String,String> resourceTags()

Gets the resourceTags property: The user-defined tags to be associated with the Azure Batch Pool.

abstract ScaleSettings scaleSettings()

Gets the scaleSettings property: Scale settings for the pool Defines the desired size of the pool.

abstract StartTask startTask()

Gets the startTask property: A task which is run when a compute node joins a pool in the Azure Batch service, or when the compute node is rebooted or reimaged.

abstract Pool stopResize()

Stops an ongoing resize operation on the pool.

abstract Response<Pool> stopResizeWithResponse(Context context)

Stops an ongoing resize operation on the pool.

abstract NodeCommunicationMode targetNodeCommunicationMode()

Gets the targetNodeCommunicationMode property: Determines how a pool communicates with the Batch service.

abstract TaskSchedulingPolicy taskSchedulingPolicy()

Gets the taskSchedulingPolicy property: Specifies how tasks should be distributed across compute nodes.

abstract Integer taskSlotsPerNode()

Gets the taskSlotsPerNode property: The number of task slots that can be used to run concurrent tasks on a single compute node in the pool.

abstract String type()

Gets the type property: The type of the resource.

abstract Update update()

Begins update for the Pool resource.

abstract UpgradePolicy upgradePolicy()

Gets the upgradePolicy property: Describes an upgrade policy - automatic, manual, or rolling.

abstract List<UserAccount> userAccounts()

Gets the userAccounts property: The list of user accounts to be created on each node in the pool.

abstract String vmSize()

Gets the vmSize property: The size of virtual machines in the pool.

Method Details

allocationState

public abstract AllocationState allocationState()

Gets the allocationState property: Whether the pool is resizing.

Returns:

the allocationState value.

allocationStateTransitionTime

public abstract OffsetDateTime allocationStateTransitionTime()

Gets the allocationStateTransitionTime property: The time at which the pool entered its current allocation state.

Returns:

the allocationStateTransitionTime value.

applicationLicenses

public abstract List applicationLicenses()

Gets the applicationLicenses property: The list of application licenses the Batch service will make available on each compute node in the pool. The list of application licenses must be a subset of available Batch service application licenses. If a license is requested which is not supported, pool creation will fail.

Returns:

the applicationLicenses value.

applicationPackages

public abstract List applicationPackages()

Gets the applicationPackages property: The list of application packages to be installed on each compute node in the pool. Changes to application package references affect all new compute nodes joining the pool, but do not affect compute nodes that are already in the pool until they are rebooted or reimaged. There is a maximum of 10 application package references on any given pool.

Returns:

the applicationPackages value.

autoScaleRun

public abstract AutoScaleRun autoScaleRun()

Gets the autoScaleRun property: The results and errors from an execution of a pool autoscale formula. This property is set only if the pool automatically scales, i.e. autoScaleSettings are used.

Returns:

the autoScaleRun value.

certificates

public abstract List certificates()

Gets the certificates property: The list of certificates to be installed on each compute node in the pool. For Windows compute nodes, the Batch service installs the certificates to the specified certificate store and location. For Linux compute nodes, the certificates are stored in a directory inside the task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the task to query for this location. For certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and certificates are placed in that directory. Warning: This property is deprecated and will be removed after February, 2024. Please use the [Azure KeyVault Extension](https://learn.microsoft.com/azure/batch/batch-certificate-migration-guide) instead.

Returns:

the certificates value.

creationTime

public abstract OffsetDateTime creationTime()

Gets the creationTime property: The creation time of the pool.

Returns:

the creationTime value.

currentDedicatedNodes

public abstract Integer currentDedicatedNodes()

Gets the currentDedicatedNodes property: The number of dedicated compute nodes currently in the pool.

Returns:

the currentDedicatedNodes value.

currentLowPriorityNodes

public abstract Integer currentLowPriorityNodes()

Gets the currentLowPriorityNodes property: The number of Spot/low-priority compute nodes currently in the pool.

Returns:

the currentLowPriorityNodes value.

currentNodeCommunicationMode

public abstract NodeCommunicationMode currentNodeCommunicationMode()

Gets the currentNodeCommunicationMode property: Determines how a pool communicates with the Batch service.

Returns:

the currentNodeCommunicationMode value.

deploymentConfiguration

public abstract DeploymentConfiguration deploymentConfiguration()

Gets the deploymentConfiguration property: Deployment configuration properties. Using CloudServiceConfiguration specifies that the nodes should be creating using Azure Cloud Services (PaaS), while VirtualMachineConfiguration uses Azure Virtual Machines (IaaS).

Returns:

the deploymentConfiguration value.

disableAutoScale

public abstract Pool disableAutoScale()

Disables automatic scaling for a pool.

Returns:

contains information about a pool.

disableAutoScaleWithResponse

public abstract Response disableAutoScaleWithResponse(Context context)

Disables automatic scaling for a pool.

Parameters:

context - The context to associate with this operation.

Returns:

contains information about a pool.

displayName

public abstract String displayName()

Gets the displayName property: The display name for the pool. The display name need not be unique and can contain any Unicode characters up to a maximum length of 1024.

Returns:

the displayName value.

etag

public abstract String etag()

Gets the etag property: The ETag of the resource, used for concurrency statements.

Returns:

the etag value.

id

public abstract String id()

Gets the id property: Fully qualified resource Id for the resource.

Returns:

the id value.

identity

public abstract BatchPoolIdentity identity()

Gets the identity property: The type of identity used for the Batch Pool.

Returns:

the identity value.

innerModel

public abstract PoolInner innerModel()

Gets the inner com.azure.resourcemanager.batch.fluent.models.PoolInner object.

Returns:

the inner object.

interNodeCommunication

public abstract InterNodeCommunicationState interNodeCommunication()

Gets the interNodeCommunication property: Whether the pool permits direct communication between nodes. This imposes restrictions on which nodes can be assigned to the pool. Enabling this value can reduce the chance of the requested number of nodes to be allocated in the pool. If not specified, this value defaults to 'Disabled'.

Returns:

the interNodeCommunication value.

lastModified

public abstract OffsetDateTime lastModified()

Gets the lastModified property: The last modified time of the pool. This is the last time at which the pool level data, such as the targetDedicatedNodes or autoScaleSettings, changed. It does not factor in node-level changes such as a compute node changing state.

Returns:

the lastModified value.

metadata

public abstract List metadata()

Gets the metadata property: A list of name-value pairs associated with the pool as metadata. The Batch service does not assign any meaning to metadata; it is solely for the use of user code.

Returns:

the metadata value.

mountConfiguration

public abstract List mountConfiguration()

Gets the mountConfiguration property: A list of file systems to mount on each node in the pool. This supports Azure Files, NFS, CIFS/SMB, and Blobfuse.

Returns:

the mountConfiguration value.

name

public abstract String name()

Gets the name property: The name of the resource.

Returns:

the name value.

networkConfiguration

public abstract NetworkConfiguration networkConfiguration()

Gets the networkConfiguration property: The network configuration for a pool.

Returns:

the networkConfiguration value.

provisioningState

public abstract PoolProvisioningState provisioningState()

Gets the provisioningState property: The current state of the pool.

Returns:

the provisioningState value.

provisioningStateTransitionTime

public abstract OffsetDateTime provisioningStateTransitionTime()

Gets the provisioningStateTransitionTime property: The time at which the pool entered its current state.

Returns:

the provisioningStateTransitionTime value.

refresh

public abstract Pool refresh()

Refreshes the resource to sync with Azure.

Returns:

the refreshed resource.

refresh

public abstract Pool refresh(Context context)

Refreshes the resource to sync with Azure.

Parameters:

context - The context to associate with this operation.

Returns:

the refreshed resource.

resizeOperationStatus

public abstract ResizeOperationStatus resizeOperationStatus()

Gets the resizeOperationStatus property: Details about the current or last completed resize operation. Describes either the current operation (if the pool AllocationState is Resizing) or the previously completed operation (if the AllocationState is Steady).

Returns:

the resizeOperationStatus value.

resourceGroupName

public abstract String resourceGroupName()

Gets the name of the resource group.

Returns:

the name of the resource group.

resourceTags

public abstract Map resourceTags()

Gets the resourceTags property: The user-defined tags to be associated with the Azure Batch Pool. When specified, these tags are propagated to the backing Azure resources associated with the pool. This property can only be specified when the Batch account was created with the poolAllocationMode property set to 'UserSubscription'.

Returns:

the resourceTags value.

scaleSettings

public abstract ScaleSettings scaleSettings()

Gets the scaleSettings property: Scale settings for the pool Defines the desired size of the pool. This can either be 'fixedScale' where the requested targetDedicatedNodes is specified, or 'autoScale' which defines a formula which is periodically reevaluated. If this property is not specified, the pool will have a fixed scale with 0 targetDedicatedNodes.

Returns:

the scaleSettings value.

startTask

public abstract StartTask startTask()

Gets the startTask property: A task which is run when a compute node joins a pool in the Azure Batch service, or when the compute node is rebooted or reimaged. In an PATCH (update) operation, this property can be set to an empty object to remove the start task from the pool.

Returns:

the startTask value.

stopResize

public abstract Pool stopResize()

Stops an ongoing resize operation on the pool. This does not restore the pool to its previous state before the resize operation: it only stops any further changes being made, and the pool maintains its current state. After stopping, the pool stabilizes at the number of nodes it was at when the stop operation was done. During the stop operation, the pool allocation state changes first to stopping and then to steady. A resize operation need not be an explicit resize pool request; this API can also be used to halt the initial sizing of the pool when it is created.

Returns:

contains information about a pool.

stopResizeWithResponse

public abstract Response stopResizeWithResponse(Context context)

Stops an ongoing resize operation on the pool. This does not restore the pool to its previous state before the resize operation: it only stops any further changes being made, and the pool maintains its current state. After stopping, the pool stabilizes at the number of nodes it was at when the stop operation was done. During the stop operation, the pool allocation state changes first to stopping and then to steady. A resize operation need not be an explicit resize pool request; this API can also be used to halt the initial sizing of the pool when it is created.

Parameters:

context - The context to associate with this operation.

Returns:

contains information about a pool.

targetNodeCommunicationMode

public abstract NodeCommunicationMode targetNodeCommunicationMode()

Gets the targetNodeCommunicationMode property: Determines how a pool communicates with the Batch service. If omitted, the default value is Default.

Returns:

the targetNodeCommunicationMode value.

taskSchedulingPolicy

public abstract TaskSchedulingPolicy taskSchedulingPolicy()

Gets the taskSchedulingPolicy property: Specifies how tasks should be distributed across compute nodes. If not specified, the default is spread.

Returns:

the taskSchedulingPolicy value.

taskSlotsPerNode

public abstract Integer taskSlotsPerNode()

Gets the taskSlotsPerNode property: The number of task slots that can be used to run concurrent tasks on a single compute node in the pool. The default value is 1. The maximum value is the smaller of 4 times the number of cores of the vmSize of the pool or 256.

Returns:

the taskSlotsPerNode value.

type

public abstract String type()

Gets the type property: The type of the resource.

Returns:

the type value.

update

public abstract Pool.Update update()

Begins update for the Pool resource.

Returns:

the stage of resource update.

upgradePolicy

public abstract UpgradePolicy upgradePolicy()

Gets the upgradePolicy property: Describes an upgrade policy - automatic, manual, or rolling.

Returns:

the upgradePolicy value.

userAccounts

public abstract List userAccounts()

Gets the userAccounts property: The list of user accounts to be created on each node in the pool.

Returns:

the userAccounts value.

vmSize

public abstract String vmSize()

Gets the vmSize property: The size of virtual machines in the pool. All VMs in a pool are the same size. For information about available sizes of virtual machines for Cloud Services pools (pools created with cloudServiceConfiguration), see Sizes for Cloud Services (https://azure.microsoft.com/documentation/articles/cloud-services-sizes-specs/). Batch supports all Cloud Services VM sizes except ExtraSmall. For information about available VM sizes for pools using images from the Virtual Machines Marketplace (pools created with virtualMachineConfiguration) see Sizes for Virtual Machines (Linux) (https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) or Sizes for Virtual Machines (Windows) (https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/). Batch supports all Azure VM sizes except STANDARD_A0 and those with premium storage (STANDARD_GS, STANDARD_DS, and STANDARD_DSV2 series).

Returns:

the vmSize value.

Applies to