Fungsi aturan penskalaan ditentukan oleh jenisnya. Aturan penskalaan dapat digunakan untuk memicu aktivitas penskalaan atau menetapkan nilai batas grup penskalaan secara cerdas. Anda dapat memanggil operasi CreateScalingRule untuk membuat berbagai jenis aturan penskalaan berdasarkan kebutuhan bisnis Anda. Misalnya, jika Anda ingin menetapkan nilai batas grup penskalaan secara cerdas, gunakan jenis aturan penskalaan prediktif.
Deskripsi operasi
Aturan penskalaan mendefinisikan operasi scale-out atau scale-in tertentu, seperti menambahkan atau menghapus N instans. Jika menjalankan aturan penskalaan menyebabkan jumlah instans ECS atau ECI dalam grup penskalaan turun di bawah MinSize atau melebihi MaxSize, Auto Scaling secara otomatis menyesuaikan jumlah instans ECS atau ECI yang akan ditambahkan atau dihapus agar jumlah instans mencapai MinSize atau MaxSize. Namun, nilai yang dikonfigurasi dari aturan penskalaan tetap tidak berubah. Contoh:
Grup penskalaan memiliki MaxSize yang diatur ke 3 dan jumlah instans saat ini (Total Capacity) adalah 2. Aturan penskalaan menentukan penambahan 3 instans ECS. Selama eksekusi aktual, hanya 1 instans ECS yang ditambahkan, tetapi nilai yang dikonfigurasi dari aturan penskalaan tetap 3.
Grup penskalaan memiliki MinSize yang diatur ke 2 dan jumlah instans saat ini (Total Capacity) adalah 3. Aturan penskalaan menentukan penghapusan 5 instans ECS. Selama eksekusi aktual, hanya 1 instans ECS yang dihapus, tetapi nilai yang dikonfigurasi dari aturan penskalaan tetap 5.
Perhatikan informasi berikut tentang parameter:
Jika AdjustmentType diatur ke TotalCapacity, jumlah instans ECS atau ECI dalam grup penskalaan disesuaikan ke nilai yang ditentukan. AdjustmentValue yang sesuai harus lebih besar dari atau sama dengan 0.
Jika AdjustmentType diatur ke QuantityChangeInCapacity atau PercentChangeInCapacity, AdjustmentValue positif menunjukkan penambahan instans dan nilai negatif menunjukkan penghapusan instans.
Jika AdjustmentType diatur ke PercentChangeInCapacity, Auto Scaling menghitung jumlah instans ECS atau instans ECI yang akan ditambahkan atau dihapus menggunakan rumus berikut: Jumlah instans saat ini (Total Capacity) × AdjustmentValue/100. Hasilnya dibulatkan untuk mengonfirmasi jumlah instans ECS atau instans ECI yang akan ditambahkan atau dihapus.
Jika waktu pendinginan (Cooldown) ditentukan dalam aturan penskalaan, grup penskalaan memasuki status pendinginan selama durasi yang ditentukan setelah aktivitas penskalaan yang dipicu oleh aturan penskalaan selesai. Jika tidak ada waktu pendinginan yang ditentukan dalam aturan penskalaan, waktu pendinginan yang ditentukan untuk grup penskalaan (DefaultCooldown) akan digunakan.
Jumlah aturan penskalaan yang dapat dibuat dalam grup penskalaan terbatas. Untuk informasi lebih lanjut, lihat Batas.
- Identitas unik aturan penskalaan yang dikembalikan (ScalingRuleAri) dapat digunakan dalam operasi berikut:
Tentukan parameter ScalingRuleAri saat Anda memanggil operasi ExecuteScalingRule untuk menjalankan aturan penskalaan secara manual.
Tentukan parameter ScheduledAction saat Anda memanggil operasi CreateScheduledTask untuk menjalankan aturan penskalaan sesuai jadwal.
Coba sekarang
Test
RAM authorization
|
Action |
Access level |
Resource type |
Condition key |
Dependent action |
|
ess:CreateScalingRule |
create |
*ScalingGroup
|
None | None |
Parameter permintaan
|
Parameter |
Type |
Required |
Description |
Example |
| ScalingGroupId |
string |
Yes |
ID grup penskalaan tempat aturan penskalaan berada. |
asg-bp1ffogfdauy0jw0**** |
| ScalingRuleName |
string |
No |
Nama aturan penskalaan. Nama harus memiliki panjang 2 hingga 64 karakter dan dapat berisi huruf, angka, garis bawah (_), tanda hubung (-), dan titik (.). Nama harus diawali dengan angka, huruf, atau karakter China. Nama aturan penskalaan harus unik dalam wilayah dan grup penskalaan yang sama di bawah akun Alibaba Cloud yang sama. Jika Anda tidak menentukan parameter ini, nilai ScalingRuleId akan digunakan. |
scalingrule**** |
| Cooldown |
integer |
No |
Waktu pendinginan aturan penskalaan. Parameter ini hanya berlaku untuk aturan penskalaan sederhana. Nilai yang valid: 0 hingga 86400. Satuan: detik. Nilai default: kosong. |
60 |
| MinAdjustmentMagnitude |
integer |
No |
Jumlah minimum instans yang akan disesuaikan. Parameter ini hanya berlaku ketika jenis aturan penskalaan adalah SimpleScalingRule atau StepScalingRule dan AdjustmentType diatur ke PercentChangeInCapacity. |
1 |
| AdjustmentType |
string |
No |
Metode penyesuaian aturan penskalaan. Parameter ini berlaku untuk aturan penskalaan sederhana dan aturan penskalaan bertahap dan wajib dalam kasus tersebut. Nilai yang valid:
|
QuantityChangeInCapacity |
| AdjustmentValue |
integer |
No |
Nilai penyesuaian aturan penskalaan. Parameter ini berlaku untuk aturan penskalaan sederhana dan aturan penskalaan bertahap dan wajib dalam kasus tersebut. Jumlah instans ECS yang disesuaikan dalam satu aktivitas penskalaan tidak boleh melebihi 1.000. Nilai yang valid untuk metode penyesuaian yang berbeda:
|
100 |
| ScalingRuleType |
string |
No |
Jenis aturan penskalaan. Nilai yang valid:
Nilai default: SimpleScalingRule. |
SimpleScalingRule |
| EstimatedInstanceWarmup |
integer |
No |
Periode pemanasan instans. Parameter ini berlaku untuk aturan penskalaan pelacakan target dan aturan penskalaan bertahap. Instans ECS dalam status pemanasan ditambahkan ke grup penskalaan seperti yang diharapkan tetapi tidak melaporkan data pemantauan ke CloudMonitor selama periode ini. Catatan
Saat menghitung secara dinamis jumlah instans ECS untuk di-scale-in atau di-scale-out, instans dalam status pemanasan tidak dihitung dalam jumlah instans yang ada. Nilai yang valid: 0 hingga 86400. Satuan: detik. Nilai default: 300. |
300 |
| MetricName |
string |
No |
Metrik pemantauan yang telah ditentukan. Parameter ini berlaku untuk aturan penskalaan pelacakan target dan aturan penskalaan prediktif dan wajib dalam kasus tersebut. Nilai yang valid untuk aturan penskalaan pelacakan target:
Nilai yang valid untuk aturan penskalaan prediktif:
Untuk informasi lebih lanjut, lihat Tugas yang dipicu peristiwa untuk pemantauan sistem. |
CpuUtilization |
| TargetValue |
number |
No |
Nilai target. Parameter ini berlaku untuk aturan penskalaan pelacakan target dan aturan penskalaan prediktif dan wajib dalam kasus tersebut. Nilai TargetValue dapat memiliki hingga tiga angka desimal dan harus lebih besar dari 0. |
0.125 |
| DisableScaleIn |
boolean |
No |
Menentukan apakah akan menonaktifkan scale-in. Parameter ini hanya berlaku untuk aturan penskalaan pelacakan target. Nilai default: false. |
false |
| ScaleInEvaluationCount |
integer |
No |
Setelah aturan penskalaan pelacakan target dibuat, tugas yang dipicu peristiwa akan dibuat secara otomatis. Parameter ini menentukan jumlah berturut-turut ambang batas kondisional harus terpenuhi sebelum tugas scale-in yang dipicu peristiwa yang sesuai memicu peringatan. Nilai default: 15. |
15 |
| ScaleOutEvaluationCount |
integer |
No |
Setelah aturan penskalaan pelacakan target dibuat, tugas yang dipicu peristiwa akan dibuat secara otomatis. Parameter ini menentukan jumlah berturut-turut ambang batas kondisional harus terpenuhi sebelum tugas scale-out yang dipicu peristiwa yang sesuai memicu peringatan. Nilai default: 3. |
3 |
| PredictiveScalingMode |
string |
No |
Mode aturan penskalaan prediktif. Nilai yang valid:
Nilai default: PredictAndScale. |
PredictAndScale |
| PredictiveValueBehavior |
string |
No |
Metode yang digunakan untuk menangani nilai maksimum untuk aturan penskalaan prediktif. Nilai yang valid:
Nilai default: MaxOverridePredictiveValue. |
MaxOverridePredictiveValue |
| PredictiveValueBuffer |
integer |
No |
Parameter ini hanya berlaku ketika PredictiveValueBehavior diatur ke PredictiveValueOverrideMaxWithBuffer. Nilai prediksi ditingkatkan dengan rasio yang ditentukan. Jika nilai yang ditingkatkan lebih besar dari nilai maksimum awal, nilai yang ditingkatkan akan digunakan. Nilai yang valid: 0 hingga 100. Nilai default: 0. |
50 |
| PredictiveTaskBufferTime |
integer |
No |
Tugas prediksi yang dibuat secara otomatis oleh aturan penskalaan prediktif dijalankan pada awal setiap jam secara default. Anda dapat mengatur waktu buffer untuk menjalankan tugas prediksi lebih awal guna mempersiapkan sumber daya terlebih dahulu. Nilai yang valid: 0 hingga 60. Satuan: menit. Nilai default: 0. |
30 |
| InitialMaxSize |
integer |
No |
Jumlah maksimum instans dalam grup penskalaan. Parameter ini digunakan bersama dengan PredictiveValueBehavior. Nilai default: nilai MaxSize dari grup penskalaan. |
100 |
| StepAdjustments |
array<object> |
No |
Kumpulan informasi penyesuaian bertahap untuk penskalaan instans. |
|
|
object |
No |
Kumpulan informasi penyesuaian bertahap untuk penskalaan instans. |
||
| MetricIntervalUpperBound |
number |
No |
Batas atas langkah. Nilai yang valid: -9.999999E18 hingga 9.999999E18. |
5.0 |
| ScalingAdjustment |
integer |
No |
Jumlah instans yang akan diskalakan untuk langkah tersebut. Parameter ini hanya berlaku untuk aturan penskalaan bertahap. |
1 |
| MetricIntervalLowerBound |
number |
No |
Batas bawah langkah. Parameter ini hanya berlaku untuk aturan penskalaan bertahap. Nilai yang valid: -9.999999E18 hingga 9.999999E18. |
1.0 |
| RegionId |
string |
No |
ID wilayah grup penskalaan. |
cn-hangzhou |
| AlarmDimensions |
array<object> |
No |
Informasi dimensi metrik pemantauan. Parameter ini berlaku untuk aturan penskalaan pelacakan target. Atur parameter ini ketika metrik pemantauan memerlukan informasi dimensi tambahan. Misalnya, metrik LoadBalancerRealServerAverageQps memerlukan informasi key-value dimensi rulePool. |
|
|
object |
No |
Informasi dimensi metrik pemantauan. Parameter ini berlaku untuk aturan penskalaan pelacakan target. Atur parameter ini ketika metrik pemantauan memerlukan informasi dimensi tambahan. Misalnya, metrik LoadBalancerRealServerAverageQps memerlukan informasi key-value dimensi rulePool. |
||
| DimensionKey |
string |
No |
Kunci dimensi yang terkait dengan metrik pemantauan. |
rulePool |
| DimensionValue |
string |
No |
Nilai dimensi yang terkait dengan metrik pemantauan. |
sgp-l1cbirz451yxuxxx |
| MetricType |
string |
No |
Jenis metrik pemantauan. Nilai yang valid:
|
system |
| HybridMonitorNamespace |
string |
No |
ID repositori metrik pemantauan Hybrid Cloud Monitoring. Untuk mengelola repositori metrik pemantauan, lihat Mengelola repositori metrik. |
aliyun-test |
| HybridMetrics |
array<object> |
No |
Pengaturan metrik pemantauan Hybrid Cloud Monitoring. Untuk informasi lebih lanjut tentang cara mengonfigurasi parameter ini, lihat Menggunakan aturan penskalaan pelacakan target kustom berbasis rumus. |
|
|
array<object> |
No |
|||
| Id |
string |
No |
ID referensi metrik dalam ekspresi rumus. |
a |
| Expression |
string |
No |
Ekspresi rumus untuk beberapa metrik Hybrid Cloud Monitoring. Hasil perhitungan ekspresi digunakan untuk memicu penskalaan. Ekspresi harus mematuhi spesifikasi Reverse Polish Notation (RPN) dan hanya mendukung operator |
(a+b)/2 |
| MetricName |
string |
No |
Nama metrik pemantauan dalam repositori metrik pemantauan Hybrid Cloud Monitoring. |
AliyunSmq_NumberOfMessagesVisible |
| Statistic |
string |
No |
Metode statistik metrik. Nilai yang valid:
|
Average |
| Dimensions |
array<object> |
No |
Dimensi metrik. Menentukan sumber daya yang akan dipantau untuk metrik. |
|
|
object |
No |
|||
| DimensionKey |
string |
No |
Kunci dimensi metrik. |
queue |
| DimensionValue |
string |
No |
Nilai dimensi metrik. |
testQueue |
| AlarmOptions |
object |
No |
Definisi properti peringatan. |
|
| Period |
integer |
No |
Periode pengumpulan data metrik pemantauan untuk aturan penskalaan pelacakan target. Satuan: detik. Nilai yang valid: Catatan
Nilai default: 60. |
60 |
Elemen respons
|
Element |
Type |
Description |
Example |
|
object |
|||
| ScalingRuleAri |
string |
Pengidentifikasi unik aturan penskalaan. |
ari:acs:ess:cn-hangzhou:140692647406****:scalingrule/asr-bp1dvirgwkoowxk7**** |
| RequestId |
string |
ID permintaan. |
473469C7-AA6F-4DC5-B3DB-A3DC0DE3**** |
| ScalingRuleId |
string |
ID aturan penskalaan. ID dihasilkan oleh sistem dan bersifat unik secara global. |
asr-bp1dvirgwkoowxk7**** |
Contoh
Respons sukses
JSONformat
{
"ScalingRuleAri": "ari:acs:ess:cn-hangzhou:140692647406****:scalingrule/asr-bp1dvirgwkoowxk7****",
"RequestId": "473469C7-AA6F-4DC5-B3DB-A3DC0DE3****",
"ScalingRuleId": "asr-bp1dvirgwkoowxk7****"
}
Kode kesalahan
Lihat Error Codes untuk daftar lengkap.
Catatan rilis
Lihat Release Notes untuk daftar lengkap.