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 Piani di Auto Scaling che utilizzano AWS CLI
I seguenti esempi di codice mostrano come eseguire azioni e implementare scenari comuni utilizzando i piani AWS Command Line Interface con Auto Scaling.
Le operazioni sono estratti di codice da programmi più grandi e devono essere eseguite nel contesto. Sebbene le azioni mostrino come richiamare le singole funzioni di servizio, è possibile visualizzare le azioni nel contesto degli scenari correlati.
Ogni esempio include un collegamento al codice sorgente completo, in cui è possibile trovare istruzioni su come configurare ed eseguire il codice nel contesto.
Argomenti
Azioni
Il seguente esempio di codice mostra come utilizzarecreate-scaling-plan
.
- AWS CLI
-
Per creare un piano di scalabilità
L'
create-scaling-plan
esempio seguente crea un piano di scalabilità denominatomy-scaling-plan
utilizzando un JSON file già creato (denominato config.json). La struttura del piano di scalabilità include un'istruzione di ridimensionamento per un gruppo Auto Scaling denominato.my-asg
Specifica la proprietàTagFilters
come origine dell'applicazione e abilita il dimensionamento predittivo e il dimensionamento dinamico.aws autoscaling-plans create-scaling-plan \ --scaling-plan-name
my-scaling-plan
\ --cli-input-jsonfile://~/config.json
Contenuto del file:
config.json
{ "ApplicationSource": { "TagFilters": [ { "Key": "purpose", "Values": [ "my-application" ] } ] }, "ScalingInstructions": [ { "ServiceNamespace": "autoscaling", "ResourceId": "autoScalingGroup/my-asg", "ScalableDimension": "autoscaling:autoScalingGroup:DesiredCapacity", "ScheduledActionBufferTime": 300, "PredictiveScalingMaxCapacityBehavior": "SetForecastCapacityToMaxCapacity", "PredictiveScalingMode": "ForecastAndScale", "PredefinedLoadMetricSpecification": { "PredefinedLoadMetricType": "ASGTotalCPUUtilization" }, "ScalingPolicyUpdateBehavior": "ReplaceExternalPolicies", "MinCapacity": 1, "MaxCapacity": 4, "TargetTrackingConfigurations": [ { "PredefinedScalingMetricSpecification": { "PredefinedScalingMetricType": "ASGAverageCPUUtilization" }, "TargetValue": 50 } ] } ] }
Output:
{ "ScalingPlanVersion": 1 }
Per ulteriori informazioni, consulta la Guida per l'utente di AWS Auto Scaling.
-
Per API i dettagli, vedere CreateScalingPlan
in AWS CLI Command Reference.
-
Il seguente esempio di codice mostra come utilizzaredelete-scaling-plan
.
- AWS CLI
-
Per eliminare un piano di scalabilità
L'
delete-scaling-plan
esempio seguente elimina il piano di scala specificato.aws autoscaling-plans delete-scaling-plan \ --scaling-plan-name
my-scaling-plan
\ --scaling-plan-version1
Questo comando non produce alcun output.
Per ulteriori informazioni, consulta la Guida per l'utente di AWS Auto Scaling.
-
Per API i dettagli, vedere DeleteScalingPlan
in AWS CLI Command Reference.
-
Il seguente esempio di codice mostra come utilizzaredescribe-scaling-plan-resources
.
- AWS CLI
-
Per descrivere le risorse scalabili per un piano di scalabilità
L'
describe-scaling-plan-resources
esempio seguente visualizza i dettagli sulla singola risorsa scalabile (un gruppo Auto Scaling) associata al piano di scalabilità specificato.aws autoscaling-plans describe-scaling-plan-resources \ --scaling-plan-name
my-scaling-plan
\ --scaling-plan-version1
Output:
{ "ScalingPlanResources": [ { "ScalableDimension": "autoscaling:autoScalingGroup:DesiredCapacity", "ScalingPlanVersion": 1, "ResourceId": "autoScalingGroup/my-asg", "ScalingStatusCode": "Active", "ScalingStatusMessage": "Target tracking scaling policies have been applied to the resource.", "ScalingPolicies": [ { "PolicyName": "AutoScaling-my-asg-b1ab65ae-4be3-4634-bd64-c7471662b251", "PolicyType": "TargetTrackingScaling", "TargetTrackingConfiguration": { "PredefinedScalingMetricSpecification": { "PredefinedScalingMetricType": "ALBRequestCountPerTarget", "ResourceLabel": "app/my-alb/f37c06a68c1748aa/targetgroup/my-target-group/6d4ea56ca2d6a18d" }, "TargetValue": 40.0 } } ], "ServiceNamespace": "autoscaling", "ScalingPlanName": "my-scaling-plan" } ] }
Per ulteriori informazioni, consulta Che cos'è l' AWS Auto Scaling? nella Guida per l'utente di AWS Auto Scaling.
-
Per API i dettagli, vedere DescribeScalingPlanResources
in AWS CLI Command Reference.
-
Il seguente esempio di codice mostra come utilizzaredescribe-scaling-plans
.
- AWS CLI
-
Per descrivere un piano di scalabilità
L'
describe-scaling-plans
esempio seguente visualizza i dettagli del piano di scalabilità specificato.aws autoscaling-plans describe-scaling-plans \ --scaling-plan-names
scaling-plan-with-asg-and-ddb
Output:
{ "ScalingPlans": [ { "LastMutatingRequestTime": 1565388443.963, "ScalingPlanVersion": 1, "CreationTime": 1565388443.963, "ScalingInstructions": [ { "ScalingPolicyUpdateBehavior": "ReplaceExternalPolicies", "ScalableDimension": "autoscaling:autoScalingGroup:DesiredCapacity", "TargetTrackingConfigurations": [ { "PredefinedScalingMetricSpecification": { "PredefinedScalingMetricType": "ASGAverageCPUUtilization" }, "TargetValue": 50.0, "EstimatedInstanceWarmup": 300, "DisableScaleIn": false } ], "ResourceId": "autoScalingGroup/my-asg", "DisableDynamicScaling": false, "MinCapacity": 1, "ServiceNamespace": "autoscaling", "MaxCapacity": 10 }, { "ScalingPolicyUpdateBehavior": "ReplaceExternalPolicies", "ScalableDimension": "dynamodb:table:ReadCapacityUnits", "TargetTrackingConfigurations": [ { "PredefinedScalingMetricSpecification": { "PredefinedScalingMetricType": "DynamoDBReadCapacityUtilization" }, "TargetValue": 50.0, "ScaleInCooldown": 60, "DisableScaleIn": false, "ScaleOutCooldown": 60 } ], "ResourceId": "table/my-table", "DisableDynamicScaling": false, "MinCapacity": 5, "ServiceNamespace": "dynamodb", "MaxCapacity": 10000 }, { "ScalingPolicyUpdateBehavior": "ReplaceExternalPolicies", "ScalableDimension": "dynamodb:table:WriteCapacityUnits", "TargetTrackingConfigurations": [ { "PredefinedScalingMetricSpecification": { "PredefinedScalingMetricType": "DynamoDBWriteCapacityUtilization" }, "TargetValue": 50.0, "ScaleInCooldown": 60, "DisableScaleIn": false, "ScaleOutCooldown": 60 } ], "ResourceId": "table/my-table", "DisableDynamicScaling": false, "MinCapacity": 5, "ServiceNamespace": "dynamodb", "MaxCapacity": 10000 } ], "ApplicationSource": { "TagFilters": [ { "Values": [ "my-application-id" ], "Key": "application" } ] }, "StatusStartTime": 1565388455.836, "ScalingPlanName": "scaling-plan-with-asg-and-ddb", "StatusMessage": "Scaling plan has been created and applied to all resources.", "StatusCode": "Active" } ] }
Per ulteriori informazioni, consulta Che cos'è l' AWS Auto Scaling? nella Guida per l'utente di AWS Auto Scaling.
-
Per API i dettagli, vedere DescribeScalingPlans
in AWS CLI Command Reference.
-
Il seguente esempio di codice mostra come utilizzareget-scaling-plan-resource-forecast-data
.
- AWS CLI
-
Per recuperare i dati di previsione del carico
Questo esempio recupera i dati di previsione del carico per una risorsa scalabile (un gruppo Auto Scaling) associata al piano di scalabilità specificato.
aws autoscaling-plans get-scaling-plan-resource-forecast-data \ --scaling-plan-name
my-scaling-plan
\ --scaling-plan-version1
\ --service-namespace"autoscaling"
\ --resource-idautoScalingGroup/my-asg
\ --scalable-dimension"autoscaling:autoScalingGroup:DesiredCapacity"
\ --forecast-data-type"LoadForecast"
\ --start-time"2019-08-30T00:00:00Z"
\ --end-time"2019-09-06T00:00:00Z"
Output:
{ "Datapoints": [...] }
Per ulteriori informazioni, consulta Cos'è l' AWS Auto Scaling nella Guida per l'utente AWS di Auto Scaling.
-
Per API i dettagli, vedere GetScalingPlanResourceForecastData
in AWS CLI Command Reference.
-
Il seguente esempio di codice mostra come utilizzareupdate-scaling-plan
.
- AWS CLI
-
Per aggiornare un piano di scalabilità
L'
update-scaling-plan
esempio seguente modifica la metrica di scala per un gruppo Auto Scaling nel piano di scala specificato.aws autoscaling-plans update-scaling-plan \ --scaling-plan-name
my-scaling-plan
\ --scaling-plan-version1
\ --scaling-instructions '{"ScalableDimension":"autoscaling:autoScalingGroup:DesiredCapacity","ResourceId":"autoScalingGroup/my-asg","ServiceNamespace":"autoscaling","TargetTrackingConfigurations":[{"PredefinedScalingMetricSpecification": {"PredefinedScalingMetricType":"ALBRequestCountPerTarget","ResourceLabel":"app/my-alb/f37c06a68c1748aa/targetgroup/my-target-group/6d4ea56ca2d6a18d"},"TargetValue":40.0}],"MinCapacity": 1,"MaxCapacity": 10}
'Questo comando non produce alcun output.
Per ulteriori informazioni, consulta Che cos'è l' AWS Auto Scaling? nella Guida per l'utente di AWS Auto Scaling.
-
Per API i dettagli, vedere UpdateScalingPlan
in AWS CLI Command Reference.
-