Exemplos de Application Auto Scaling usando ferramentas para PowerShell - AWS SDKExemplos de código

Há mais AWS SDK exemplos disponíveis no GitHub repositório AWS Doc SDK Examples.

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Exemplos de Application Auto Scaling usando ferramentas para PowerShell

Os exemplos de código a seguir mostram como realizar ações e implementar cenários comuns usando o AWS Tools for PowerShell with Application Auto Scaling.

Ações são trechos de código de programas maiores e devem ser executadas em contexto. Embora as ações mostrem como chamar funções de serviço individuais, é possível ver as ações no contexto em seus cenários relacionados.

Cada exemplo inclui um link para o código-fonte completo, onde você pode encontrar instruções sobre como configurar e executar o código no contexto.

Tópicos

Ações

O código de exemplo a seguir mostra como usar Add-AASScalableTarget.

Ferramentas para PowerShell

Exemplo 1: Esse cmdlet registra ou atualiza um destino escalável. Uma meta escalável é um recurso que o Application Auto Scaling pode escalar para fora e para dentro.

Add-AASScalableTarget -ServiceNamespace AppStream -ResourceId fleet/MyFleet -ScalableDimension appstream:fleet:DesiredCapacity -MinCapacity 2 -MaxCapacity 10

O código de exemplo a seguir mostra como usar Get-AASScalableTarget.

Ferramentas para PowerShell

Exemplo 1: Este exemplo fornecerá informações sobre os destinos escaláveis do escalonamento automático de aplicativos no namespace especificado.

Get-AASScalableTarget -ServiceNamespace "AppStream"

Saída:

CreationTime : 11/7/2019 2:30:03 AM MaxCapacity : 5 MinCapacity : 1 ResourceId : fleet/Test RoleARN : arn:aws:iam::012345678912:role/aws-service-role/appstream.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_AppStreamFleet ScalableDimension : appstream:fleet:DesiredCapacity ServiceNamespace : appstream SuspendedState : Amazon.ApplicationAutoScaling.Model.SuspendedState

O código de exemplo a seguir mostra como usar Get-AASScalingActivity.

Ferramentas para PowerShell

Exemplo 1: fornece informações descritivas sobre as atividades de escalabilidade no namespace especificado nas seis semanas anteriores.

Get-AASScalingActivity -ServiceNamespace AppStream

Saída:

ActivityId : 2827409f-b639-4cdb-a957-8055d5d07434 Cause : monitor alarm Appstream2-MyFleet-default-scale-in-Alarm in state ALARM triggered policy default-scale-in Description : Setting desired capacity to 2. Details : EndTime : 12/14/2019 11:32:49 AM ResourceId : fleet/MyFleet ScalableDimension : appstream:fleet:DesiredCapacity ServiceNamespace : appstream StartTime : 12/14/2019 11:32:14 AM StatusCode : Successful StatusMessage : Successfully set desired capacity to 2. Change successfully fulfilled by appstream.

O código de exemplo a seguir mostra como usar Get-AASScalingPolicy.

Ferramentas para PowerShell

Exemplo 1: Esse cmdlet descreve as políticas de escalabilidade do Application Auto Scaling para o namespace de serviço especificado.

Get-AASScalingPolicy -ServiceNamespace AppStream

Saída:

Alarms : {Appstream2-LabFleet-default-scale-out-Alarm} CreationTime : 9/3/2019 2:48:15 AM PolicyARN : arn:aws:autoscaling:us-west-2:012345678912:scalingPolicy:5659b069-b5cd-4af1-9f7f-3e956d36233e:resource/appstream/fleet/LabFleet: policyName/default-scale-out PolicyName : default-scale-out PolicyType : StepScaling ResourceId : fleet/LabFleet ScalableDimension : appstream:fleet:DesiredCapacity ServiceNamespace : appstream StepScalingPolicyConfiguration : Amazon.ApplicationAutoScaling.Model.StepScalingPolicyConfiguration TargetTrackingScalingPolicyConfiguration : Alarms : {Appstream2-LabFleet-default-scale-in-Alarm} CreationTime : 9/3/2019 2:48:15 AM PolicyARN : arn:aws:autoscaling:us-west-2:012345678912:scalingPolicy:5659b069-b5cd-4af1-9f7f-3e956d36233e:resource/appstream/fleet/LabFleet: policyName/default-scale-in PolicyName : default-scale-in PolicyType : StepScaling ResourceId : fleet/LabFleet ScalableDimension : appstream:fleet:DesiredCapacity ServiceNamespace : appstream StepScalingPolicyConfiguration : Amazon.ApplicationAutoScaling.Model.StepScalingPolicyConfiguration TargetTrackingScalingPolicyConfiguration :

O código de exemplo a seguir mostra como usar Get-AASScheduledAction.

Ferramentas para PowerShell

Exemplo 1: Esse cmdlet lista as ações agendadas para seu grupo de Auto Scaling que não foram executadas ou que não atingiram o horário de término.

Get-AASScheduledAction -ServiceNamespace AppStream

Saída:

CreationTime : 12/22/2019 9:25:52 AM EndTime : 1/1/0001 12:00:00 AM ResourceId : fleet/MyFleet ScalableDimension : appstream:fleet:DesiredCapacity ScalableTargetAction : Amazon.ApplicationAutoScaling.Model.ScalableTargetAction Schedule : cron(0 0 8 ? * MON-FRI *) ScheduledActionARN : arn:aws:autoscaling:us-west-2:012345678912:scheduledAction:4897ca24-3caa-4bf1-8484-851a089b243c:resource/appstream/fleet/MyFleet:scheduledActionName /WeekDaysFleetScaling ScheduledActionName : WeekDaysFleetScaling ServiceNamespace : appstream StartTime : 1/1/0001 12:00:00 AM

O código de exemplo a seguir mostra como usar Remove-AASScalableTarget.

Ferramentas para PowerShell

Exemplo 1: Esse cmdlet cancela o registro de um alvo escalável do Application Auto Scaling. O cancelamento do registro de um destino escalável exclui as políticas de escalabilidade associadas a ele.

Remove-AASScalableTarget -ResourceId fleet/MyFleet -ScalableDimension appstream:fleet:DesiredCapacity -ServiceNamespace AppStream

Saída:

Confirm Are you sure you want to perform this action? Performing the operation "Remove-AASScalableTarget (DeregisterScalableTarget)" on target "fleet/MyFleet". [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): Y

O código de exemplo a seguir mostra como usar Remove-AASScalingPolicy.

Ferramentas para PowerShell

Exemplo 1: Esse cmdlet exclui a política de escalabilidade especificada para um destino escalável do Application Auto Scaling.

Remove-AASScalingPolicy -ServiceNamespace AppStream -PolicyName "default-scale-out" -ResourceId fleet/Test -ScalableDimension appstream:fleet:DesiredCapacity
  • Para API obter detalhes, consulte DeleteScalingPolicyem Referência de AWS Tools for PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Remove-AASScheduledAction.

Ferramentas para PowerShell

Exemplo 1: Esse cmdlet exclui a ação agendada especificada para um destino escalável do Application Auto Scaling.

Remove-AASScheduledAction -ServiceNamespace AppStream -ScheduledActionName WeekDaysFleetScaling -ResourceId fleet/MyFleet -ScalableDimension appstream:fleet:DesiredCapacity

Saída:

Confirm Are you sure you want to perform this action? Performing the operation "Remove-AASScheduledAction (DeleteScheduledAction)" on target "WeekDaysFleetScaling". [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): Y
  • Para API obter detalhes, consulte DeleteScheduledActionem Referência de AWS Tools for PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Set-AASScalingPolicy.

Ferramentas para PowerShell

Exemplo 1: Esse cmdlet cria ou atualiza uma política para um destino escalável do Application Auto Scaling. Cada destino escalável é identificado por um namespace de serviço, ID de recurso e dimensão escalável.

Set-AASScalingPolicy -ServiceNamespace AppStream -PolicyName ASFleetScaleInPolicy -PolicyType StepScaling -ResourceId fleet/MyFleet -ScalableDimension appstream:fleet:DesiredCapacity -StepScalingPolicyConfiguration_AdjustmentType ChangeInCapacity -StepScalingPolicyConfiguration_Cooldown 360 -StepScalingPolicyConfiguration_MetricAggregationType Average -StepScalingPolicyConfiguration_StepAdjustments @{ScalingAdjustment = -1; MetricIntervalUpperBound = 0}

Saída:

Alarms PolicyARN ------ --------- {} arn:aws:autoscaling:us-west-2:012345678912:scalingPolicy:4897ca24-3caa-4bf1-8484-851a089b243c:resource/appstream/fleet/MyFleet:policyName/ASFleetScaleInPolicy
  • Para API obter detalhes, consulte PutScalingPolicyem Referência de AWS Tools for PowerShell cmdlet.

O código de exemplo a seguir mostra como usar Set-AASScheduledAction.

Ferramentas para PowerShell

Exemplo 1: Esse cmdlet cria ou atualiza uma ação agendada para um destino escalável do Application Auto Scaling. Cada destino escalável é identificado por um namespace de serviço, ID de recurso e dimensão escalável.

Set-AASScheduledAction -ServiceNamespace AppStream -ResourceId fleet/MyFleet -Schedule "cron(0 0 8 ? * MON-FRI *)" -ScalableDimension appstream:fleet:DesiredCapacity -ScheduledActionName WeekDaysFleetScaling -ScalableTargetAction_MinCapacity 5 -ScalableTargetAction_MaxCapacity 10
  • Para API obter detalhes, consulte PutScheduledActionem Referência de AWS Tools for PowerShell cmdlet.