< Back

Enable-AzureBatchAutoScale

Tue Jan 29, 2019 9:35 pm

NAME Enable-AzureBatchAutoScale



SYNOPSIS

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.





PARAMETERS

-AutoScaleEvaluationInterval <TimeSpan>

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.



Required? false

Position? 2

Default value None

Accept pipeline input? False

Accept wildcard characters? false



-AutoScaleFormula <String>

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



Required? false

Position? 1

Default value None

Accept pipeline input? False

Accept wildcard characters? false



-BatchContext <BatchAccountContext>

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.



Required? true

Position? named

Default value None

Accept pipeline input? True (ByValue)

Accept wildcard characters? false



-DefaultProfile <IAzureContextContainer>

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



Required? false

Position? named

Default value None

Accept pipeline input? False

Accept wildcard characters? false



-Id <String>

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



Required? true

Position? 0

Default value None

Accept pipeline input? True (ByPropertyName, ByValue)

Accept wildcard characters? false



<CommonParameters>

This cmdlet supports the common parameters: Verbose, Debug,

ErrorAction, ErrorVariable, WarningAction, WarningVariable,

OutBuffer, PipelineVariable, and OutVariable. For more information, see

about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).



INPUTS

BatchAccountContext

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



String

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





OUTPUTS



NOTES









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.







RELATED LINKS

Online Version: https://docs.microsoft.com/en-us/powers ... hautoscale

Disable-AzureBatchAutoScale

Test-AzureBatchAutoScale

Azure Batch Cmdlets