Enable-AzureBatchAutoScale

Enables automatic scaling of a pool.

Syntax

Enable-AzureBatchAutoScale
      [-Id] <String>
      [[-AutoScaleFormula] <String>]
      [[-AutoScaleEvaluationInterval] <TimeSpan>]
      -BatchContext <BatchAccountContext>
      [-DefaultProfile <IAzureContextContainer>]
      [<CommonParameters>]

Description

The Enable-AzureBatchAutoScale cmdlet enables automatic scaling of the specified pool.

Examples

Example 1: Enable automatic scaling for a pool

PS C:\>$Formula = 'totalNodes=($CPUPercent.GetSamplePercent(TimeInterval_Minute*0,TimeInterval_Minute*10)<0.7?5:(min($CPUPercent.GetSample(TimeInterval_Minute*0, TimeInterval_Minute*10))>0.8?($CurrentDedicated*1.1):$CurrentDedicated));$TargetDedicated=min(100,totalNodes);';
PS C:\> Enable-AzureBatchAutoScale -Id "MyPool" -AutoScaleFormula $Formula -BatchContext $Context

The first command defines a formula, and then saves it to the $Formula variable.

The second command enables automatic scaling on the pool named MyPool using the formula in $Formula.

Required Parameters

-BatchContext

Specifies the BatchAccountContext instance that this cmdlet uses to interact with the Batch service. If you use the Get-AzureRmBatchAccount cmdlet to get your BatchAccountContext, then Azure Active Directory authentication will be used when interacting with the Batch service. To use shared key authentication instead, use the Get-AzureRmBatchAccountKeys cmdlet to get a BatchAccountContext object with its access keys populated. When using shared key authentication, the primary access key is used by default. To change the key to use, set the BatchAccountContext.KeyInUse property.

Type:Microsoft.Azure.Commands.Batch.BatchAccountContext
Position:Named
Default value:None
Accept pipeline input:True (ByValue)
Accept wildcard characters:False
-Id

Specifies the object ID of the pool for which to enable automatic scaling.

Type:String
Position:0
Default value:None
Accept pipeline input:True (ByPropertyName, ByValue)
Accept wildcard characters:False

Optional Parameters

-AutoScaleEvaluationInterval

Specifies the amount of time (in minutes) that elapses before the pool size is automatically adjusted according to the AutoScale formula. The default value is 15 minutes, and the minimum value is 5 minutes.

Type:System.Nullable`1[System.TimeSpan]
Position:2
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-AutoScaleFormula

Specifies the formula for the desired number of compute nodes in the pool.

Type:String
Position:1
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-DefaultProfile

The credentials, account, tenant, and subscription used for communication with azure.

Type:Microsoft.Azure.Commands.Common.Authentication.Abstractions.IAzureContextContainer
Aliases:AzureRmContext, AzureCredential
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

Inputs

BatchAccountContext

Parameter 'BatchContext' accepts value of type 'BatchAccountContext' from the pipeline

Inputs

String

Parameter 'Id' accepts value of type 'String' from the pipeline