View a markdown version of this page

Esempi di Auto Scaling utilizzando Tools for V4 PowerShell - AWS Esempi di codice SDK

Sono disponibili altri esempi di AWS SDK nel repository AWS Doc SDK Examples. GitHub

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Esempi di Auto Scaling utilizzando Tools for V4 PowerShell

I seguenti esempi di codice mostrano come eseguire azioni e implementare scenari comuni utilizzando il AWS Strumenti per PowerShell V4 con Auto Scaling.

Le azioni sono estratti di codice da programmi più grandi e devono essere eseguite nel contesto. Sebbene le azioni mostrino come richiamare le singole funzioni del servizio, è possibile visualizzarle contestualizzate negli scenari correlati.

Ogni esempio include un link al codice sorgente completo, in cui vengono fornite le istruzioni su come configurare ed eseguire il codice nel contesto.

Argomenti

Azioni

L’esempio di codice seguente mostra come utilizzare Add-ASLoadBalancer.

Strumenti per V4 PowerShell

Esempio 1: questo esempio collega il bilanciatore del carico specificato al gruppo Auto Scaling specificato.

Add-ASLoadBalancer -LoadBalancerName my-lb -AutoScalingGroupName my-asg
  • Per i dettagli sull'API, vedere AttachLoadBalancers in AWS Strumenti per PowerShell Cmdlet Reference (V4).

L’esempio di codice seguente mostra come utilizzare Complete-ASLifecycleAction.

Strumenti per V4 PowerShell

Esempio 1: questo esempio completa l’azione del ciclo di vita specificata.

Complete-ASLifecycleAction -LifecycleHookName myLifecycleHook -AutoScalingGroupName my-asg -LifecycleActionResult CONTINUE -LifecycleActionToken bcd2f1b8-9a78-44d3-8a7a-4dd07d7cf635

L’esempio di codice seguente mostra come utilizzare Disable-ASMetricsCollection.

Strumenti per V4 PowerShell

Esempio 1: questo esempio disabilita il monitoraggio dei parametri specificati per il gruppo Auto Scaling specificato.

Disable-ASMetricsCollection -AutoScalingGroupName my-asg -Metric @("GroupMinSize", "GroupMaxSize")

Esempio 2: questo esempio disabilita il monitoraggio di tutte le metriche specificate per il gruppo Auto Scaling specificato.

Disable-ASMetricsCollection -AutoScalingGroupName my-asg

L’esempio di codice seguente mostra come utilizzare Dismount-ASInstance.

Strumenti per V4 PowerShell

Esempio 1: questo esempio scollega l’istanza specificata dal gruppo Auto Scaling specificato e diminuisce la capacità desiderata in modo che Auto Scaling non avvii un’istanza di sostituzione.

Dismount-ASInstance -InstanceId i-93633f9b -AutoScalingGroupName my-asg -ShouldDecrementDesiredCapacity $true

Output:

ActivityId : 06733445-ce94-4039-be1b-b9f1866e276e AutoScalingGroupName : my-asg Cause : At 2015-11-20T22:34:59Z instance i-93633f9b was detached in response to a user request, shrinking the capacity from 2 to 1. Description : Detaching EC2 instance: i-93633f9b Details : {"Availability Zone":"us-west-2b","Subnet ID":"subnet-5264e837"} EndTime : Progress : 50 StartTime : 11/20/2015 2:34:59 PM StatusCode : InProgress StatusMessage :

Esempio 2: questo esempio scollega l’istanza specificata dal gruppo Auto Scaling specificato senza diminuire la capacità desiderata. Auto Scaling avvia un’istanza di sostituzione.

Dismount-ASInstance -InstanceId i-7bf746a2 -AutoScalingGroupName my-asg -ShouldDecrementDesiredCapacity $false

Output:

ActivityId : f43a3cd4-d38c-4af7-9fe0-d76ec2307b6d AutoScalingGroupName : my-asg Cause : At 2015-11-20T22:34:59Z instance i-7bf746a2 was detached in response to a user request. Description : Detaching EC2 instance: i-7bf746a2 Details : {"Availability Zone":"us-west-2b","Subnet ID":"subnet-5264e837"} EndTime : Progress : 50 StartTime : 11/20/2015 2:34:59 PM StatusCode : InProgress StatusMessage :
  • Per i dettagli sull'API, vedere DetachInstances in AWS Strumenti per PowerShell Cmdlet Reference (V4).

L’esempio di codice seguente mostra come utilizzare Dismount-ASLoadBalancer.

Strumenti per V4 PowerShell

Esempio 1: questo esempio scollega il bilanciatore del carico specificato dal gruppo Auto Scaling specificato.

Dismount-ASLoadBalancer -LoadBalancerName my-lb -AutoScalingGroupName my-asg
  • Per i dettagli sull'API, vedere DetachLoadBalancers in AWS Strumenti per PowerShell Cmdlet Reference (V4).

L’esempio di codice seguente mostra come utilizzare Enable-ASMetricsCollection.

Strumenti per V4 PowerShell

Esempio 1: questo esempio abilita il monitoraggio delle metriche specificate per il gruppo Auto Scaling specificato.

Enable-ASMetricsCollection -Metric @("GroupMinSize", "GroupMaxSize") -AutoScalingGroupName my-asg -Granularity 1Minute

Esempio 2: questo esempio abilita il monitoraggio di tutte le metriche del gruppo Auto Scaling specificato.

Enable-ASMetricsCollection -AutoScalingGroupName my-asg -Granularity 1Minute

L’esempio di codice seguente mostra come utilizzare Enter-ASStandby.

Strumenti per V4 PowerShell

Esempio 1: questo esempio mette l’istanza specificata in modalità standby e diminuisce la capacità desiderata in modo che Auto Scaling non avvii un’istanza di sostituzione.

Enter-ASStandby -InstanceId i-93633f9b -AutoScalingGroupName my-asg -ShouldDecrementDesiredCapacity $true

Output:

ActivityId : e36a5a54-ced6-4df8-bd19-708e2a59a649 AutoScalingGroupName : my-asg Cause : At 2015-11-22T15:48:06Z instance i-95b8484f was moved to standby in response to a user request, shrinking the capacity from 2 to 1. Description : Moving EC2 instance to Standby: i-95b8484f Details : {"Availability Zone":"us-west-2b","Subnet ID":"subnet-5264e837"} EndTime : Progress : 50 StartTime : 11/22/2015 7:48:06 AM StatusCode : InProgress StatusMessage :

Esempio 2: questo esempio mette l’istanza specificata in modalità standby senza diminuire la capacità desiderata. Auto Scaling avvia un’istanza di sostituzione.

Enter-ASStandby -InstanceId i-93633f9b -AutoScalingGroupName my-asg -ShouldDecrementDesiredCapacity $false

Output:

ActivityId : e36a5a54-ced6-4df8-bd19-708e2a59a649 AutoScalingGroupName : my-asg Cause : At 2015-11-22T15:48:06Z instance i-95b8484f was moved to standby in response to a user request. Description : Moving EC2 instance to Standby: i-95b8484f Details : {"Availability Zone":"us-west-2b","Subnet ID":"subnet-5264e837"} EndTime : Progress : 50 StartTime : 11/22/2015 7:48:06 AM StatusCode : InProgress StatusMessage :
  • Per i dettagli sull'API, vedere EnterStandby in AWS Strumenti per PowerShell Cmdlet Reference (V4).

L’esempio di codice seguente mostra come utilizzare Exit-ASStandby.

Strumenti per V4 PowerShell

Esempio 1: questo esempio imposta l’uscita dell’istanza specificata dalla modalità standby.

Exit-ASStandby -InstanceId i-93633f9b -AutoScalingGroupName my-asg

Output:

ActivityId : 1833d3e8-e32f-454e-b731-0670ad4c6934 AutoScalingGroupName : my-asg Cause : At 2015-11-22T15:51:21Z instance i-95b8484f was moved out of standby in response to a user request, increasing the capacity from 1 to 2. Description : Moving EC2 instance out of Standby: i-95b8484f Details : {"Availability Zone":"us-west-2b","Subnet ID":"subnet-5264e837"} EndTime : Progress : 30 StartTime : 11/22/2015 7:51:21 AM StatusCode : PreInService StatusMessage :
  • Per i dettagli sull'API, vedere ExitStandby in AWS Strumenti per PowerShell Cmdlet Reference (V4).

L’esempio di codice seguente mostra come utilizzare Get-ASAccountLimit.

Strumenti per V4 PowerShell

Esempio 1: questo esempio descrive i limiti delle risorse di Auto Scaling per il tuo AWS account.

Get-ASAccountLimit

Output:

MaxNumberOfAutoScalingGroups : 20 MaxNumberOfLaunchConfigurations : 100

L’esempio di codice seguente mostra come utilizzare Get-ASAdjustmentType.

Strumenti per V4 PowerShell

Esempio 1: questo esempio descrive i tipi di regolazione supportati da Auto Scaling.

Get-ASAdjustmentType

Output:

Type ---- ChangeInCapacity ExactCapacity PercentChangeInCapacity

L’esempio di codice seguente mostra come utilizzare Get-ASAutoScalingGroup.

Strumenti per V4 PowerShell

Esempio 1: questo esempio elenca i nomi dei gruppi Auto Scaling.

Get-ASAutoScalingGroup | format-table -property AutoScalingGroupName

Output:

AutoScalingGroupName -------------------- my-asg-1 my-asg-2 my-asg-3 my-asg-4 my-asg-5 my-asg-6

Esempio 2: questo esempio descrive il gruppo Auto Scaling specificato.

Get-ASAutoScalingGroup -AutoScalingGroupName my-asg-1

Output:

AutoScalingGroupARN : arn:aws:autoscaling:us-west-2:123456789012:autoScalingGroup:930d940e-891e-4781-a11a-7b0acd480 f03:autoScalingGroupName/my-asg-1 AutoScalingGroupName : my-asg-1 AvailabilityZones : {us-west-2b, us-west-2a} CreatedTime : 3/1/2015 9:05:31 AM DefaultCooldown : 300 DesiredCapacity : 2 EnabledMetrics : {} HealthCheckGracePeriod : 300 HealthCheckType : EC2 Instances : {my-lc} LaunchConfigurationName : my-lc LoadBalancerNames : {} MaxSize : 0 MinSize : 0 PlacementGroup : Status : SuspendedProcesses : {} Tags : {} TerminationPolicies : {Default} VPCZoneIdentifier : subnet-e4f33493,subnet-5264e837

Esempio 3: questo esempio descrive i due gruppi Auto Scaling specificati.

Get-ASAutoScalingGroup -AutoScalingGroupName @("my-asg-1", "my-asg-2")

Esempio 4: questo esempio descrive le istanze Auto Scaling per il gruppo Auto Scaling specificato.

(Get-ASAutoScalingGroup -AutoScalingGroupName my-asg-1).Instances

Esempio 5: questo esempio descrive tutti i gruppi Auto Scaling.

Get-ASAutoScalingGroup

Esempio 6: questo LaunchTemplate esempio descrive il gruppo Auto Scaling specificato. Questo esempio presuppone che l’opzione “Opzioni di acquisto delle istanze” sia impostata su “Aderisci al modello di avvio”. Nel caso in cui questa opzione sia impostata su «Combina opzioni di acquisto e tipi di istanza», è LaunchTemplate possibile accedervi utilizzando la proprietà MixedInstancesPolicy.LaunchTemplate "».

(Get-ASAutoScalingGroup -AutoScalingGroupName my-ag-1).LaunchTemplate

Output:

LaunchTemplateId LaunchTemplateName Version ---------------- ------------------ ------- lt-06095fd619cb40371 test-launch-template $Default

L’esempio di codice seguente mostra come utilizzare Get-ASAutoScalingInstance.

Strumenti per V4 PowerShell

Esempio 1: questo esempio elenca gli ID delle istanze Auto Scaling.

Get-ASAutoScalingInstance | format-table -property InstanceId

Output:

InstanceId ---------- i-12345678 i-87654321 i-abcd1234

Esempio 2: questo esempio descrive l’istanza Auto Scaling specificata.

Get-ASAutoScalingInstance -InstanceId i-12345678

Output:

AutoScalingGroupName : my-asg AvailabilityZone : us-west-2b HealthStatus : HEALTHY InstanceId : i-12345678 LaunchConfigurationName : my-lc LifecycleState : InService

Esempio 3: questo esempio descrive le due istanze Auto Scaling specificate.

Get-ASAutoScalingInstance -InstanceId @("i-12345678", "i-87654321")

Esempio 4: questo esempio descrive le istanze Auto Scaling per il gruppo Auto Scaling specificato.

(Get-ASAutoScalingGroup -AutoScalingGroupName my-asg).Instances | Get-ASAutoScalingInstance

Esempio 5: questo esempio descrive tutte le istanze Auto Scaling.

Get-ASAutoScalingInstance

L’esempio di codice seguente mostra come utilizzare Get-ASAutoScalingNotificationType.

Strumenti per V4 PowerShell

Esempio 1: questo esempio elenca i tipi di notifica supportati da Auto Scaling.

Get-ASAutoScalingNotificationType

Output:

autoscaling:EC2_INSTANCE_LAUNCH autoscaling:EC2_INSTANCE_LAUNCH_ERROR autoscaling:EC2_INSTANCE_TERMINATE autoscaling:EC2_INSTANCE_TERMINATE_ERROR autoscaling:TEST_NOTIFICATION

L’esempio di codice seguente mostra come utilizzare Get-ASLaunchConfiguration.

Strumenti per V4 PowerShell

Esempio 1: questo esempio elenca i nomi delle configurazioni di avvio.

Get-ASLaunchConfiguration | format-table -property LaunchConfigurationName

Output:

LaunchConfigurationName ----------------------- my-lc-1 my-lc-2 my-lc-3 my-lc-4 my-lc-5

Esempio 2: questo esempio descrive la configurazione di avvio specificata.

Get-ASLaunchConfiguration -LaunchConfigurationName my-lc-1

Output:

AssociatePublicIpAddress : True BlockDeviceMappings : {/dev/xvda} ClassicLinkVPCId : ClassicLinkVPCSecurityGroups : {} CreatedTime : 12/12/2014 3:22:08 PM EbsOptimized : False IamInstanceProfile : ImageId : ami-043a5034 InstanceMonitoring : Amazon.AutoScaling.Model.InstanceMonitoring InstanceType : t2.micro KernelId : KeyName : LaunchConfigurationARN : arn:aws:autoscaling:us-west-2:123456789012:launchConfiguration:7e5f31e4-693b-4604-9322- e6f68d7fafad:launchConfigurationName/my-lc-1 LaunchConfigurationName : my-lc-1 PlacementTenancy : RamdiskId : SecurityGroups : {sg-67ef0308} SpotPrice : UserData :

Esempio 3: questo esempio descrive le due configurazioni di avvio specificate.

Get-ASLaunchConfiguration -LaunchConfigurationName @("my-lc-1", "my-lc-2")

Esempio 4: questo esempio descrive tutte le configurazioni di avvio.

Get-ASLaunchConfiguration

L’esempio di codice seguente mostra come utilizzare Get-ASLifecycleHook.

Strumenti per V4 PowerShell

Esempio 1: questo esempio descrive l’hook del ciclo di vita specificato.

Get-ASLifecycleHook -AutoScalingGroupName my-asg -LifecycleHookName myLifecycleHook

Output:

AutoScalingGroupName : my-asg DefaultResult : ABANDON GlobalTimeout : 172800 HeartbeatTimeout : 3600 LifecycleHookName : myLifecycleHook LifecycleTransition : auto-scaling:EC2_INSTANCE_LAUNCHING NotificationMetadata : NotificationTargetARN : arn:aws:sns:us-west-2:123456789012:my-topic RoleARN : arn:aws:iam::123456789012:role/my-iam-role

Esempio 2: questo esempio descrive tutti gli hook del ciclo di vita del gruppo Auto Scaling specificato.

Get-ASLifecycleHook -AutoScalingGroupName my-asg

Esempio 3: questo esempio descrive tutti gli hook del ciclo di vita di tutti i gruppi Auto Scaling.

Get-ASLifecycleHook

L’esempio di codice seguente mostra come utilizzare Get-ASLifecycleHookType.

Strumenti per V4 PowerShell

Esempio 1: questo esempio elenca i tipi di hook del ciclo di vita supportati da Auto Scaling.

Get-ASLifecycleHookType

Output:

autoscaling:EC2_INSTANCE_LAUNCHING auto-scaling:EC2_INSTANCE_TERMINATING

L’esempio di codice seguente mostra come utilizzare Get-ASLoadBalancer.

Strumenti per V4 PowerShell

Esempio 1: questo esempio descrive i bilanciatori del carico del gruppo Auto Scaling specificato.

Get-ASLoadBalancer -AutoScalingGroupName my-asg

Output:

LoadBalancerName State ---------------- ----- my-lb Added

L’esempio di codice seguente mostra come utilizzare Get-ASMetricCollectionType.

Strumenti per V4 PowerShell

Esempio 1: questo esempio elenca i tipi di raccolta delle metriche supportati da Auto Scaling.

(Get-ASMetricCollectionType).Metrics

Output:

Metric ------ GroupMinSize GroupMaxSize GroupDesiredCapacity GroupInServiceInstances GroupPendingInstances GroupTerminatingInstances GroupStandbyInstances GroupTotalInstances

Esempio 2: questo esempio elenca le granularità corrispondenti.

(Get-ASMetricCollectionType).Granularities

Output:

Granularity ----------- 1Minute

L’esempio di codice seguente mostra come utilizzare Get-ASNotificationConfiguration.

Strumenti per V4 PowerShell

Esempio 1: questo esempio descrive le azioni di notifica associate al gruppo Auto Scaling specificato.

Get-ASNotificationConfiguration -AutoScalingGroupName my-asg | format-list

Output:

AutoScalingGroupName : my-asg NotificationType : auto-scaling:EC2_INSTANCE_LAUNCH TopicARN : arn:aws:sns:us-west-2:123456789012:my-topic AutoScalingGroupName : my-asg NotificationType : auto-scaling:EC2_INSTANCE_TERMINATE TopicARN : arn:aws:sns:us-west-2:123456789012:my-topic

Esempio 2: questo esempio descrive le azioni di notifica associate a tutti i gruppi Auto Scaling.

Get-ASNotificationConfiguration

L’esempio di codice seguente mostra come utilizzare Get-ASPolicy.

Strumenti per V4 PowerShell

Esempio 1: questo esempio descrive tutte le policy del gruppo Auto Scaling specificato.

Get-ASPolicy -AutoScalingGroupName my-asg

Output:

AdjustmentType : ChangeInCapacity Alarms : {} AutoScalingGroupName : my-asg Cooldown : 0 EstimatedInstanceWarmup : 0 MetricAggregationType : MinAdjustmentMagnitude : 0 MinAdjustmentStep : 0 PolicyARN : arn:aws:auto-scaling:us-west-2:123456789012:scalingPolicy:aa3836ab-5462-42c7-adab-e1d769fc24ef :autoScalingGroupName/my-asg:policyName/myScaleInPolicy PolicyName : myScaleInPolicy PolicyType : SimpleScaling ScalingAdjustment : -1 StepAdjustments : {}

Esempio 2: questo esempio descrive tutte le policy specificate per il gruppo Auto Scaling specificato.

Get-ASPolicy -AutoScalingGroupName my-asg -PolicyName @("myScaleOutPolicy", "myScaleInPolicy")

Esempio 3: questo esempio descrive tutte le policy per tutti i gruppi Auto Scaling.

Get-ASPolicy
  • Per i dettagli sull'API, vedere DescribePolicies in AWS Strumenti per PowerShell Cmdlet Reference (V4).

L’esempio di codice seguente mostra come utilizzare Get-ASScalingActivity.

Strumenti per V4 PowerShell

Esempio 1: questo esempio descrive le attività di dimensionamento nelle ultime sei settimane per il gruppo Auto Scaling specificato.

Get-ASScalingActivity -AutoScalingGroupName my-asg

Output:

ActivityId : 063308ae-aa22-4a9b-94f4-9fae4EXAMPLE AutoScalingGroupName : my-asg Cause : At 2015-11-22T15:45:16Z a user request explicitly set group desired capacity changing the desired capacity from 1 to 2. At 2015-11-22T15:45:34Z an instance was started in response to a difference between desired and actual capacity, increasing the capacity from 1 to 2. Description : Launching a new EC2 instance: i-26e715fc Details : {"Availability Zone":"us-west-2b","Subnet ID":"subnet-5264e837"} EndTime : 11/22/2015 7:46:09 AM Progress : 100 StartTime : 11/22/2015 7:45:35 AM StatusCode : Successful StatusMessage : ActivityId : ce719997-086d-4c73-a2f1-ab703EXAMPLE AutoScalingGroupName : my-asg Cause : At 2015-11-20T22:57:53Z a user request created an AutoScalingGroup changing the desired capacity from 0 to 1. At 2015-11-20T22:57:58Z an instance was started in response to a difference betwe en desired and actual capacity, increasing the capacity from 0 to 1. Description : Launching a new EC2 instance: i-93633f9b Details : {"Availability Zone":"us-west-2b","Subnet ID":"subnet-5264e837"} EndTime : 11/20/2015 2:58:32 PM Progress : 100 StartTime : 11/20/2015 2:57:59 PM StatusCode : Successful StatusMessage :

Esempio 2: questo esempio descrive l’attività di dimensionamento specificata.

Get-ASScalingActivity -ActivityId "063308ae-aa22-4a9b-94f4-9fae4EXAMPLE"

Esempio 3: questo esempio descrive le attività di dimensionamento nelle ultime sei settimane per tutti i gruppi Auto Scaling.

Get-ASScalingActivity

L’esempio di codice seguente mostra come utilizzare Get-ASScalingProcessType.

Strumenti per V4 PowerShell

Esempio 1: questo esempio elenca i tipi di processo supportati da Auto Scaling.

Get-ASScalingProcessType

Output:

ProcessName ----------- AZRebalance AddToLoadBalancer AlarmNotification HealthCheck Launch ReplaceUnhealthy ScheduledActions Terminate

L’esempio di codice seguente mostra come utilizzare Get-ASScheduledAction.

Strumenti per V4 PowerShell

Esempio 1: questo esempio descrive le azioni di dimensionamento pianificate del gruppo Auto Scaling specificato.

Get-ASScheduledAction -AutoScalingGroupName my-asg

Output:

AutoScalingGroupName : my-asg DesiredCapacity : 10 EndTime : MaxSize : MinSize : Recurrence : ScheduledActionARN : arn:aws:autoscaling:us-west-2:123456789012:scheduledUpdateGroupAction:8a4c5f24-6ec6-4306-a2dd-f7 2c3af3a4d6:autoScalingGroupName/my-asg:scheduledActionName/myScheduledAction ScheduledActionName : myScheduledAction StartTime : 11/30/2015 8:00:00 AM Time : 11/30/2015 8:00:00 AM

Esempio 2: questo esempio descrive le azioni di dimensionamento pianificate specificate.

Get-ASScheduledAction -ScheduledActionName @("myScheduledScaleOut", "myScheduledScaleIn")

Esempio 3: questo esempio descrive le azioni di dimensionamento pianificate che iniziano entro l’ora specificata.

Get-ASScheduledAction -StartTime "2015-12-01T08:00:00Z"

Esempio 4: questo esempio descrive le azioni di dimensionamento pianificate che terminano entro l’ora specificata.

Get-ASScheduledAction -EndTime "2015-12-30T08:00:00Z"

Esempio 5: questo esempio descrive le azioni di dimensionamento pianificate di tutti i gruppi Auto Scaling specificati.

Get-ASScheduledAction

L’esempio di codice seguente mostra come utilizzare Get-ASTag.

Strumenti per V4 PowerShell

Esempio 1: questo esempio descrive i tag con un valore di chiave “myTag” o “myTag2”. I valori possibili per il nome del filtro sono “auto-scaling-group”, “key”, “value” e “propagate-at-launch”. La sintassi utilizzata da questo esempio richiede la PowerShell versione 3 o successiva.

Get-ASTag -Filter @( @{ Name="key"; Values=@("myTag", "myTag2") } )

Output:

Key : myTag2 PropagateAtLaunch : True ResourceId : my-asg ResourceType : auto-scaling-group Value : myTagValue2 Key : myTag PropagateAtLaunch : True ResourceId : my-asg ResourceType : auto-scaling-group Value : myTagValue

Esempio 2: con PowerShell la versione 2, è necessario utilizzare New-Object per creare il filtro per il parametro Filter.

$keys = New-Object string[] 2 $keys[0] = "myTag" $keys[1] = "myTag2" $filter = New-Object Amazon.AutoScaling.Model.Filter $filter.Name = "key" $filter.Values = $keys Get-ASTag -Filter @( $filter )

Esempio 3: questo esempio descrive tutti i tag per tutti i gruppi Auto Scaling.

Get-ASTag
  • Per i dettagli sull'API, vedere DescribeTags in AWS Strumenti per PowerShell Cmdlet Reference (V4).

L’esempio di codice seguente mostra come utilizzare Get-ASTerminationPolicyType.

Strumenti per V4 PowerShell

Esempio 1: questo esempio elenca le policy di terminazione supportate da Auto Scaling.

Get-ASTerminationPolicyType

Output:

ClosestToNextInstanceHour Default NewestInstance OldestInstance OldestLaunchConfiguration

L’esempio di codice seguente mostra come utilizzare Mount-ASInstance.

Strumenti per V4 PowerShell

Esempio 1: questo esempio collega l’istanza specificata al gruppo Auto Scaling specificato. Auto Scaling aumenta automaticamente la capacità desiderata del gruppo Auto Scaling.

Mount-ASInstance -InstanceId i-93633f9b -AutoScalingGroupName my-asg
  • Per i dettagli sull'API, vedere AttachInstances in AWS Strumenti per PowerShell Cmdlet Reference (V4).

L’esempio di codice seguente mostra come utilizzare New-ASAutoScalingGroup.

Strumenti per V4 PowerShell

Esempio 1: questo esempio crea un gruppo Auto Scaling con il nome e gli attributi specificati. La capacità predefinita desiderata è la dimensione minima. Pertanto, questo gruppo Auto Scaling avvia due istanze, una in ciascuna delle due zone di disponibilità specificate.

New-ASAutoScalingGroup -AutoScalingGroupName my-asg -LaunchConfigurationName my-lc -MinSize 2 -MaxSize 6 -AvailabilityZone @("us-west-2a", "us-west-2b")

L’esempio di codice seguente mostra come utilizzare New-ASLaunchConfiguration.

Strumenti per V4 PowerShell

Esempio 1: questo esempio crea una configurazione di avvio denominata “my-lc”. Le istanze EC2 lanciate dai gruppi Auto Scaling che utilizzano questa configurazione di avvio utilizzano il tipo di istanza, l’AMI, il gruppo di sicurezza e il ruolo IAM specificati.

New-ASLaunchConfiguration -LaunchConfigurationName my-lc -InstanceType "m3.medium" -ImageId "ami-12345678" -SecurityGroup "sg-12345678" -IamInstanceProfile "myIamRole"

L’esempio di codice seguente mostra come utilizzare Remove-ASAutoScalingGroup.

Strumenti per V4 PowerShell

Esempio 1: questo esempio elimina il gruppo Auto Scaling specificato se non include istanze in esecuzione. Prima di procedere con l’operazione, viene richiesta una conferma.

Remove-ASAutoScalingGroup -AutoScalingGroupName my-asg

Output:

Confirm Are you sure you want to perform this action? Performing operation "Remove-ASAutoScalingGroup (DeleteAutoScalingGroup)" on Target "my-asg". [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"):

Esempio 2: se si specifica il parametro Force, non viene richiesta la conferma per continuare l’operazione.

Remove-ASAutoScalingGroup -AutoScalingGroupName my-asg -Force

Esempio 3: questo esempio elimina il gruppo Auto Scaling specificato e termina qualsiasi istanza in esecuzione in esso contenuta.

Remove-ASAutoScalingGroup -AutoScalingGroupName my-asg -ForceDelete $true -Force

L’esempio di codice seguente mostra come utilizzare Remove-ASLaunchConfiguration.

Strumenti per V4 PowerShell

Esempio 1: questo esempio elimina la configurazione di avvio specificata se non è collegata a un gruppo Auto Scaling. Prima di procedere con l’operazione, viene richiesta una conferma.

Remove-ASLaunchConfiguration -LaunchConfigurationName my-lc

Output:

Confirm Are you sure you want to perform this action? Performing operation "Remove-ASLaunchConfiguration (DeleteLaunchConfiguration)" on Target "my-lc". [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"):

Esempio 2: se si specifica il parametro Force, non viene richiesta la conferma per continuare l’operazione.

Remove-ASLaunchConfiguration -LaunchConfigurationName my-lc -Force

L’esempio di codice seguente mostra come utilizzare Remove-ASLifecycleHook.

Strumenti per V4 PowerShell

Esempio 1: questo esempio elimina l’hook del ciclo di vita specificato del gruppo Auto Scaling specificato. Prima di procedere con l’operazione, viene richiesta una conferma.

Remove-ASLifecycleHook -AutoScalingGroupName my-asg -LifecycleHookName myLifecycleHook

Output:

Confirm Are you sure you want to perform this action? Performing operation "Remove-ASLifecycleHook (DeleteLifecycleHook)" on Target "myLifecycleHook". [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"):

Esempio 2: se si specifica il parametro Force, non viene richiesta la conferma per continuare l’operazione.

Remove-ASLifecycleHook -AutoScalingGroupName my-asg -LifecycleHookName myLifecycleHook -Force
  • Per i dettagli sull'API, vedere DeleteLifecycleHook in AWS Strumenti per PowerShell Cmdlet Reference (V4).

L’esempio di codice seguente mostra come utilizzare Remove-ASNotificationConfiguration.

Strumenti per V4 PowerShell

Esempio 1: questo esempio elimina l’azione di notifica specificata. Prima di procedere con l’operazione, viene richiesta una conferma.

Remove-ASNotificationConfiguration -AutoScalingGroupName my-asg -TopicARN "arn:aws:sns:us-west-2:123456789012:my-topic"

Output:

Confirm Are you sure you want to perform this action? Performing operation "Remove-ASNotificationConfiguration (DeleteNotificationConfiguration)" on Target "arn:aws:sns:us-west-2:123456789012:my-topic". [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"):

Esempio 2: se si specifica il parametro Force, non viene richiesta la conferma per continuare l’operazione.

Remove-ASNotificationConfiguration -AutoScalingGroupName my-asg -TopicARN "arn:aws:sns:us-west-2:123456789012:my-topic" -Force

L’esempio di codice seguente mostra come utilizzare Remove-ASPolicy.

Strumenti per V4 PowerShell

Esempio 1: questo esempio elimina la policy specificata del gruppo Auto Scaling specificato. Prima di procedere con l’operazione, viene richiesta una conferma.

Remove-ASPolicy -AutoScalingGroupName my-asg -PolicyName myScaleInPolicy

Output:

Confirm Are you sure you want to perform this action? Performing operation "Remove-ASPolicy (DeletePolicy)" on Target "myScaleInPolicy". [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"):

Esempio 2: se si specifica il parametro Force, non viene richiesta la conferma per continuare l’operazione.

Remove-ASPolicy -AutoScalingGroupName my-asg -PolicyName myScaleInPolicy -Force
  • Per i dettagli sull'API, vedere DeletePolicy in AWS Strumenti per PowerShell Cmdlet Reference (V4).

L’esempio di codice seguente mostra come utilizzare Remove-ASScheduledAction.

Strumenti per V4 PowerShell

Esempio 1: questo esempio elimina l’azione pianificata specificata per il gruppo Auto Scaling specificato. Prima di procedere con l’operazione, viene richiesta una conferma.

Remove-ASScheduledAction -AutoScalingGroupName my-asg -ScheduledAction "myScheduledAction"

Output:

Confirm Are you sure you want to perform this action? Performing operation "Remove-ASScheduledAction (DeleteScheduledAction)" on Target "myScheduledAction". [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"):

Esempio 2: se si specifica il parametro Force, non viene richiesta la conferma per continuare l’operazione.

Remove-ASScheduledAction -AutoScalingGroupName my-asg -ScheduledAction "myScheduledAction" -Force

L’esempio di codice seguente mostra come utilizzare Remove-ASTag.

Strumenti per V4 PowerShell

Esempio 1: questo esempio rimuove il tag specificato dal gruppo Auto Scaling specificato. Prima di procedere con l’operazione, viene richiesta una conferma. La sintassi utilizzata da questo esempio richiede la PowerShell versione 3 o successiva.

Remove-ASTag -Tag @( @{ResourceType="auto-scaling-group"; ResourceId="my-asg"; Key="myTag" } )

Output:

Confirm Are you sure you want to perform this action? Performing the operation "Remove-ASTag (DeleteTags)" on target "Amazon.AutoScaling.Model.Tag". [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"):

Esempio 2: se si specifica il parametro Force, non viene richiesta la conferma per continuare l’operazione.

Remove-ASTag -Tag @( @{ResourceType="auto-scaling-group"; ResourceId="my-asg"; Key="myTag" } ) -Force

Esempio 3: con la versione 2 di Powershell, è necessario utilizzare New-Object per creare il tag per il parametro Tag.

$tag = New-Object Amazon.AutoScaling.Model.Tag $tag.ResourceType = "auto-scaling-group" $tag.ResourceId = "my-asg" $tag.Key = "myTag" Remove-ASTag -Tag $tag -Force
  • Per i dettagli sull'API, vedere DeleteTags in AWS Strumenti per PowerShell Cmdlet Reference (V4).

L’esempio di codice seguente mostra come utilizzare Resume-ASProcess.

Strumenti per V4 PowerShell

Esempio 1: questo esempio riprende il processo di dimensionamento automatico specificato per il gruppo Auto Scaling specificato.

Resume-ASProcess -AutoScalingGroupName my-asg -ScalingProcess "AlarmNotification"

Esempio 2: questo esempio riprende i processi di dimensionamento automatico specificati per il gruppo Auto Scaling specificato.

Resume-ASProcess -AutoScalingGroupName my-asg
  • Per i dettagli sull'API, vedere ResumeProcesses in AWS Strumenti per PowerShell Cmdlet Reference (V4).

L’esempio di codice seguente mostra come utilizzare Set-ASDesiredCapacity.

Strumenti per V4 PowerShell

Esempio 1: questo esempio imposta le dimensioni del gruppo Auto Scaling specificato.

Set-ASDesiredCapacity -AutoScalingGroupName my-asg -DesiredCapacity 2

Esempio 2: questo esempio imposta la dimensione del gruppo Auto Scaling specificato e attende il raggiungimento del tempo di raffreddamento prima di passare alla nuova dimensione.

Set-ASDesiredCapacity -AutoScalingGroupName my-asg -DesiredCapacity 2 -HonorCooldown $true
  • Per i dettagli sull'API, vedere SetDesiredCapacity in AWS Strumenti per PowerShell Cmdlet Reference (V4).

L’esempio di codice seguente mostra come utilizzare Set-ASInstanceHealth.

Strumenti per V4 PowerShell

Esempio 1: questo esempio imposta lo stato dell’istanza specificata su “Unhealthy” (Non integro), eliminandola dal servizio. Auto Scaling termina e sostituisce l’istanza.

Set-ASInstanceHealth -HealthStatus Unhealthy -InstanceId i-93633f9b

Esempio 2: questo esempio imposta lo stato dell’istanza specificata su “Unhealthy” (Non integro), mantenendola nel servizio. L’eventuale periodo di tolleranza definito per il controllo dell’integrità per il gruppo Auto Scaling non viene rispettato.

Set-ASInstanceHealth -HealthStatus Healthy -InstanceId i-93633f9b -ShouldRespectGracePeriod $false
  • Per i dettagli sull'API, vedere SetInstanceHealth in AWS Strumenti per PowerShell Cmdlet Reference (V4).

L’esempio di codice seguente mostra come utilizzare Set-ASInstanceProtection.

Strumenti per V4 PowerShell

Esempio 1: questo esempio abilita la protezione dell’istanza specificata.

Set-ASInstanceProtection -AutoScalingGroupName my-asg -InstanceId i-12345678 -ProtectedFromScaleIn $true

Esempio 2: questo esempio disabilita la protezione dell’istanza specificata.

Set-ASInstanceProtection -AutoScalingGroupName my-asg -InstanceId i-12345678 -ProtectedFromScaleIn $false

L’esempio di codice seguente mostra come utilizzare Set-ASTag.

Strumenti per V4 PowerShell

Esempio 1: questo esempio aggiunge un unico tag al gruppo Auto Scaling specificato. La chiave del tag è «myTag» e il valore del tag è «TagValuemy». Auto Scaling propaga questo tag alle istanze EC2 successive avviate dal gruppo Auto Scaling. La sintassi utilizzata in questo esempio richiede la PowerShell versione 3 o successiva.

Set-ASTag -Tag @( @{ResourceType="auto-scaling-group"; ResourceId="my-asg"; Key="myTag"; Value="myTagValue"; PropagateAtLaunch=$true} )

Esempio 2: con PowerShell la versione 2, è necessario New-Object utilizzare per creare il tag per il parametro Tag.

$tag = New-Object Amazon.AutoScaling.Model.Tag $tag.ResourceType = "auto-scaling-group" $tag.ResourceId = "my-asg" $tag.Key = "myTag" $tag.Value = "myTagValue" $tag.PropagateAtLaunch = $true Set-ASTag -Tag $tag
  • Per i dettagli sull'API, vedere CreateOrUpdateTags in AWS Strumenti per PowerShell Cmdlet Reference (V4).

L’esempio di codice seguente mostra come utilizzare Start-ASPolicy.

Strumenti per V4 PowerShell

Esempio 1: questo esempio esegue la policy specificata per il gruppo Auto Scaling specificato.

Start-ASPolicy -AutoScalingGroupName my-asg -PolicyName "myScaleInPolicy"

Esempio 2: questo esempio esegue la policy specificata per il gruppo Auto Scaling specificato dopo aver atteso il raggiungimento del tempo di raffreddamento.

Start-ASPolicy -AutoScalingGroupName my-asg -PolicyName "myScaleInPolicy" -HonorCooldown $true
  • Per i dettagli sull'API, vedere ExecutePolicy in AWS Strumenti per PowerShell Cmdlet Reference (V4).

L’esempio di codice seguente mostra come utilizzare Stop-ASInstanceInAutoScalingGroup.

Strumenti per V4 PowerShell

Esempio 1: questo esempio termina l’istanza specificata e diminuisce la capacità desiderata del relativo gruppo Auto Scaling in modo che Auto Scaling non avvii un’istanza di sostituzione.

Stop-ASInstanceInAutoScalingGroup -InstanceId i-93633f9b -ShouldDecrementDesiredCapacity $true

Output:

ActivityId : 2e40d9bd-1902-444c-abf3-6ea0002efdc5 AutoScalingGroupName : Cause : At 2015-11-22T16:09:03Z instance i-93633f9b was taken out of service in response to a user request, shrinking the capacity from 2 to 1. Description : Terminating EC2 instance: i-93633f9b Details : {"Availability Zone":"us-west-2b","Subnet ID":"subnet-5264e837"} EndTime : Progress : 0 StartTime : 11/22/2015 8:09:03 AM StatusCode : InProgress StatusMessage :

Esempio 2: questo esempio termina l’istanza specificata senza diminuire la capacità desiderata del relativo gruppo Auto Scaling. Auto Scaling avvia un’istanza di sostituzione.

Stop-ASInstanceInAutoScalingGroup -InstanceId i-93633f9b -ShouldDecrementDesiredCapacity $false

Output:

ActivityId : 2e40d9bd-1902-444c-abf3-6ea0002efdc5 AutoScalingGroupName : Cause : At 2015-11-22T16:09:03Z instance i-93633f9b was taken out of service in response to a user request. Description : Terminating EC2 instance: i-93633f9b Details : {"Availability Zone":"us-west-2b","Subnet ID":"subnet-5264e837"} EndTime : Progress : 0 StartTime : 11/22/2015 8:09:03 AM StatusCode : InProgress StatusMessage :

L’esempio di codice seguente mostra come utilizzare Suspend-ASProcess.

Strumenti per V4 PowerShell

Esempio 1: questo esempio sospende il processo di dimensionamento automatico specificato per il gruppo Auto Scaling specificato.

Suspend-ASProcess -AutoScalingGroupName my-asg -ScalingProcess "AlarmNotification"

Esempio 2: questo esempio riprende tutti i processi di dimensionamento automatico specificati per il gruppo Auto Scaling specificato.

Suspend-ASProcess -AutoScalingGroupName my-asg
  • Per i dettagli sull'API, vedere SuspendProcesses in AWS Strumenti per PowerShell Cmdlet Reference (V4).

L’esempio di codice seguente mostra come utilizzare Update-ASAutoScalingGroup.

Strumenti per V4 PowerShell

Esempio 1: questo esempio imposta le dimensioni minima e massima del gruppo Auto Scaling specificato.

Update-ASAutoScalingGroup -AutoScalingGroupName my-asg -MaxSize 5 -MinSize 1

Esempio 2: questo esempio aggiorna il tempo di raffreddamento predefinito del gruppo Auto Scaling specificato.

Update-ASAutoScalingGroup -AutoScalingGroupName my-asg -DefaultCooldown 10

Esempio 3: questo esempio aggiorna le zone di disponibilità del gruppo Auto Scaling specificato.

Update-ASAutoScalingGroup -AutoScalingGroupName my-asg -AvailabilityZone @("us-west-2a", "us-west-2b")

Esempio 4: questo esempio aggiorna il gruppo Auto Scaling specificato in modo da utilizzare i controlli dell’integrità di Elastic Load Balancing.

Update-ASAutoScalingGroup -AutoScalingGroupName my-asg -HealthCheckType ELB -HealthCheckGracePeriod 60

L’esempio di codice seguente mostra come utilizzare Write-ASLifecycleActionHeartbeat.

Strumenti per V4 PowerShell

Esempio 1: questo esempio registra un heartbeat per l’azione del ciclo di vita specificata. In questo modo l’istanza rimane in sospeso fino al completamento dell’azione personalizzata.

Write-ASLifecycleActionHeartbeat -AutoScalingGroupName my-asg -LifecycleHookName myLifecycleHook -LifecycleActionToken bcd2f1b8-9a78-44d3-8a7a-4dd07d7cf635

L’esempio di codice seguente mostra come utilizzare Write-ASLifecycleHook.

Strumenti per V4 PowerShell

Esempio 1: questo esempio aggiunge l’hook del ciclo di vita specificato al gruppo Auto Scaling specificato.

Write-ASLifecycleHook -AutoScalingGroupName my-asg -LifecycleHookName "myLifecycleHook" -LifecycleTransition "autoscaling:EC2_INSTANCE_LAUNCHING" -NotificationTargetARN "arn:aws:sns:us-west-2:123456789012:my-sns-topic" -RoleARN "arn:aws:iam::123456789012:role/my-iam-role"
  • Per i dettagli sull'API, vedere PutLifecycleHook in AWS Strumenti per PowerShell Cmdlet Reference (V4).

L’esempio di codice seguente mostra come utilizzare Write-ASNotificationConfiguration.

Strumenti per V4 PowerShell

Esempio 1: questo esempio configura il gruppo Auto Scaling specificato per inviare una notifica all’argomento SNS specificato quando avvia istanze EC2.

Write-ASNotificationConfiguration -AutoScalingGroupName my-asg -NotificationType "autoscaling:EC2_INSTANCE_LAUNCH" -TopicARN "arn:aws:sns:us-west-2:123456789012:my-topic"

Esempio 2: questo esempio configura il gruppo Auto Scaling specificato per inviare una notifica all’argomento SNS specificato quando avvia o termina istanze EC2.

Write-ASNotificationConfiguration -AutoScalingGroupName my-asg -NotificationType @("autoscaling:EC2_INSTANCE_LAUNCH", "autoscaling:EC2_INSTANCE_TERMINATE") -TopicARN "arn:aws:sns:us-west-2:123456789012:my-topic"

L’esempio di codice seguente mostra come utilizzare Write-ASScalingPolicy.

Strumenti per V4 PowerShell

Esempio 1: questo esempio aggiunge la policy specificata al gruppo Auto Scaling specificato. Il tipo di regolazione specificato determina come interpretare il ScalingAdjustment parametro. Con 'ChangeInCapacity', un valore positivo aumenta la capacità del numero specificato di istanze e un valore negativo diminuisce la capacità del numero specificato di istanze.

Write-ASScalingPolicy -AutoScalingGroupName my-asg -AdjustmentType "ChangeInCapacity" -PolicyName "myScaleInPolicy" -ScalingAdjustment -1

Output:

arn:aws:autoscaling:us-west-2:123456789012:scalingPolicy:aa3836ab-5462-42c7-adab-e1d769fc24ef:autoScalingGroupName/my-asg :policyName/myScaleInPolicy
  • Per i dettagli sull'API, vedere PutScalingPolicy in AWS Strumenti per PowerShell Cmdlet Reference (V4).

L’esempio di codice seguente mostra come utilizzare Write-ASScheduledUpdateGroupAction.

Strumenti per V4 PowerShell

Esempio 1: questo esempio crea o aggiorna un’azione pianificata una tantum per modificare la capacità desiderata all’ora di inizio specificata.

Write-ASScheduledUpdateGroupAction -AutoScalingGroupName my-asg -ScheduledActionName "myScheduledAction" -StartTime "2015-12-01T00:00:00Z" -DesiredCapacity 10