PoolSpecification Class

  • java.lang.Object
    • com.microsoft.azure.batch.protocol.models.PoolSpecification

public class PoolSpecification

Specification for creating a new pool.

Method Summary

Modifier and Type Method and Description
List<String> applicationLicenses()

Get 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. The permitted licenses available on the pool are 'maya', 'vray', '3dsmax', 'arnold'. An additional charge applies for each application license added to the pool.

List<ApplicationPackageReference> applicationPackageReferences()

Get the applicationPackageReferences value.

Period autoScaleEvaluationInterval()

Get the default value is 15 minutes. The minimum and maximum value are 5 minutes and 168 hours respectively. If you specify a value less than 5 minutes or greater than 168 hours, the Batch service rejects the request with an invalid property value error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).

String autoScaleFormula()

Get this property must not be specified if enableAutoScale is set to false. It is required if enableAutoScale is set to true. The formula is checked for validity before the pool is created. If the formula is not valid, the Batch service rejects the request with detailed error information.

List<CertificateReference> certificateReferences()

Get 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.

CloudServiceConfiguration cloudServiceConfiguration()

Get this property must be specified if the pool needs to be created with Azure PaaS VMs. This property and virtualMachineConfiguration are mutually exclusive and one of the properties must be specified. If neither is specified then the Batch service returns an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request). This property cannot be specified if the Batch account was created with its poolAllocationMode property set to 'UserSubscription'.

String displayName()

Get the display name need not be unique and can contain any Unicode characters up to a maximum length of 1024.

Boolean enableAutoScale()

Get if false, at least one of targetDedicateNodes and targetLowPriorityNodes must be specified. If true, the autoScaleFormula element is required. The pool automatically resizes according to the formula. The default value is false.

Boolean enableInterNodeCommunication()

Get enabling inter-node communication limits the maximum size of the pool due to deployment restrictions on the nodes of the pool. This may result in the pool not reaching its desired size. The default value is false.

Integer maxTasksPerNode()

Get the default value is 1. The maximum value of this setting depends on the size of the compute nodes in the pool (the vmSize setting).

List<MetadataItem> metadata()

Get the Batch service does not assign any meaning to metadata; it is solely for the use of user code.

NetworkConfiguration networkConfiguration()

Get the networkConfiguration value.

Period resizeTimeout()

Get this timeout applies only to manual scaling; it has no effect when enableAutoScale is set to true. The default value is 15 minutes. The minimum value is 5 minutes. If you specify a value less than 5 minutes, the Batch service rejects the request with an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).

StartTask startTask()

Get the startTask value.

Integer targetDedicatedNodes()

Get this property must not be specified if enableAutoScale is set to true. If enableAutoScale is set to false, then you must set either targetDedicatedNodes, targetLowPriorityNodes, or both.

Integer targetLowPriorityNodes()

Get this property must not be specified if enableAutoScale is set to true. If enableAutoScale is set to false, then you must set either targetDedicatedNodes, targetLowPriorityNodes, or both.

TaskSchedulingPolicy taskSchedulingPolicy()

Get the taskSchedulingPolicy value.

List<UserAccount> userAccounts()

Get the userAccounts value.

VirtualMachineConfiguration virtualMachineConfiguration()

Get this property must be specified if the pool needs to be created with Azure IaaS VMs. This property and cloudServiceConfiguration are mutually exclusive and one of the properties must be specified. If neither is specified then the Batch service returns an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).

String vmSize()

Get for information about available sizes of virtual machines in pools, see Choose a VM size for compute nodes in an Azure Batch pool (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes).

PoolSpecification withApplicationLicenses(List<String> applicationLicenses)

Set 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. The permitted licenses available on the pool are 'maya', 'vray', '3dsmax', 'arnold'. An additional charge applies for each application license added to the pool.

PoolSpecification withApplicationPackageReferences(List<ApplicationPackageReference> applicationPackageReferences)

Set the applicationPackageReferences value.

PoolSpecification withAutoScaleEvaluationInterval(Period autoScaleEvaluationInterval)

Set the default value is 15 minutes. The minimum and maximum value are 5 minutes and 168 hours respectively. If you specify a value less than 5 minutes or greater than 168 hours, the Batch service rejects the request with an invalid property value error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).

PoolSpecification withAutoScaleFormula(String autoScaleFormula)

Set this property must not be specified if enableAutoScale is set to false. It is required if enableAutoScale is set to true. The formula is checked for validity before the pool is created. If the formula is not valid, the Batch service rejects the request with detailed error information.

PoolSpecification withCertificateReferences(List<CertificateReference> certificateReferences)

Set 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.

PoolSpecification withCloudServiceConfiguration(CloudServiceConfiguration cloudServiceConfiguration)

Set this property must be specified if the pool needs to be created with Azure PaaS VMs. This property and virtualMachineConfiguration are mutually exclusive and one of the properties must be specified. If neither is specified then the Batch service returns an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request). This property cannot be specified if the Batch account was created with its poolAllocationMode property set to 'UserSubscription'.

PoolSpecification withDisplayName(String displayName)

Set the display name need not be unique and can contain any Unicode characters up to a maximum length of 1024.

PoolSpecification withEnableAutoScale(Boolean enableAutoScale)

Set if false, at least one of targetDedicateNodes and targetLowPriorityNodes must be specified. If true, the autoScaleFormula element is required. The pool automatically resizes according to the formula. The default value is false.

PoolSpecification withEnableInterNodeCommunication(Boolean enableInterNodeCommunication)

Set enabling inter-node communication limits the maximum size of the pool due to deployment restrictions on the nodes of the pool. This may result in the pool not reaching its desired size. The default value is false.

PoolSpecification withMaxTasksPerNode(Integer maxTasksPerNode)

Set the default value is 1. The maximum value of this setting depends on the size of the compute nodes in the pool (the vmSize setting).

PoolSpecification withMetadata(List<MetadataItem> metadata)

Set the Batch service does not assign any meaning to metadata; it is solely for the use of user code.

PoolSpecification withNetworkConfiguration(NetworkConfiguration networkConfiguration)

Set the networkConfiguration value.

PoolSpecification withResizeTimeout(Period resizeTimeout)

Set this timeout applies only to manual scaling; it has no effect when enableAutoScale is set to true. The default value is 15 minutes. The minimum value is 5 minutes. If you specify a value less than 5 minutes, the Batch service rejects the request with an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).

PoolSpecification withStartTask(StartTask startTask)

Set the startTask value.

PoolSpecification withTargetDedicatedNodes(Integer targetDedicatedNodes)

Set this property must not be specified if enableAutoScale is set to true. If enableAutoScale is set to false, then you must set either targetDedicatedNodes, targetLowPriorityNodes, or both.

PoolSpecification withTargetLowPriorityNodes(Integer targetLowPriorityNodes)

Set this property must not be specified if enableAutoScale is set to true. If enableAutoScale is set to false, then you must set either targetDedicatedNodes, targetLowPriorityNodes, or both.

PoolSpecification withTaskSchedulingPolicy(TaskSchedulingPolicy taskSchedulingPolicy)

Set the taskSchedulingPolicy value.

PoolSpecification withUserAccounts(List<UserAccount> userAccounts)

Set the userAccounts value.

PoolSpecification withVirtualMachineConfiguration(VirtualMachineConfiguration virtualMachineConfiguration)

Set this property must be specified if the pool needs to be created with Azure IaaS VMs. This property and cloudServiceConfiguration are mutually exclusive and one of the properties must be specified. If neither is specified then the Batch service returns an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).

PoolSpecification withVmSize(String vmSize)

Set for information about available sizes of virtual machines in pools, see Choose a VM size for compute nodes in an Azure Batch pool (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes).

Method Details

applicationLicenses

public List applicationLicenses()

Get 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. The permitted licenses available on the pool are 'maya', 'vray', '3dsmax', 'arnold'. An additional charge applies for each application license added to the pool.

Returns:

the applicationLicenses value

applicationPackageReferences

public List applicationPackageReferences()

Get the applicationPackageReferences value.

Returns:

the applicationPackageReferences value

autoScaleEvaluationInterval

public Period autoScaleEvaluationInterval()

Get the default value is 15 minutes. The minimum and maximum value are 5 minutes and 168 hours respectively. If you specify a value less than 5 minutes or greater than 168 hours, the Batch service rejects the request with an invalid property value error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).

Returns:

the autoScaleEvaluationInterval value

autoScaleFormula

public String autoScaleFormula()

Get this property must not be specified if enableAutoScale is set to false. It is required if enableAutoScale is set to true. The formula is checked for validity before the pool is created. If the formula is not valid, the Batch service rejects the request with detailed error information.

Returns:

the autoScaleFormula value

certificateReferences

public List certificateReferences()

Get 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.

Returns:

the certificateReferences value

cloudServiceConfiguration

public CloudServiceConfiguration cloudServiceConfiguration()

Get this property must be specified if the pool needs to be created with Azure PaaS VMs. This property and virtualMachineConfiguration are mutually exclusive and one of the properties must be specified. If neither is specified then the Batch service returns an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request). This property cannot be specified if the Batch account was created with its poolAllocationMode property set to 'UserSubscription'.

Returns:

the cloudServiceConfiguration value

displayName

public String displayName()

Get the display name need not be unique and can contain any Unicode characters up to a maximum length of 1024.

Returns:

the displayName value

enableAutoScale

public Boolean enableAutoScale()

Get if false, at least one of targetDedicateNodes and targetLowPriorityNodes must be specified. If true, the autoScaleFormula element is required. The pool automatically resizes according to the formula. The default value is false.

Returns:

the enableAutoScale value

enableInterNodeCommunication

public Boolean enableInterNodeCommunication()

Get enabling inter-node communication limits the maximum size of the pool due to deployment restrictions on the nodes of the pool. This may result in the pool not reaching its desired size. The default value is false.

Returns:

the enableInterNodeCommunication value

maxTasksPerNode

public Integer maxTasksPerNode()

Get the default value is 1. The maximum value of this setting depends on the size of the compute nodes in the pool (the vmSize setting).

Returns:

the maxTasksPerNode value

metadata

public List metadata()

Get the Batch service does not assign any meaning to metadata; it is solely for the use of user code.

Returns:

the metadata value

networkConfiguration

public NetworkConfiguration networkConfiguration()

Get the networkConfiguration value.

Returns:

the networkConfiguration value

resizeTimeout

public Period resizeTimeout()

Get this timeout applies only to manual scaling; it has no effect when enableAutoScale is set to true. The default value is 15 minutes. The minimum value is 5 minutes. If you specify a value less than 5 minutes, the Batch service rejects the request with an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).

Returns:

the resizeTimeout value

startTask

public StartTask startTask()

Get the startTask value.

Returns:

the startTask value

targetDedicatedNodes

public Integer targetDedicatedNodes()

Get this property must not be specified if enableAutoScale is set to true. If enableAutoScale is set to false, then you must set either targetDedicatedNodes, targetLowPriorityNodes, or both.

Returns:

the targetDedicatedNodes value

targetLowPriorityNodes

public Integer targetLowPriorityNodes()

Get this property must not be specified if enableAutoScale is set to true. If enableAutoScale is set to false, then you must set either targetDedicatedNodes, targetLowPriorityNodes, or both.

Returns:

the targetLowPriorityNodes value

taskSchedulingPolicy

public TaskSchedulingPolicy taskSchedulingPolicy()

Get the taskSchedulingPolicy value.

Returns:

the taskSchedulingPolicy value

userAccounts

public List userAccounts()

Get the userAccounts value.

Returns:

the userAccounts value

virtualMachineConfiguration

public VirtualMachineConfiguration virtualMachineConfiguration()

Get this property must be specified if the pool needs to be created with Azure IaaS VMs. This property and cloudServiceConfiguration are mutually exclusive and one of the properties must be specified. If neither is specified then the Batch service returns an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).

Returns:

the virtualMachineConfiguration value

vmSize

public String vmSize()

Get for information about available sizes of virtual machines in pools, see Choose a VM size for compute nodes in an Azure Batch pool (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes).

Returns:

the vmSize value

withApplicationLicenses

public PoolSpecification withApplicationLicenses(List applicationLicenses)

Set 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. The permitted licenses available on the pool are 'maya', 'vray', '3dsmax', 'arnold'. An additional charge applies for each application license added to the pool.

Parameters:

applicationLicenses - the applicationLicenses value to set

Returns:

the PoolSpecification object itself.

withApplicationPackageReferences

public PoolSpecification withApplicationPackageReferences(List applicationPackageReferences)

Set the applicationPackageReferences value.

Parameters:

applicationPackageReferences - the applicationPackageReferences value to set

Returns:

the PoolSpecification object itself.

withAutoScaleEvaluationInterval

public PoolSpecification withAutoScaleEvaluationInterval(Period autoScaleEvaluationInterval)

Set the default value is 15 minutes. The minimum and maximum value are 5 minutes and 168 hours respectively. If you specify a value less than 5 minutes or greater than 168 hours, the Batch service rejects the request with an invalid property value error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).

Parameters:

autoScaleEvaluationInterval - the autoScaleEvaluationInterval value to set

Returns:

the PoolSpecification object itself.

withAutoScaleFormula

public PoolSpecification withAutoScaleFormula(String autoScaleFormula)

Set this property must not be specified if enableAutoScale is set to false. It is required if enableAutoScale is set to true. The formula is checked for validity before the pool is created. If the formula is not valid, the Batch service rejects the request with detailed error information.

Parameters:

autoScaleFormula - the autoScaleFormula value to set

Returns:

the PoolSpecification object itself.

withCertificateReferences

public PoolSpecification withCertificateReferences(List certificateReferences)

Set 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.

Parameters:

certificateReferences - the certificateReferences value to set

Returns:

the PoolSpecification object itself.

withCloudServiceConfiguration

public PoolSpecification withCloudServiceConfiguration(CloudServiceConfiguration cloudServiceConfiguration)

Set this property must be specified if the pool needs to be created with Azure PaaS VMs. This property and virtualMachineConfiguration are mutually exclusive and one of the properties must be specified. If neither is specified then the Batch service returns an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request). This property cannot be specified if the Batch account was created with its poolAllocationMode property set to 'UserSubscription'.

Parameters:

cloudServiceConfiguration - the cloudServiceConfiguration value to set

Returns:

the PoolSpecification object itself.

withDisplayName

public PoolSpecification withDisplayName(String displayName)

Set the display name need not be unique and can contain any Unicode characters up to a maximum length of 1024.

Parameters:

displayName - the displayName value to set

Returns:

the PoolSpecification object itself.

withEnableAutoScale

public PoolSpecification withEnableAutoScale(Boolean enableAutoScale)

Set if false, at least one of targetDedicateNodes and targetLowPriorityNodes must be specified. If true, the autoScaleFormula element is required. The pool automatically resizes according to the formula. The default value is false.

Parameters:

enableAutoScale - the enableAutoScale value to set

Returns:

the PoolSpecification object itself.

withEnableInterNodeCommunication

public PoolSpecification withEnableInterNodeCommunication(Boolean enableInterNodeCommunication)

Set enabling inter-node communication limits the maximum size of the pool due to deployment restrictions on the nodes of the pool. This may result in the pool not reaching its desired size. The default value is false.

Parameters:

enableInterNodeCommunication - the enableInterNodeCommunication value to set

Returns:

the PoolSpecification object itself.

withMaxTasksPerNode

public PoolSpecification withMaxTasksPerNode(Integer maxTasksPerNode)

Set the default value is 1. The maximum value of this setting depends on the size of the compute nodes in the pool (the vmSize setting).

Parameters:

maxTasksPerNode - the maxTasksPerNode value to set

Returns:

the PoolSpecification object itself.

withMetadata

public PoolSpecification withMetadata(List metadata)

Set the Batch service does not assign any meaning to metadata; it is solely for the use of user code.

Parameters:

metadata - the metadata value to set

Returns:

the PoolSpecification object itself.

withNetworkConfiguration

public PoolSpecification withNetworkConfiguration(NetworkConfiguration networkConfiguration)

Set the networkConfiguration value.

Parameters:

networkConfiguration - the networkConfiguration value to set

Returns:

the PoolSpecification object itself.

withResizeTimeout

public PoolSpecification withResizeTimeout(Period resizeTimeout)

Set this timeout applies only to manual scaling; it has no effect when enableAutoScale is set to true. The default value is 15 minutes. The minimum value is 5 minutes. If you specify a value less than 5 minutes, the Batch service rejects the request with an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).

Parameters:

resizeTimeout - the resizeTimeout value to set

Returns:

the PoolSpecification object itself.

withStartTask

public PoolSpecification withStartTask(StartTask startTask)

Set the startTask value.

Parameters:

startTask - the startTask value to set

Returns:

the PoolSpecification object itself.

withTargetDedicatedNodes

public PoolSpecification withTargetDedicatedNodes(Integer targetDedicatedNodes)

Set this property must not be specified if enableAutoScale is set to true. If enableAutoScale is set to false, then you must set either targetDedicatedNodes, targetLowPriorityNodes, or both.

Parameters:

targetDedicatedNodes - the targetDedicatedNodes value to set

Returns:

the PoolSpecification object itself.

withTargetLowPriorityNodes

public PoolSpecification withTargetLowPriorityNodes(Integer targetLowPriorityNodes)

Set this property must not be specified if enableAutoScale is set to true. If enableAutoScale is set to false, then you must set either targetDedicatedNodes, targetLowPriorityNodes, or both.

Parameters:

targetLowPriorityNodes - the targetLowPriorityNodes value to set

Returns:

the PoolSpecification object itself.

withTaskSchedulingPolicy

public PoolSpecification withTaskSchedulingPolicy(TaskSchedulingPolicy taskSchedulingPolicy)

Set the taskSchedulingPolicy value.

Parameters:

taskSchedulingPolicy - the taskSchedulingPolicy value to set

Returns:

the PoolSpecification object itself.

withUserAccounts

public PoolSpecification withUserAccounts(List userAccounts)

Set the userAccounts value.

Parameters:

userAccounts - the userAccounts value to set

Returns:

the PoolSpecification object itself.

withVirtualMachineConfiguration

public PoolSpecification withVirtualMachineConfiguration(VirtualMachineConfiguration virtualMachineConfiguration)

Set this property must be specified if the pool needs to be created with Azure IaaS VMs. This property and cloudServiceConfiguration are mutually exclusive and one of the properties must be specified. If neither is specified then the Batch service returns an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request).

Parameters:

virtualMachineConfiguration - the virtualMachineConfiguration value to set

Returns:

the PoolSpecification object itself.

withVmSize

public PoolSpecification withVmSize(String vmSize)

Set for information about available sizes of virtual machines in pools, see Choose a VM size for compute nodes in an Azure Batch pool (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes).

Parameters:

vmSize - the vmSize value to set

Returns:

the PoolSpecification object itself.

Applies to