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á.
Crie uma política de escalabilidade de etapas para o Application Auto Scaling usando o AWS CLI
Você pode criar uma política de escalabilidade de etapas para o Application Auto Scaling usando AWS CLI o para as seguintes tarefas de configuração.
-
Registrar um destino escalável.
-
Adicione uma política de escalabilidade em etapas ao destino escalável.
-
Crie um CloudWatch alarme para a política.
Em suma, os exemplos deste tópico ilustram comandos da CLI para um serviço do Amazon ECS. Para especificar um destino escalável diferente, especifique o namespace em --service-namespace
, sua dimensão escalável em --scalable-dimension
, e o ID do recurso em --resource-id
. Para obter mais informações e exemplos de cada serviço, consulte os tópicos na Serviços da AWS que você pode usar com o Application Auto Scaling.
Ao usar o AWS CLI, lembre-se de que seus comandos são Região da AWS executados no configurado para seu perfil. Se você deseja executar os comandos em uma região diferente, altere a região padrão para o seu perfil ou use o parâmetro --region
com o comando.
Conteúdo
Registrar um destino escalável
Se você ainda não tiver feito isso, inscreva o destino escalável. Use o comando register-scalable-target para inscrever um recurso específico no serviço de destino como destino escalável. O exemplo a seguir inscreve um serviço do Amazon ECS com o Application Auto Scaling. O Application Auto Scaling pode escalar o número de tarefas em um mínimo de duas tarefas e um máximo de dez. Substitua cada espaço reservado para entrada do usuário
por suas próprias informações.
Linux, macOS ou Unix
aws application-autoscaling register-scalable-target --service-namespace
ecs
\ --scalable-dimensionecs:service:DesiredCount
\ --resource-idservice/my-cluster/my-service
\ --min-capacity2
--max-capacity10
Windows
aws application-autoscaling register-scalable-target --service-namespace
ecs
--scalable-dimensionecs:service:DesiredCount
--resource-idservice/my-cluster/my-service
--min-capacity2
--max-capacity10
Se obtiver êxito, esse comando retornará o ARN do destino escalável.
{
"ScalableTargetARN": "arn:aws:application-autoscaling:region
:account-id
:scalable-target/1234abcd56ab78cd901ef1234567890ab123"
}
Criar uma política de escalabilidade em etapas
Para criar uma política de escalabilidade por etapas para sua meta escalável, você pode usar os exemplos a seguir para ajudá-lo a começar.
Criação de um alarme que invoca a política de escalabilidade
Por fim, use o seguinte comando CloudWatch put-metric-alarm para criar um alarme para usar com sua política de escalabilidade de etapas. Neste exemplo, você tem um alarme com base na utilização média da CPU. O alarme é configurado para entrar em um estado de ALARME se atingir o limite de 70% por, no mínimo, dois períodos de avaliação consecutivos de 60 segundos. Para especificar uma CloudWatch métrica diferente ou usar sua própria métrica personalizada, especifique seu nome em --metric-name
e seu namespace em. --namespace
Linux, macOS ou Unix
aws cloudwatch put-metric-alarm --alarm-name
Step-Scaling-AlarmHigh-ECS:service/my-cluster/my-service
\ --metric-nameCPUUtilization
--namespaceAWS/ECS
--statistic Average \ --period60
--evaluation-periods2
--threshold70
\ --comparison-operator GreaterThanOrEqualToThreshold \ --dimensions Name=ClusterName,Value=default
Name=ServiceName,Value=sample-app-service
\ --alarm-actionsPolicyARN
Windows
aws cloudwatch put-metric-alarm --alarm-name
Step-Scaling-AlarmHigh-ECS:service/my-cluster/my-service
--metric-nameCPUUtilization
--namespaceAWS/ECS
--statistic Average --period60
--evaluation-periods2
--threshold70
--comparison-operator GreaterThanOrEqualToThreshold --dimensions Name=ClusterName,Value=default
Name=ServiceName,Value=sample-app-service
--alarm-actionsPolicyARN
Descrever políticas de escalabilidade em etapas
Você pode descrever todas as políticas de escalabilidade para o namespace de serviço especificado usando o seguinte comando describe-scaling-policies.
aws application-autoscaling describe-scaling-policies --service-namespace
ecs
Você pode filtrar os resultados apenas para as políticas de escalabilidade em etapas usando o parâmetro --query
. Para mais informações sobre a sintaxe de query
, consulte Controlar a saída do comando da AWS CLI no Manual do usuário da AWS Command Line Interface .
Linux, macOS ou Unix
aws application-autoscaling describe-scaling-policies --service-namespace
ecs
\ --query 'ScalingPolicies[?PolicyType==`StepScaling`]'
Windows
aws application-autoscaling describe-scaling-policies --service-namespace
ecs
--query "ScalingPolicies[?PolicyType==`StepScaling`]"
O seguinte é um exemplo de saída.
[
{
"PolicyARN": "PolicyARN",
"StepScalingPolicyConfiguration": {
"MetricAggregationType": "Average",
"Cooldown": 60,
"StepAdjustments": [
{
"MetricIntervalLowerBound": 0.0,
"MetricIntervalUpperBound": 15.0,
"ScalingAdjustment": 1
},
{
"MetricIntervalLowerBound": 15.0,
"MetricIntervalUpperBound": 25.0,
"ScalingAdjustment": 2
},
{
"MetricIntervalLowerBound": 25.0,
"ScalingAdjustment": 3
}
],
"AdjustmentType": "ChangeInCapacity"
},
"PolicyType": "StepScaling",
"ResourceId": "service/my-cluster/my-service",
"ServiceNamespace": "ecs",
"Alarms": [
{
"AlarmName": "Step-Scaling-AlarmHigh-ECS:service/my-cluster/my-service",
"AlarmARN": "arn:aws:cloudwatch:region:012345678910:alarm:Step-Scaling-AlarmHigh-ECS:service/my-cluster/my-service"
}
],
"PolicyName": "my-step-scaling-policy",
"ScalableDimension": "ecs:service:DesiredCount",
"CreationTime": 1515024099.901
}
]
Excluir política de escalabilidade em etapas
Quando você não precisar mais de uma política de dimensionamento em etapas, poderá excluí-la. Para excluir a política de escalabilidade e o CloudWatch alarme, conclua as tarefas a seguir.
Para excluir a política de dimensionamento
Use o comando delete-scaling-policy.
Linux, macOS ou Unix
aws application-autoscaling delete-scaling-policy --service-namespace
ecs
\ --scalable-dimensionecs:service:DesiredCount
\ --resource-idservice/my-cluster/my-service
\ --policy-namemy-step-scaling-policy
Windows
aws application-autoscaling delete-scaling-policy --service-namespace
ecs
--scalable-dimensionecs:service:DesiredCount
--resource-idservice/my-cluster/my-service
--policy-namemy-step-scaling-policy
Para excluir o CloudWatch alarme
Use o comando delete-alarms. É possível excluir um ou mais alarmes por vez. Por exemplo, use o comando a seguir para excluir os alarmes Step-Scaling-AlarmHigh-ECS:service/my-cluster/my-service
e Step-Scaling-AlarmLow-ECS:service/my-cluster/my-service
.
aws cloudwatch delete-alarms --alarm-name
Step-Scaling-AlarmHigh-ECS:service/my-cluster/my-service
Step-Scaling-AlarmLow-ECS:service/my-cluster/my-service