全部产品
Search
文档中心

Resource Orchestration Service:ALIYUN::ESS::ScalingRule

更新时间:Jun 26, 2025

ALIYUN::ESS::ScalingRule digunakan untuk membuat aturan penskalaan.

Sintaksis

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

PropertiTipeDiperlukanDapat DieditDeskripsiBatasan
AdjustmentValueIntegerTidakYa

Jumlah Instance ECS yang akan ditambahkan atau dikurangi saat penskalaan terjadi. Parameter ini hanya berlaku ketika parameter ScalingRuleType diatur ke SimpleScalingRule atau StepScalingRule.

Nilai valid berdasarkan nilai AdjustmentType:
  • Nilai valid ketika parameter AdjustmentType diatur ke QuantityChangeInCapacity: -500 hingga 500
  • Nilai valid ketika parameter AdjustmentType diatur ke PercentChangeInCapacity: -100 hingga 10000
  • Nilai valid ketika parameter AdjustmentType diatur ke TotalCapacity: 0 hingga 1000
Catatan Jumlah Instance ECS yang disesuaikan dalam satu aktivitas penskalaan tidak boleh melebihi 500.
CooldownIntegerTidakYaPeriode cooldown dari aturan penskalaan. Parameter ini hanya berlaku ketika parameter ScalingRuleType diatur ke SimpleScalingRule.Nilai valid: 0 hingga 86400.

Satuan: detik.

Secara default, properti ini kosong.

ScalingGroupIdStringYaTidakID grup penskalaan tempat aturan penskalaan berada.Tidak ada.
AdjustmentTypeStringTidakYaMetode penyesuaian dari aturan penskalaan. Parameter ini hanya berlaku ketika parameter ScalingRuleType diatur ke SimpleScalingRule atau StepScalingRule.Nilai valid:
  • QuantityChangeInCapacity: menambah atau mengurangi jumlah Instance ECS yang ditentukan dalam grup penskalaan.
  • PercentChangeInCapacity: menambah atau mengurangi persentase Instance ECS yang ditentukan dalam grup penskalaan.
  • TotalCapacity: menambah atau mengurangi jumlah Instance ECS dalam grup penskalaan dengan atau menjadi angka tertentu.
ScalingRuleNameStringTidakYaNama aturan penskalaan.Nama harus memiliki panjang 2 hingga 64 karakter dan dapat berisi digit, huruf, garis bawah (_), tanda hubung (-), dan titik (.). Harus dimulai dengan digit atau huruf.

Jika parameter ini tidak ditentukan, nilai ScalingRuleId digunakan secara default.

MetricNameStringTidakTidakMetrik yang telah ditentukan sebelumnya untuk dipantau. Parameter ini diperlukan dan hanya berlaku ketika parameter ScalingRuleType diatur ke TargetTrackingScalingRule atau PredictiveScalingRule.
  • Nilai valid ketika parameter ScalingRuleType diatur ke TargetTrackingScalingRule:
    • CpuUtilization: rata-rata pemanfaatan CPU
    • ClassicInternetRx: rata-rata lalu lintas masuk Internet melalui jaringan klasik
    • ClassicInternetTx: rata-rata lalu lintas keluar Internet melalui jaringan klasik
    • VpcInternetRx: rata-rata lalu lintas masuk Internet melalui VPC
    • VpcInternetTx: rata-rata lalu lintas keluar Internet melalui VPC
    • IntranetRx: rata-rata lalu lintas masuk melalui jaringan internal
    • IntranetTx: rata-rata lalu lintas keluar melalui jaringan internal
  • Nilai valid ketika parameter ScalingRuleType diatur ke PredictiveScalingRule:
    • CpuUtilization: rata-rata pemanfaatan CPU
    • IntranetRx: rata-rata lalu lintas masuk melalui jaringan internal
    • IntranetTx: rata-rata lalu lintas keluar melalui jaringan internal
PredictiveTaskBufferTimeIntegerTidakTidakPeriode buffer sebelum waktu eksekusi tugas prediksi. Secara default, semua tugas terjadwal yang dibuat otomatis untuk aturan penskalaan prediktif dieksekusi tepat pada jam. Anda dapat mengatur periode buffer untuk menjalankan tugas prediksi lebih awal, sehingga sumber daya dapat dipersiapkan terlebih dahulu.Nilai valid: 0 hingga 60.

Satuan: menit.

Nilai default: 0.
ScalingRuleTypeStringTidakTidakJenis aturan penskalaan.Nilai default: SimpleScalingRule. Nilai valid:
  • SimpleScalingRule: menskalakan Instance ECS berdasarkan nilai AdjustmentType dan AdjustmentValue.
  • TargetTrackingScalingRule: secara dinamis menghitung jumlah Instance ECS yang akan diskalakan dan mencoba menjaga nilai metrik yang telah ditentukan sebelumnya mendekati TargetValue.
  • StepScalingRule: menskalakan Instance ECS secara bertahap berdasarkan ambang batas dan nilai metrik yang ditentukan.
  • PredictiveScalingRule: menggunakan pembelajaran mesin untuk menganalisis data pemantauan historis dari grup penskalaan dan memprediksi nilai masa depan dari metrik. Aturan ini kemudian secara otomatis membuat tugas terjadwal untuk menetapkan nilai batas untuk grup penskalaan.
PredictiveValueBufferIntegerTidakTidakRasio peningkatan terhadap nilai prediksi ketika PredictiveValueBehavior diatur ke PredictiveValueOverrideMaxWithBuffer. Jika nilai prediksi yang meningkat dengan rasio ini lebih besar dari kapasitas maksimum awal, nilai setelah peningkatan digunakan sebagai nilai maksimum untuk tugas prediksi.Nilai valid: 0 hingga 100.

Nilai default: 0.

TargetValueNumberTidakTidakNilai metrik yang Anda harapkan. Parameter ini hanya berlaku ketika parameter ScalingRuleType diatur ke TargetTrackingScalingRule atau PredictiveScalingRule.Nilai harus lebih besar dari 0 dan dapat memiliki maksimal tiga tempat desimal.
StepAdjustmentListTidakTidakPenyesuaian langkah untuk penskalaan bertahap.Untuk informasi lebih lanjut, lihat properti StepAdjustment.
PredictiveValueBehaviorStringTidakTidakTindakan yang diambil pada nilai maksimum prediksi.Nilai default: MaxOverridePredictiveValue. Nilai valid:
  • MaxOverridePredictiveValue: menggunakan kapasitas maksimum awal sebagai nilai maksimum untuk tugas prediksi ketika nilai prediksi lebih besar dari kapasitas maksimum awal.
  • PredictiveValueOverrideMax: menggunakan nilai prediksi sebagai nilai maksimum untuk tugas prediksi ketika nilai prediksi lebih besar dari kapasitas maksimum awal.
  • PredictiveValueOverrideMaxWithBuffer: meningkatkan nilai prediksi dengan rasio, yang ditentukan oleh PredictiveValueBuffer. Jika nilai setelah peningkatan lebih besar dari kapasitas maksimum awal, nilai setelah peningkatan digunakan sebagai nilai maksimum untuk tugas prediksi.
DisableScaleInBooleanTidakTidakMenentukan apakah akan menonaktifkan penskalaan masuk. Parameter ini hanya berlaku ketika parameter ScalingRuleType diatur ke TargetTrackingScalingRule.Nilai default: false. Nilai valid:
  • true
  • false
InitialMaxSizeIntegerTidakTidakJumlah maksimum Instance ECS dalam grup penskalaan, yang digunakan bersama dengan parameter PredictiveValueBehavior.Nilai default parameter ini adalah nilai MaxSize.
MinAdjustmentMagnitudeIntegerTidakTidakJumlah minimum Instance ECS yang akan disesuaikan dalam aturan penskalaan.Parameter ini hanya berlaku ketika parameter ScalingRuleType diatur ke SimpleScalingRule atau StepScalingRule, dan parameter AdjustmentType diatur ke PercentChangeInCapacity.
EstimatedInstanceWarmupIntegerTidakTidakPeriode pemanasan Instance ECS. Parameter ini hanya berlaku ketika parameter ScalingRuleType diatur ke TargetTrackingScalingRule atau StepScalingRule.Nilai valid: 0 hingga 86400.

Satuan: detik.

Nilai default: 300.

Sistem menambahkan Instance ECS yang berada dalam status pemanasan ke grup penskalaan, tetapi tidak melaporkan data pemantauan ke Cloud Monitor selama periode pemanasan.

Catatan Ketika sistem menghitung jumlah Instance ECS yang akan disesuaikan, sistem tidak menghitung Instance ECS dalam status pemanasan sebagai bagian dari kapasitas saat ini dari grup penskalaan.
PredictiveScalingModeStringTidakTidakMode dari aturan penskalaan prediktif.Nilai default: PredictAndScale. Nilai valid:
  • PredictAndScale: menghasilkan hasil prediksi dan membuat tugas prediksi.
  • PredictOnly: menghasilkan hasil prediksi tetapi tidak membuat tugas prediksi.
ScaleInEvaluationCountIntegerTidakYaJumlah kali berturut-turut bahwa tugas yang dipicu peristiwa yang dibuat untuk aktivitas penskalaan masuk harus memenuhi kondisi ambang batas sebelum peringatan dipicu. Setelah aturan penskalaan pelacakan target dibuat, tugas yang dipicu peristiwa secara otomatis dibuat.

Nilai default: 15.

ScaleOutEvaluationCountIntegerTidakYaJumlah kali berturut-turut bahwa tugas yang dipicu peristiwa yang dibuat untuk aktivitas penskalaan keluar harus memenuhi kondisi ambang batas sebelum peringatan dipicu. Setelah aturan penskalaan pelacakan target dibuat, tugas yang dipicu peristiwa secara otomatis dibuat.

Nilai default: 3.

Sintaksis StepAdjustment

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

Properti StepAdjustment

PropertiTipeDiperlukanDapat DieditDeskripsiBatasan
MetricIntervalUpperBoundNumberTidakTidakBatas atas yang ditentukan dalam penyesuaian langkah. Parameter ini hanya berlaku ketika parameter ScalingRuleType diatur ke StepScalingRule.Nilai valid: -9.999999E18 hingga 9.999999E18
ScalingAdjustmentIntegerTidakTidakJumlah Instance ECS yang ditentukan untuk disesuaikan dalam penyesuaian langkah. Parameter ini hanya berlaku ketika parameter ScalingRuleType diatur ke StepScalingRule.Tidak ada.
MetricIntervalLowerBoundNumberTidakTidakBatas bawah yang ditentukan dalam penyesuaian langkah. Parameter ini hanya berlaku ketika parameter ScalingRuleType diatur ke StepScalingRule.Nilai valid: -9.999999E18 hingga 9.999999E18

Nilai pengembalian

Fn::GetAtt

  • ScalingRuleAri: Pengenal unik dari aturan penskalaan.
  • ScalingRuleId: ID dari aturan penskalaan. ID ini adalah pengenal unik global (GUID) yang dihasilkan oleh sistem.

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