Todos os produtos
Search
Central de documentação

Resource Orchestration Service:ALIYUN::ESS::ScalingRule

Última atualização: Jun 27, 2026

Crie uma regra de dimensionamento para o Auto Scaling (ESS).

Sintaxe

{
  "Type": "ALIYUN::ESS::ScalingRule",
  "Properties": {
    "AdjustmentValue": Integer,
    "Cooldown": Integer,
    "ScalingGroupId": String,
    "AdjustmentType": String,
    "ScalingRuleName": String,
    "MetricName": String,
    "PredictiveTaskBufferTime": Integer,
    "ScalingRuleType": String,
    "PredictiveValueBuffer": Integer,
    "TargetValue": Number,
    "StepAdjustment": List,
    "PredictiveValueBehavior": String,
    "DisableScaleIn": Boolean,
    "InitialMaxSize": Integer,
    "MinAdjustmentMagnitude": Integer,
    "EstimatedInstanceWarmup": Integer,
    "PredictiveScalingMode": String,
    "ScaleInEvaluationCount": Integer,
    "ScaleOutEvaluationCount": Integer
  }
}

Propriedades

Nome da propriedade Tipo Obrigatório Atualização permitida Descrição Restrições
AdjustmentValue Integer Não Sim

Valor de ajuste. Válido para regras de dimensionamento simples e em etapas.

Os valores válidos variam conforme o AdjustmentType:
  • QuantityChangeInCapacity: -500 a 500.
  • PercentChangeInCapacity: -100 a 10.000.
  • TotalCapacity: 0 a 1.000.
Nota O número de instâncias ECS ajustadas em uma única atividade de dimensionamento não pode exceder 500.
Cooldown Integer Não Sim Tempo de resfriamento. Válido apenas para regras de dimensionamento simples. Valores válidos: 0 a 86400.

Unidade: segundos.

O valor padrão é vazio.

ScalingGroupId String Sim Não ID do grupo de dimensionamento ao qual a regra pertence. Nenhuma
AdjustmentType String Não Sim Método de ajuste. Válido para regras de dimensionamento simples e em etapas. Valores válidos:
  • QuantityChangeInCapacity: adiciona ou remove um número específico de instâncias ECS.
  • PercentChangeInCapacity: adiciona ou remove uma porcentagem específica de instâncias ECS.
  • TotalCapacity: ajusta o número de instâncias ECS no grupo de dimensionamento atual para um valor especificado.
ScalingRuleName String Não Sim Nome da regra de dimensionamento. O nome deve ter entre 2 e 64 caracteres. Pode conter letras, dígitos, sublinhados (_), hifens (-) e pontos (.). Deve começar com uma letra ou dígito.

Se você não especifique este parâmetro, o sistema usará o valor de ScalingRuleId por padrão.

MetricName String Não Não Métrica predefinida. Válido para regras de dimensionamento por rastreamento de meta e preditivas. Valores válidos:
  • Para regras de dimensionamento por rastreamento de meta:
    • CpuUtilization: utilização média da CPU.
    • ClassicInternetRx: tráfego médio de entrada da Internet pela rede clássica.
    • ClassicInternetTx: tráfego médio de saída da Internet pela rede clássica.
    • VpcInternetRx: tráfego médio de entrada da Internet por uma Virtual Private Cloud (VPC).
    • VpcInternetTx: tráfego médio de saída da Internet por uma VPC.
    • IntranetRx: tráfego médio de entrada da rede privada.
    • IntranetTx: tráfego médio de saída da rede privada.
  • Para regras de dimensionamento preditivas:
    • CpuUtilization: utilização média da CPU.
    • IntranetRx: tráfego médio de entrada da rede privada.
    • IntranetTx: tráfego médio de saída da rede privada.
PredictiveTaskBufferTime Integer Não Não Uma regra de dimensionamento preditiva cria automaticamente uma tarefa preditiva executada a cada hora inteira. Defina um tempo de buffer para executar a tarefa antecipadamente e preparar recursos. Valores válidos: 0 a 60.

Unidade: minutos.

Valor padrão: 0.
ScalingRuleType String Não Não Tipo da regra de dimensionamento. Valores válidos:
  • SimpleScalingRule (padrão): regra de dimensionamento simples. Ajusta o número de instâncias ECS com base em AdjustmentType e AdjustmentValue.
  • TargetTrackingScalingRule: regra de dimensionamento por rastreamento de meta. Calcula dinamicamente o número de instâncias ECS a serem dimensionadas com base em uma métrica predefinida (MetricName). Esta regra tenta manter o valor da métrica próximo ao valor alvo (TargetValue).
  • StepScalingRule: regra de dimensionamento em etapas. Fornece um método de dimensionamento escalonado com base em limiares e valores de métricas.
  • PredictiveScalingRule: regra de dimensionamento preditiva. Usa aprendizado de máquina para analisar dados históricos de monitoramento do grupo de dimensionamento e prever valores futuros de métricas. Também permite criar tarefas agendadas automaticamente para definir os limites do grupo de dimensionamento.
PredictiveValueBuffer Integer Não Não Porcentagem de aumento do valor previsto. Entra em vigor apenas quando PredictiveValueBehavior está definido como PredictiveValueOverrideMaxWithBuffer. Se o valor aumentado for maior que o valor máximo inicial, o sistema usará o valor aumentado. Valores válidos: 0 a 100.

Valor padrão: 0.

TargetValue Number Não Não Valor alvo. Válido para regras de dimensionamento por rastreamento de meta e preditivas. O valor de TargetValue pode ter até três casas decimais e deve ser maior que 0.
StepAdjustment List Não Não Procedimento Para mais informações, consulte Propriedades de StepAdjustment.
PredictiveValueBehavior String Não Não Ação a ser tomada sobre o valor máximo para uma regra de dimensionamento preditiva. Valores válidos:
  • MaxOverridePredictiveValue (padrão): o valor máximo inicial substitui o valor previsto. Se o valor previsto for maior que o valor máximo inicial, a tarefa preditiva usará o valor máximo inicial.
  • PredictiveValueOverrideMax: o valor previsto substitui o valor máximo inicial. Se o valor previsto for maior que o valor máximo inicial, a tarefa preditiva usará o valor previsto.
  • PredictiveValueOverrideMaxWithBuffer: aumenta o valor previsto por uma porcentagem especificada. O incremento segue a porcentagem definida em PredictiveValueBuffer. Se o valor aumentado for maior que o valor máximo inicial, o sistema usará o valor aumentado.
DisableScaleIn Boolean Não Não Defina se o scale-in deve ser desativado. Válido apenas para regras de dimensionamento por rastreamento de meta. Valores válidos:
  • true
  • false (padrão)
InitialMaxSize Integer Não Não Número máximo de instâncias no grupo de dimensionamento. Usado em conjunto com PredictiveValueBehavior. O valor padrão é o número máximo de instâncias (MaxSize) do grupo de dimensionamento.
MinAdjustmentMagnitude Integer Não Não Número mínimo de instâncias a ajustar. Este parâmetro entra em vigor apenas quando ScalingRuleType é SimpleScalingRule ou StepScalingRule e AdjustmentType é PercentChangeInCapacity.
EstimatedInstanceWarmup Integer Não Não Período de aquecimento para instâncias recém-adicionadas. Válido para regras de dimensionamento por rastreamento de meta e em etapas. Valores válidos: 0 a 86.400.

Unidade: segundos.

Valor padrão: 300.

Uma instância ECS em estado de ramp-up é adicionada ao grupo de dimensionamento normalmente, mas seus dados de monitoramento não são reportados ao CloudMonitor durante esse período.

Nota Quando o cálculo dinâmico define o número de instâncias ECS a serem dimensionadas, as instâncias em estado de ramp-up não entram na contagem atual de instâncias.
PredictiveScalingMode String Não Não Modo da regra de dimensionamento preditiva. Valores válidos:
  • PredictAndScale (padrão): gera resultados de previsão e cria tarefas preditivas.
  • PredictOnly: gera resultados de previsão, mas não cria tarefas preditivas.
ScaleInEvaluationCount Integer Não Sim Número de vezes consecutivas que o limiar deve ser atingido antes do disparo de uma tarefa acionada por evento de scale-in. Ao criar uma regra de dimensionamento por rastreamento de meta, o sistema cria automaticamente uma tarefa acionada por evento.

Valor padrão: 15.

ScaleOutEvaluationCount Integer Não Sim Número de vezes consecutivas que o limiar deve ser atingido antes do disparo de uma tarefa acionada por evento de scale-out. Ao criar uma regra de dimensionamento por rastreamento de meta, o sistema cria automaticamente uma tarefa acionada por evento.

Valor padrão: 3.

Sintaxe de StepAdjustment

"StepAdjustment": [
  {
    "MetricIntervalUpperBound": Number,
    "ScalingAdjustment": Integer,
    "MetricIntervalLowerBound": Number
  }
]

Propriedades de StepAdjustment

Nome da propriedade

Tipo

Obrigatório

Atualização permitida

Descrição

Restrições

MetricIntervalUpperBound

Number

Não

Não

Limite superior da etapa. Válido apenas para regras de dimensionamento em etapas.

Valores válidos: -9.999999E18 a 9.999999E18.

ScalingAdjustment

Integer

Não

Não

Número de instâncias a adicionar na etapa. Válido apenas para regras de dimensionamento em etapas.

Nenhuma

MetricIntervalLowerBound

Number

Não

Não

Limite inferior da etapa. Válido apenas para regras de dimensionamento em etapas.

Valores válidos: -9.999999E18 a 9.999999E18.

Valores de retorno

Fn::GetAtt

  • ScalingRuleAri: identificador único da regra de dimensionamento.

  • ScalingRuleId: ID globalmente único da regra de dimensionamento gerado pelo sistema.

Exemplos

  • YAML formato

    ROSTemplateFormatVersion: '2015-09-01'
    Description: Test ESS ScalingRule
    Parameters:
      AutoScalingGroupId:
        Type: String
        AssociationProperty: ALIYUN::ESS::AutoScalingGroup::AutoScalingGroupId
    Resources:
      ScalingRule:
        Type: ALIYUN::ESS::ScalingRule
        Properties:
          AdjustmentType: QuantityChangeInCapacity
          ScalingGroupId:
            Ref: AutoScalingGroupId
          AdjustmentValue: 1
    Outputs: {}
  • JSON formato

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Description": "Test ESS ScalingRule",
      "Parameters": {
        "AutoScalingGroupId": {
          "Type": "String",
          "AssociationProperty": "ALIYUN::ESS::AutoScalingGroup::AutoScalingGroupId"
        }
      },
      "Resources": {
        "ScalingRule": {
          "Type": "ALIYUN::ESS::ScalingRule",
          "Properties": {
            "AdjustmentType": "QuantityChangeInCapacity",
            "ScalingGroupId": {
              "Ref": "AutoScalingGroupId"
            },
            "AdjustmentValue": 1
          }
        }
      },
      "Outputs": {
      }
    }