■ 가상 머신 확장 집합에 자동 크기 조정 규칙 설정하기

------------------------------------------------------------------------------------------------------------------------

 

##################################################

# 가상 머신 확장 집합 정보를 정의한다.

##################################################

 

$testSubscriptionID = (Get-AzSubscription)[0].Id

$testResourceGroup  = "TestResourceGroup"

$testScaleSet       = "TestScaleSet"

$testLocation       = "East US"

$testScaleSetID     = (Get-AzVmss -ResourceGroupName $testResourceGroup -VMScaleSetName $testScaleSet).Id

 

##################################################

# 5분 동안 CPU 평균 사용률이 60%를 초과하는 경우 인스턴스 수를 증가시키는 스케일 확장 규칙을 생성한다.

##################################################

 

$testRuleScaleUp = New-AzAutoscaleRule `

  -MetricName "Percentage CPU" `

  -MetricResourceId $testScaleSetID `

  -Operator GreaterThan `

  -MetricStatistic Average `

  -Threshold 60 `

  -TimeGrain 00:01:00 `

  -TimeWindow 00:05:00 `

  -ScaleActionCooldown 00:05:00 `

  -ScaleActionDirection Increase `

  -ScaleActionValue 1

 

##################################################

# 5분 동안 CPU 평균 사용률이 30% 미만인 경우 인스턴스 수를 감소시키는 스케일 축소 규칙을 생성한다.

##################################################

 

$testRuleScaleDown = New-AzAutoscaleRule `

  -MetricName "Percentage CPU" `

  -MetricResourceId $testScaleSetID `

  -Operator LessThan `

  -MetricStatistic Average `

  -Threshold 30 `

  -TimeGrain 00:01:00 `

  -TimeWindow 00:05:00 `

  -ScaleActionCooldown 00:05:00 `

  -ScaleActionDirection Decrease `

  -ScaleActionValue 1

 

##################################################

# 스케일 확장/축소 규칙을 갖는 스케일 프로필을 생성한다.

##################################################

 

$testScaleProfile = New-AzAutoscaleProfile `

  -DefaultCapacity 2  `

  -MaximumCapacity 10 `

  -MinimumCapacity 2 `

  -Rule $testRuleScaleUp,$testRuleScaleDown `

  -Name TestAutoProfile

 

##################################################

# 자동 스케일 규칙을 적용한다.

##################################################

 

Add-AzAutoscaleSetting `

  -Location $testLocation `

  -Name TestAutoscaleSetting `

  -ResourceGroup $testResourceGroup `

  -TargetResourceId $testScaleSetID `

  -AutoscaleProfile $testScaleProfile

 

 

TestResourceGroup    : 리소스 그룹명

   TestScaleSet         : 가상 머신 확장 집합명

   East US              : 지역명

   TestAutoProfile      : 자동 스케일 프로필명

   TestAutoscaleSetting : 자동 스케일 설정명

------------------------------------------------------------------------------------------------------------------------

Posted by 사용자 icodebroker