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 rastreamento de metas para o Application Auto Scaling usando o AWS CLI
Este exemplo usa AWS CLI comandos para criar uma política de rastreamento alvo para uma frota  EC2  spot da Amazon. Para usar um destino escalável diferente, especifique o respectivo namespace em --service-namespace, a dimensão escalável em --scalable-dimension e o ID do recurso em --resource-id.
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.
Tarefas
Etapa 1: registrar um destino escalável
Se você ainda não tiver feito isso, inscreva o destino escalável. Use o register-scalable-targetcomando para registrar um recurso específico no serviço de destino como um alvo escalável. O exemplo a seguir inscreve uma solicitação de frota spot com o Application Auto Scaling. O Application Auto Scaling pode escalar o número de instâncias da frota spot de no mínimo duas instâncias e no máximo dez. Substitua cada user input
          placeholder por suas próprias informações.
Linux, macOS ou Unix
aws application-autoscaling register-scalable-target --service-namespaceec2\ --scalable-dimensionec2:spot-fleet-request:TargetCapacity\ --resource-idspot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE\ --min-capacity2--max-capacity10
Windows
aws application-autoscaling register-scalable-target --service-namespaceec2^ --scalable-dimensionec2:spot-fleet-request:TargetCapacity^ --resource-idspot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE^ --min-capacity2--max-capacity10
Saída
Se obtiver êxito, esse comando retornará o ARN do destino escalável. O seguinte é um exemplo de saída.
{
    "ScalableTargetARN": "arn:aws:application-autoscaling:region:account-id:scalable-target/1234abcd56ab78cd901ef1234567890ab123"
}Etapa 2: Criar uma política de escalabilidade com monitoramento do objetivo
Para criar uma política de escalabilidade com rastreamento de destino, você pode usar os exemplos a seguir para começar.
Para criar uma política de escalabilidade com monitoramento do objetivo
- 
          Use o comando cata seguir para especificar um valor de destino para a política de escalabilidade e uma especificação de métrica predefinida em um arquivo JSON chamadoconfig.jsonem seu diretório inicial. Veja a seguir um exemplo de configuração de rastreamento de destino que mantém a utilização média da CPU em 50%.$ cat ~/config.json { "TargetValue":50.0, "PredefinedMetricSpecification": { "PredefinedMetricType": "EC2SpotFleetRequestAverageCPUUtilization" } }Para obter mais informações, consulte a Referência PredefinedMetricSpecificationda API Application Auto Scaling. Se preferir, você poderá personalizar a métrica usada para a escalabilidade criando uma especificação de métrica personalizada e adicionando valores para cada parâmetro do CloudWatch. Veja a seguir um exemplo de configuração de rastreamento de destino que mantém a utilização média da métrica especificada em 100. $ cat ~/config.json { "TargetValue":100.0, "CustomizedMetricSpecification":{ "MetricName": "MyUtilizationMetric", "Namespace": "MyNamespace", "Dimensions": [ { "Name": "MyOptionalMetricDimensionName", "Value": "MyOptionalMetricDimensionValue" } ], "Statistic": "Average", "Unit": "Percent" } }Para obter mais informações, consulte a Referência CustomizedMetricSpecificationda API Application Auto Scaling. 
- 
          Use o seguinte comando put-scaling-policy, com o arquivo config.jsonque você criou, para criar uma política de dimensionamento chamadacpu50-target-tracking-scaling-policy.Linux, macOS ou Unix aws application-autoscaling put-scaling-policy --service-namespaceec2\ --scalable-dimensionec2:spot-fleet-request:TargetCapacity\ --resource-idspot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE\ --policy-namecpu50-target-tracking-scaling-policy--policy-type TargetTrackingScaling \ --target-tracking-scaling-policy-configurationfile://config.jsonWindows aws application-autoscaling put-scaling-policy --service-namespaceec2^ --scalable-dimensionec2:spot-fleet-request:TargetCapacity^ --resource-idspot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE^ --policy-namecpu50-target-tracking-scaling-policy--policy-type TargetTrackingScaling ^ --target-tracking-scaling-policy-configurationfile://config.jsonSaídaSe for bem-sucedido, esse comando retornará os nomes ARNs e os dois CloudWatch alarmes criados em seu nome. O seguinte é um exemplo de saída. { "PolicyARN": "arn:aws:autoscaling:region:account-id:scalingPolicy:policy-id:resource/ec2/spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE:policyName/cpu50-target-tracking-scaling-policy", "Alarms": [ { "AlarmARN": "arn:aws:cloudwatch:region:account-id:alarm:TargetTracking-spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE-AlarmHigh-d4f0770c-b46e-434a-a60f-3b36d653feca", "AlarmName": "TargetTracking-spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE-AlarmHigh-d4f0770c-b46e-434a-a60f-3b36d653feca" }, { "AlarmARN": "arn:aws:cloudwatch:region:account-id:alarm:TargetTracking-spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE-AlarmLow-1b437334-d19b-4a63-a812-6c67aaf2910d", "AlarmName": "TargetTracking-spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE-AlarmLow-1b437334-d19b-4a63-a812-6c67aaf2910d" } ] }
Etapa 3: descrever as políticas de escalabilidade com rastreamento de destino
Você pode descrever todas as políticas de dimensionamento para o namespace de serviço especificado usando o seguinte comando describe-scaling-policies.
aws application-autoscaling describe-scaling-policies --service-namespaceec2
Você pode filtrar os resultados apenas para as políticas de escalabilidade de rastreamento de destino 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-namespaceec2\ --query 'ScalingPolicies[?PolicyType==`TargetTrackingScaling`]'
Windows
aws application-autoscaling describe-scaling-policies --service-namespaceec2^ --query "ScalingPolicies[?PolicyType==`TargetTrackingScaling`]"
Saída
O seguinte é um exemplo de saída.
[
    {
        "PolicyARN": "PolicyARN",
        "TargetTrackingScalingPolicyConfiguration": {
            "PredefinedMetricSpecification": {
                "PredefinedMetricType": "EC2SpotFleetRequestAverageCPUUtilization"
            },
            "TargetValue": 50.0
        },
        "PolicyName": "cpu50-target-tracking-scaling-policy",
        "ScalableDimension": "ec2:spot-fleet-request:TargetCapacity",
        "ServiceNamespace": "ec2",
        "PolicyType": "TargetTrackingScaling",
        "ResourceId": "spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE",
        "Alarms": [
            {
                "AlarmARN": "arn:aws:cloudwatch:region:account-id:alarm:TargetTracking-spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE-AlarmHigh-d4f0770c-b46e-434a-a60f-3b36d653feca",
                "AlarmName": "TargetTracking-spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE-AlarmHigh-d4f0770c-b46e-434a-a60f-3b36d653feca"
            },
            {
                "AlarmARN": "arn:aws:cloudwatch:region:account-id:alarm:TargetTracking-spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE-AlarmLow-1b437334-d19b-4a63-a812-6c67aaf2910d",
                "AlarmName": "TargetTracking-spot-fleet-request/sfr-73fbd2ce-aa30-494c-8788-1cee4EXAMPLE-AlarmLow-1b437334-d19b-4a63-a812-6c67aaf2910d"
            }
        ],
        "CreationTime": 1515021724.807
    }
]