Todos os produtos
Search
Central de documentação

Auto Scaling:Customize a target tracking scaling rule with formulas

Última atualização: Jul 17, 2026

Combine várias métricas do Hybrid Cloud Monitoring em uma fórmula para criar uma regra de dimensionamento por rastreamento de meta personalizada.

Visão geral

Benefícios

  • Suporte a fórmulas. Use uma fórmula para combinar até três métricas como alvo de rastreamento e garanta maior flexibilidade.

  • Maior variedade de métricas de monitoramento. Esta abordagem baseia-se no Hybrid Cloud Monitoring. Em comparação com as regras de dimensionamento por rastreamento de meta que usam métricas do sistema, ela permite utilizar um conjunto mais amplo de métricas para o rastreamento. Para obter mais informações sobre o Hybrid Cloud Monitoring, consulte Visão geral do Hybrid Cloud Monitoring.

Fluxo de trabalho

Esta solução combina uma regra de dimensionamento por rastreamento de meta para um grupo de dimensionamento com o Hybrid Cloud Monitoring. Siga este fluxo de trabalho para criar uma regra de dimensionamento por rastreamento de meta personalizada.

  1. Projete uma solução de dimensionamento por rastreamento de meta.

    Primeiro, identifique as métricas necessárias do Hybrid Cloud Monitoring e projete uma solução de dimensionamento por rastreamento de meta com base nos seus requisitos.

  2. Implemente a solução de dimensionamento.

    Prepare as métricas necessárias do Hybrid Cloud Monitoring e crie uma regra de dimensionamento por rastreamento de meta baseada nessas métricas.

  3. Monitore e otimize a solução continuamente.

    Acompanhe constantemente as atividades de dimensionamento e as alterações nas métricas para otimizar a solução.

1. Projetar uma solução de dimensionamento por rastreamento de meta

Identifique as métricas necessárias do Hybrid Cloud Monitoring e projete uma solução de dimensionamento. A seção a seguir apresenta um exemplo.

Para obter mais informações sobre as métricas compatíveis com o Hybrid Cloud Monitoring, consulte Apêndice 1: Métricas de services cloud . Para garantir um rastreamento de meta responsivo, selecione métricas com período mínimo de agregação de 60 segundos.
O valor da métrica calculada deve ser proporcional ao número de instâncias no grupo de dimensionamento. Isso garante a ocorrência de scale-out quando o valor da métrica estiver acima da meta e de scale-in quando estiver abaixo.

Exemplo de design de solução

O exemplo a seguir ajusta dinamicamente o número de instâncias em um grupo de dimensionamento com base no número de mensagens ativas em uma fila do Message Service (MNS).

  • Resultado esperado

    O objetivo é manter uma média de três mensagens na fila por instância no grupo de dimensionamento. Se o número de mensagens por instância subir acima de três, o grupo faz scale-out. Se cair abaixo de três, o grupo faz scale-in.

  • Implementação

    Para implementar esse recurso, use duas métricas: o número de mensagens ativas na fila MNS (ActiveMessages) e o número de instâncias em execução no grupo de dimensionamento (RunningInstanceCount). Crie uma regra de dimensionamento por rastreamento de meta baseada na razão entre essas duas métricas e defina o valor alvo como 3. Isso mantém a razão em aproximadamente 3, satisfazendo a seguinte fórmula: \frac{ActiveMessages}{RunningInstanceCount} = 3 .

2. Implementar a solução de dimensionamento

2,1. Preparar métricas do Hybrid Cloud Monitoring

Se você já tiver as métricas do Hybrid Cloud Monitoring prontas, pule esta etapa.
Para usar este recurso, ative o Hybrid Cloud Monitoring. Para obter mais informações, consulte Ativar o Hybrid Cloud Monitoring .

Antes de criar uma regra de dimensionamento por rastreamento de meta, prepare as métricas necessárias no Hybrid Cloud Monitoring:

  1. Crie um namespace.

    Para obter mais informações, consulte Criar um namespace.

  2. Adicione as métricas necessárias.

    De acordo com seus requisitos de negócios, adicione as métricas necessárias ao namespace. Para obter mais informações, consulte Gerenciar tarefas de importação de métricas.

    Nota

    Para garantir um rastreamento de meta responsivo, selecione métricas com período mínimo de agregação de 60 segundos.

Métricas necessárias para a solução de exemplo

Crie um namespace chamado ess-metrics-repo-test e adicione as duas métricas a seguir:

  • A métrica ActiveMessages de Active Messages.

  • A métrica do Auto Scaling referente a Running Instances.

2,2. Criar uma regra de dimensionamento por rastreamento de meta

Caso ainda não tenha criado um grupo de dimensionamento, crie um primeiro. Para obter mais informações, consulte Criar um grupo de dimensionamento ECS e Criar um grupo de dimensionamento ECI .
Importante

Uma regra de dimensionamento por rastreamento de meta suporta o dimensionamento para zero instâncias. Antes de criar essa regra, defina o Minimum Number of Instances e o Maximum Number of Instances do grupo de dimensionamento conforme seus requisitos de negócios. Isso estabelece os limites para as atividades de scale-out e scale-in, ajudando a evitar indisponibilidade do service ou custos inesperados decorrentes de um projeto de solução incorreto.

  1. Acesse a página de criação de regra de dimensionamento do seu grupo de dimensionamento.

    1. Faça login no Auto Scaling console.

    2. No painel de navegação à esquerda, clique em Scaling Groups.

    3. Na barra de navegação superior, selecione uma região.

    4. Localize o grupo de dimensionamento que deseja gerenciar e clique em Actions na coluna View Details.

    5. Clique na aba Scaling Rules and Tasks.

    6. Na aba Scaling Rules, clique em Create Scaling Rule.

  2. Na página Create Scaling Rule, configure os parâmetros a seguir.

    Parâmetro

    Descrição

    Rule Type

    Selecione Target Tracking Scaling Rule.

    Metric Type

    Selecione Hybrid Cloud Monitoring.

    Monitor Namespace

    Selecione o namespace preparado na Etapa 2,1.

    Metric Description

    Selecione as métricas preparadas na Etapa 2,1 e os recursos que deseja monitorar.

    Metric Calculation Expression

    Insira uma expressão conforme seus requisitos de negócios. Os operadores +-*/ e () são suportados.

    Importante
    • Uma expressão de métrica pode conter, no máximo, três métricas diferentes.

    • A métrica calculada deve ser proporcional ao número de instâncias. Isso assegura a ocorrência de scale-out quando o valor da métrica estiver acima da meta e de scale-in quando estiver abaixo.

    Target Value

    Valor alvo para a expressão da métrica. A regra de dimensionamento mantém o valor da métrica calculada próximo a este alvo.

    Instance Warmup Time

    Unidade: segundos. Uma instância em estado de aquecimento é adicionada ao grupo de dimensionamento, mas seus dados de monitoramento não são reportados ao Hybrid Cloud Monitoring. O Auto Scaling exclui as instâncias em aquecimento dos cálculos de capacidade para evitar flutuações nas métricas.

    Threshold for Scale-out Alerts

    Número de vezes consecutivas que o limiar deve ser atingido para acionar a tarefa acionada por evento de scale-out criada automaticamente.

    Threshold for Scale-in Alerts

    Número de vezes consecutivas que o limiar deve ser atingido para acionar a tarefa acionada por evento de scale-in criada automaticamente.

    Disable Scale-in

    Define se o scale-in deve ser desativado. Esta configuração afeta o número de tarefas acionadas por evento criadas automaticamente.

    • Ao desativar o scale-in, a regra de dimensionamento por rastreamento de meta cria apenas uma tarefa acionada por evento de scale-out. Nenhuma instância ECS ou ECI é removida do grupo de dimensionamento.

    • Ao permitir o scale-in, a regra de dimensionamento por rastreamento de meta cria duas tarefas acionadas por evento: uma para scale-out e outra para scale-in.

    Configuração principal para a solução de exemplo

    Parâmetro

    Exemplo

    Metric Type

    Selecione Hybrid Cloud Monitoring.

    Monitor Namespace

    Selecione o namespace preparado na Etapa 2,1, que é ess-metrics-repo-test.

    Metric Description

    Métrica a:

    • Em Metric Name, selecione AliyunEss_RunningInstanceCount.

    • Em Monitored Resource, selecione o grupo de dimensionamento atual.

    Métrica b:

    • Em Metric Name, selecione AliyunMnsnew_ActiveMessages.

    • Em Monitored Resource, selecione a fila MNS que deseja monitorar.

    Metric Calculation Expression

    Insira b/a. Esta expressão indica o número médio de mensagens que cada instância precisa processar.

    Target Value

    Insira 3. Isso indica que o comprimento médio esperado da fila por instância é de 3 mensagens.

  3. Após configurar os parâmetros, clique em OK para criar a regra de dimensionamento por rastreamento de meta.

3. Monitorar e otimizar a solução

Depois de criar a regra de dimensionamento por rastreamento de meta, monitore seu grupo de dimensionamento para garantir que ele funcione conforme o esperado. Revise o valor da métrica calculada, as atividades de dimensionamento e os dados de monitoramento do grupo para verificar seu comportamento.

Operações relacionadas

  • Visualize informações sobre a regra de dimensionamento por rastreamento de meta

    Na aba Scaling Rules and Event-triggered Tasks > Scaling Rules, localize a regra de dimensionamento por rastreamento de meta criada e clique no ID da regra para ver seus detalhes. Clique em uma tarefa acionada por evento associada para visualizar suas informações de monitoramento.

  • Monitorar o valor da métrica calculada

    Após a criação de uma regra de dimensionamento por rastreamento de meta, duas Event-triggered Task (Hybrid Cloud Monitoring) são criadas automaticamente. Na aba Scaling Rules and Tasks > Event-triggered Tasks > Event-triggered Task (Hybrid Cloud Monitoring), encontre a tarefa correspondente e clique em seu ID para acessar a página de detalhes da tarefa e visualizar os valores das métricas calculadas.

  • Visualize atividades de dimensionamento

    Na aba Scaling Activities, visualize os logs das atividades de dimensionamento no grupo de dimensionamento.

Criar uma regra com a API

Chame a operação CreateScalingRule para criar uma regra de dimensionamento por rastreamento de meta baseada em métricas do Hybrid Cloud Monitoring. Principais parâmetros:

Principais parâmetros

Parâmetro

Tipo

Descrição

Configuração

RegionId

String

ID da região onde o grupo de dimensionamento está localizado.

Defina este parâmetro como a região onde reside o grupo de dimensionamento alvo.

ScalingGroupId

string

ID do grupo de dimensionamento.

Defina este parâmetro como o ID do grupo de dimensionamento que deseja modificar.

ScalingRuleName

string

Nome da regra de dimensionamento.

O nome deve ter de 2 a 64 caracteres, começar com um dígito, uma letra ou um caractere chinês, e pode conter dígitos, sublinhados (_), hifens (-) e pontos (.).

O nome deve ser único dentro da mesma região e grupo de dimensionamento para a mesma conta Alibaba Cloud.

Se você não especificar este parâmetro, ele assumirá o valor de ScalingRuleId por padrão.

ScalingRuleType

string

Tipo da regra de dimensionamento.

Para criar uma regra de dimensionamento por rastreamento de meta, defina este parâmetro como TargetTrackingScalingRule.

DisableScaleIn

boolean

Especifica se o scale-in deve ser desativado. Este parâmetro aplica-se apenas a regras de dimensionamento por rastreamento de meta.

  • true: desativa o scale-in.

  • false: ativa o scale-in.

Configure este parâmetro com base na sua solução.

TargetValue

integer

Valor alvo.

O valor de TargetValue deve ser maior que 0 e pode ter até três casas decimais.

EstimatedInstanceWarmup

integer

Tempo de aquecimento da instância. Uma instância ECS em estado de aquecimento é adicionada ao grupo de dimensionamento, mas seus dados de monitoramento não são reportados ao Hybrid Cloud Monitoring.

Ao calcular o número de instâncias a adicionar ou remover, o Auto Scaling não conta as instâncias em estado de aquecimento como parte da capacidade atual.

Valores válidos: 0 a 86400. Unidade: segundos.

Valor padrão: 300.

ScaleOutEvaluationCount

integer

Após criar uma regra de dimensionamento por rastreamento de meta, uma tarefa acionada por evento é criada automaticamente. Este parâmetro especifica o número de vezes consecutivas que o limiar deve ser atingido para que a tarefa acionada por evento de scale-out seja disparada.

Valor padrão: 3.

Configure este parâmetro com base na sua solução.

ScaleInEvaluationCount

integer

Após criar uma regra de dimensionamento por rastreamento de meta, uma tarefa acionada por evento é criada automaticamente. Este parâmetro especifica o número de vezes consecutivas que o limiar deve ser atingido para que a tarefa acionada por evento de scale-in seja disparada.

Valor padrão: 15.

Configure este parâmetro com base na sua solução.

MetricType

string

Tipo da métrica.

Para criar uma regra de dimensionamento por rastreamento de meta baseada em métricas do Hybrid Cloud Monitoring, defina este parâmetro como hybrid. Este valor especifica que o Hybrid Cloud Monitoring é usado como source de métricas.

HybridMonitorNamespace

string

ID do namespace do Hybrid Cloud Monitoring.

Para obter mais informações sobre como gerenciar um namespace, consulte Gerenciar um namespace.

Configure este parâmetro com base na sua solução.

HybridMetrics

array<object>

Configurações das métricas do Hybrid Cloud Monitoring.

Um array de métricas do Hybrid Cloud Monitoring.

Subparâmetros de HybridMetrics

Id

string

ID de referência de uma métrica na expressão da métrica.

Isso é semelhante a declarar uma variável referenciada posteriormente na expressão.

Defina este parâmetro como a, b, c, e assim por diante.

MetricName

string

Nome da métrica no namespace do Hybrid Cloud Monitoring.

Configure este parâmetro com base na sua solução.

Statistic

string

Método de agregação da métrica.

Configure este parâmetro com base na sua solução. Valores válidos:

  • Average: a média de todos os pontos de dados no período especificado.

  • Minimum: o mínimo de todos os pontos de dados no período especificado.

  • Maximum: o máximo de todos os pontos de dados no período especificado.

Expression

string

Uma expressão de métrica que combina várias métricas do Hybrid Cloud Monitoring. O resultado do cálculo da expressão aciona atividades de scale-out ou scale-in.

A expressão usa notação infixa e suporta os operadores +, -, * e /.

Configure este parâmetro com base na sua solução.

Dimensions

object

Dimensões da métrica. Use este parâmetro para especificar o recurso que deseja monitorar.

Subparâmetros de Dimensions

DimensionKey

string

Chave da dimensão da métrica.

Configure este parâmetro com base na sua solução.

DimensionValue

string

Valor da dimensão da métrica.

Configure este parâmetro com base na sua solução.

Exemplo de solicitação

O exemplo a seguir usa a API para implementar a solução de exemplo descrita na Seção 1.

O corpo da solicitação a seguir mostra a configuração de parâmetros para esta solução.

{
    "RegionId": "cn-hangzhou",
    "ScalingGroupId": "asg-bp1******",
    "ScalingRuleType": "TargetTrackingScalingRule",
    "ScalingRuleName": "TrackingQueueLength",
    "DisableScaleIn": false,
    "TargetValue": 3,
    "EstimatedInstanceWarmup": 300,
    "ScaleOutEvaluationCount": 3,
    "ScaleInEvaluationCount": 15,
    "MetricType": "hybrid",
    "HybridMonitorNamespace": "ess-metrics-repo-test",
    "HybridMetrics.1.Id": "a",
    "HybridMetrics.1.MetricName": "AliyunEss_RunningInstanceCount",
    "HybridMetrics.1.Statistic": "Average",
    "HybridMetrics.1.Dimensions.1.DimensionKey": "instanceId",
    "HybridMetrics.1.Dimensions.1.DimensionValue": "asg-bp1******",
    "HybridMetrics.2.Id": "b",
    "HybridMetrics.2.MetricName": "AliyunMnsnew_ActiveMessages",
    "HybridMetrics.2.Statistic": "Average",
    "HybridMetrics.2.Dimensions.1.DimensionKey": "region",
    "HybridMetrics.2.Dimensions.1.DimensionValue": "cn-hangzhou",
    "HybridMetrics.2.Dimensions.2.DimensionKey": "userId",
    "HybridMetrics.2.Dimensions.2.DimensionValue": "******",
    "HybridMetrics.2.Dimensions.3.DimensionKey": "queue",
    "HybridMetrics.2.Dimensions.3.DimensionValue": "test",
    "HybridMetrics.3.Id": "Expression",
    "HybridMetrics.3.Expression": "b/a"
}

Como os principais campos JSON mapeiam para a fórmula:

  • Declare a variável a como o valor da métrica AliyunEss_RunningInstanceCount no namespace ess-metrics-repo-test e especifique o ID do grupo de dimensionamento como asg-bp1******.

    Significado: o número de instâncias em execução no grupo de dimensionamento cujo ID é asg-bp1****** .
    "HybridMetrics.1.Id": "a",
    "HybridMetrics.1.MetricName": "AliyunEss_RunningInstanceCount",
    "HybridMetrics.1.Statistic": "Average",
    "HybridMetrics.1.Dimensions.1.DimensionKey": "instanceId",
    "HybridMetrics.1.Dimensions.1.DimensionValue": "asg-bp1******",
  • Declare a variável b como o valor da métrica AliyunMnsnew_ActiveMessages no namespace ess-metrics-repo-test e especifique as dimensões da métrica como region=cn-hangzhou, userId=****** e queue=test.

    Significado: O número de mensagens ativas na fila test na região China (Hangzhou) sob a conta de usuário especificada.
    "HybridMetrics.2.Id": "b",
    "HybridMetrics.2.MetricName": "AliyunMnsnew_ActiveMessages",
    "HybridMetrics.2.Statistic": "Average",
    "HybridMetrics.2.Dimensions.1.DimensionKey": "region",
    "HybridMetrics.2.Dimensions.1.DimensionValue": "cn-hangzhou",
    "HybridMetrics.2.Dimensions.2.DimensionKey": "userId",
    "HybridMetrics.2.Dimensions.2.DimensionValue": "******",
    "HybridMetrics.2.Dimensions.3.DimensionKey": "queue",
    "HybridMetrics.2.Dimensions.3.DimensionValue": "test",
  • Defina a fórmula da métrica como b/a.

    Significado: implementa a fórmula \frac{AliyunMnsnew\_ActiveMessages}{AliyunEss\_RunningInstanceCount} .
    "HybridMetrics.3.Id": "Expression",
    "HybridMetrics.3.Expression": "b/a"
  • Defina o valor alvo para o resultado da fórmula.

    Significado: o valor alvo para o resultado da fórmula \frac{AliyunMnsnew\_ActiveMessages}{AliyunEss\_RunningInstanceCount} é 3.
    "TargetValue": 3