All Products
Search
Document Center

Resource Orchestration Service:ALIYUN::ESS::ScalingRule

Last Updated:Jun 16, 2026

Membuat aturan penskalaan untuk Auto Scaling (ESS).

Sintaks

{
  "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
  }
}

Properti

Nama Properti Tipe Wajib Boleh Diperbarui Deskripsi Batasan
AdjustmentValue Integer Tidak Ya

Nilai penyesuaian. Berlaku untuk aturan penskalaan simple dan aturan penskalaan langkah.

Nilai valid bervariasi berdasarkan AdjustmentType:
  • QuantityChangeInCapacity: -500 hingga 500.
  • PercentChangeInCapacity: -100 hingga 10.000.
  • TotalCapacity: 0 hingga 1.000.
Catatan Jumlah Instance ECS yang disesuaikan dalam satu aktivitas penskalaan tidak boleh melebihi 500.
Cooldown Integer Tidak Ya Waktu pendinginan. Hanya berlaku untuk aturan penskalaan simple. Nilai valid: 0 hingga 86400.

Unit: detik.

Nilai default kosong.

ScalingGroupId String Ya Tidak ID grup penskalaan tempat aturan penskalaan tersebut berada. Tidak ada
AdjustmentType String Tidak Ya Metode penyesuaian. Berlaku untuk aturan penskalaan simple dan aturan penskalaan langkah. Nilai valid:
  • QuantityChangeInCapacity: Menambah atau menghapus jumlah Instance ECS tertentu.
  • PercentChangeInCapacity: Menambah atau menghapus persentase Instance ECS tertentu.
  • TotalCapacity: Menyesuaikan jumlah Instance ECS dalam grup penskalaan saat ini menjadi jumlah tertentu.
ScalingRuleName String Tidak Ya Nama aturan penskalaan. Nama harus terdiri dari 2 hingga 64 karakter. Nama dapat berisi huruf, angka, garis bawah (_), tanda hubung (-), dan titik (.). Nama harus dimulai dengan huruf atau angka.

Jika Anda tidak menentukan parameter ini, nilai ScalingRuleId akan digunakan secara default.

MetricName String Tidak Tidak Metrik yang telah ditentukan sebelumnya. Berlaku untuk aturan penskalaan pelacakan target dan aturan penskalaan prediktif. Nilai valid:
  • Untuk aturan penskalaan pelacakan target:
    • CpuUtilization: Utilisasi CPU rata-rata.
    • ClassicInternetRx: Traffic Internet masuk rata-rata melalui jaringan klasik.
    • ClassicInternetTx: Traffic Internet keluar rata-rata melalui jaringan klasik.
    • VpcInternetRx: Traffic Internet masuk rata-rata melalui virtual private cloud (VPC).
    • VpcInternetTx: Traffic Internet keluar rata-rata melalui VPC.
    • IntranetRx: Traffic jaringan privat masuk rata-rata.
    • IntranetTx: Traffic jaringan privat keluar rata-rata.
  • Untuk aturan penskalaan prediktif:
    • CpuUtilization: Utilisasi CPU rata-rata.
    • IntranetRx: Traffic jaringan privat masuk rata-rata.
    • IntranetTx: Traffic jaringan privat keluar rata-rata.
PredictiveTaskBufferTime Integer Tidak Tidak Aturan penskalaan prediktif secara otomatis membuat tugas prediktif yang dijalankan setiap jam. Tetapkan waktu buffer untuk menjalankan tugas lebih awal dan mempersiapkan sumber daya. Nilai valid: 0 hingga 60.

Unit: menit.

Nilai default: 0.
ScalingRuleType String Tidak Tidak Jenis aturan penskalaan. Nilai valid:
  • SimpleScalingRule (default): Aturan penskalaan simple. Menyesuaikan jumlah Instance ECS berdasarkan AdjustmentType dan AdjustmentValue.
  • TargetTrackingScalingRule: Aturan penskalaan pelacakan target. Menghitung secara dinamis jumlah Instance ECS yang perlu diskalakan berdasarkan metrik yang telah ditentukan (MetricName). Aturan ini berusaha menjaga nilai metrik mendekati nilai target (TargetValue).
  • StepScalingRule: Aturan penskalaan langkah. Menyediakan metode penskalaan bertahap berdasarkan ambang batas dan nilai metrik.
  • PredictiveScalingRule: Aturan penskalaan prediktif. Menggunakan pembelajaran mesin untuk menganalisis data pemantauan historis grup penskalaan dan memprediksi nilai metrik di masa depan. Aturan ini juga mendukung pembuatan tugas terjadwal secara otomatis untuk menetapkan batas grup penskalaan.
PredictiveValueBuffer Integer Tidak Tidak Persentase peningkatan nilai prediksi. Hanya berlaku ketika PredictiveValueBehavior diatur ke PredictiveValueOverrideMaxWithBuffer. Jika nilai yang ditingkatkan lebih besar daripada nilai maksimum awal, maka nilai yang ditingkatkan tersebut akan digunakan. Nilai valid: 0 hingga 100.

Nilai default: 0.

TargetValue Number Tidak Tidak Nilai target. Berlaku untuk aturan penskalaan pelacakan target dan aturan penskalaan prediktif. Nilai TargetValue dapat memiliki hingga tiga tempat desimal dan harus lebih besar dari 0.
StepAdjustment List Tidak Tidak Prosedur Untuk informasi selengkapnya, lihat properti StepAdjustment.
PredictiveValueBehavior String Tidak Tidak Aksi yang diambil terhadap nilai maksimum untuk aturan penskalaan prediktif. Nilai valid:
  • MaxOverridePredictiveValue (default): Nilai maksimum awal menggantikan nilai prediksi. Jika nilai prediksi lebih besar daripada nilai maksimum awal, nilai maksimum awal akan digunakan untuk tugas prediktif.
  • PredictiveValueOverrideMax: Nilai prediksi menggantikan nilai maksimum awal. Jika nilai prediksi lebih besar daripada nilai maksimum awal, nilai prediksi akan digunakan untuk tugas prediktif.
  • PredictiveValueOverrideMaxWithBuffer: Nilai prediksi ditingkatkan dengan persentase tertentu. Nilai prediksi ditingkatkan sesuai persentase yang ditentukan oleh PredictiveValueBuffer. Jika nilai yang ditingkatkan lebih besar daripada nilai maksimum awal, nilai yang ditingkatkan tersebut akan digunakan.
DisableScaleIn Boolean Tidak Tidak Menentukan apakah skala-masuk dinonaktifkan. Hanya berlaku untuk aturan penskalaan pelacakan target. Nilai valid:
  • true
  • false (default)
InitialMaxSize Integer Tidak Tidak Jumlah maksimum instans dalam grup penskalaan. Digunakan bersama PredictiveValueBehavior. Nilai default adalah jumlah maksimum instans (MaxSize) dari grup penskalaan.
MinAdjustmentMagnitude Integer Tidak Tidak Jumlah minimum instans yang disesuaikan. Parameter ini hanya berlaku ketika ScalingRuleType adalah SimpleScalingRule atau StepScalingRule dan AdjustmentType adalah PercentChangeInCapacity.
EstimatedInstanceWarmup Integer Tidak Tidak Periode pemanasan untuk instans yang baru ditambahkan. Berlaku untuk aturan penskalaan pelacakan target dan aturan penskalaan langkah. Nilai valid: 0 hingga 86.400.

Unit: detik.

Nilai default: 300.

Instans ECS dalam status ramp-up tetap ditambahkan ke grup penskalaan seperti biasa, tetapi data pemantauannya tidak dilaporkan ke CloudMonitor selama periode ini.

Catatan Ketika jumlah Instance ECS yang akan diskalakan dihitung secara dinamis, instans dalam status ramp-up tidak dihitung sebagai bagian dari jumlah instans saat ini.
PredictiveScalingMode String Tidak Tidak Mode aturan penskalaan prediktif. Nilai valid:
  • PredictAndScale (default): Menghasilkan hasil prediksi dan membuat tugas prediktif.
  • PredictOnly: Menghasilkan hasil prediksi tetapi tidak membuat tugas prediktif.
ScaleInEvaluationCount Integer Tidak Ya Jumlah kali berturut-turut ambang batas harus terpenuhi sebelum tugas berbasis peristiwa skala-masuk dipicu. Setelah Anda membuat aturan penskalaan pelacakan target, tugas berbasis peristiwa akan dibuat secara otomatis.

Nilai default: 15.

ScaleOutEvaluationCount Integer Tidak Ya Jumlah kali berturut-turut ambang batas harus terpenuhi sebelum tugas berbasis peristiwa skala keluar dipicu. Setelah Anda membuat aturan penskalaan pelacakan target, tugas berbasis peristiwa akan dibuat secara otomatis.

Nilai default: 3.

Sintaks StepAdjustment

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

Properti StepAdjustment

Nama Properti Tipe Wajib Boleh Diperbarui Deskripsi Batasan
MetricIntervalUpperBound Number Tidak Tidak Batas atas langkah. Hanya berlaku untuk aturan penskalaan langkah. Nilai valid: -9,999999E18 hingga 9,999999E18.
ScalingAdjustment Integer Tidak Tidak Jumlah instans yang ditambahkan dalam langkah tersebut. Hanya berlaku untuk aturan penskalaan langkah. Tidak ada
MetricIntervalLowerBound Number Tidak Tidak Batas bawah langkah. Hanya berlaku untuk aturan penskalaan langkah. Nilai valid: -9,999999E18 hingga 9,999999E18.

Nilai kembalian

Fn::GetAtt

  • ScalingRuleAri: Pengidentifikasi unik aturan penskalaan.
  • ScalingRuleId: ID sistem yang dihasilkan secara global dan unik untuk aturan penskalaan.

Contoh

  • YAML format

    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 format

    {
      "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": {
      }
    }