全部产品
Search
文档中心

Auto Scaling:Buat aturan penskalaan pelacakan target kustom menggunakan rumus

更新时间:Jan 13, 2026

Anda dapat menggunakan rumus untuk menggabungkan beberapa metrik Pemantauan Cloud Hibrida guna membuat aturan penskalaan pelacakan target kustom, sehingga memenuhi kebutuhan bisnis spesifik Anda.

Ikhtisar solusi

Manfaat

  • Mendukung rumus. Anda dapat menggabungkan hingga tiga metrik dalam satu rumus untuk pelacakan yang lebih fleksibel.

  • Mendukung lebih banyak metrik. Solusi ini berbasis Pemantauan Cloud Hibrida dan mendukung lebih banyak metrik untuk pelacakan target dibandingkan aturan yang menggunakan pemantauan sistem. Untuk informasi selengkapnya tentang Pemantauan Cloud Hibrida, lihat Ikhtisar Pemantauan Cloud Hibrida.

Prosedur

Solusi ini memanfaatkan fitur aturan penskalaan pelacakan target dari Auto Scaling dan Pemantauan Cloud Hibrida. Prosedur berikut menjelaskan cara membuat aturan penskalaan pelacakan target kustom.

  1. Rancang solusi penskalaan pelacakan target.

    Pertama, identifikasi metrik Pemantauan Cloud Hibrida yang diperlukan dan rancang solusi penskalaan pelacakan target.

  2. Implementasikan solusi penskalaan.

    Persiapkan metrik Pemantauan Cloud Hibrida yang diperlukan dan buat aturan penskalaan pelacakan target berdasarkan metrik tersebut.

  3. Pantau dan optimalkan solusi secara berkelanjutan.

    Pantau terus aktivitas penskalaan dan perubahan metrik dalam grup penskalaan untuk mengoptimalkan solusi penskalaan.

1. Rancang solusi penskalaan pelacakan target

Pertama, identifikasi metrik Pemantauan Cloud Hibrida yang diperlukan dan rancang solusi penskalaan pelacakan target. Anda dapat menggunakan contoh berikut sebagai referensi.

Untuk informasi tentang metrik yang didukung oleh Pemantauan Cloud Hibrida, lihat Lampiran 1: Metrik pemantauan layanan cloud. Untuk memastikan respons cepat pada pelacakan target, pilih metrik dengan periode statistik minimum 60 detik.
Hasil perhitungan metrik harus menyesuaikan secara proporsional terhadap jumlah instans dalam grup penskalaan. Hal ini memastikan bahwa instans ditambahkan (scale-out) ketika nilai metrik berada di atas nilai target, dan instans dihapus (scale-in) ketika nilai metrik berada di bawah nilai target.

Contoh rancangan solusi

Topik ini menggunakan contoh solusi penskalaan yang secara dinamis menyesuaikan jumlah instans dalam grup penskalaan berdasarkan jumlah pesan aktif dalam antrian Message Service (MNS). Solusi ini dijelaskan sebagai berikut:

  • Hasil yang diharapkan

    Setiap instans dalam grup penskalaan diharapkan memproses rata-rata 3 pesan dalam antrian. Scale-out dipicu jika jumlah pesan meningkat, sedangkan scale-in dipicu jika jumlah pesan kurang dari 3.

  • Implementasi

    Untuk mengimplementasikan fitur ini, Anda memerlukan dua metrik: jumlah pesan aktif dalam antrian Message Service (MNS) (ActiveMessages) dan jumlah instans yang sedang berjalan dalam grup penskalaan (RunningInstanceCount). Anda dapat membuat aturan penskalaan pelacakan target berdasarkan rasio kedua metrik tersebut dan menetapkan nilai target menjadi 3. Hal ini menjaga rasio kedua metrik tetap sekitar 3. Rumusnya adalah: .

2. Implementasikan solusi penskalaan yang dirancang

2.1 Siapkan metrik Pemantauan Cloud Hibrida untuk aturan pelacakan target

Jika Anda telah menyiapkan metrik Pemantauan Cloud Hibrida, lewati langkah ini.
Untuk menggunakan fitur ini, Anda perlu mengaktifkan Pemantauan Cloud Hibrida. Untuk informasi selengkapnya, lihat Aktifkan Pemantauan Cloud Hibrida.

Sebelum membuat aturan penskalaan pelacakan target, Anda harus membuat metrik Pemantauan Cloud Hibrida yang diperlukan untuk dilacak. Prosedurnya sebagai berikut:

  1. Buat repositori metrik.

    Untuk informasi selengkapnya, lihat Buat repositori metrik.

  2. Tambahkan metrik yang akan dilacak.

    Tambahkan metrik yang ingin Anda lacak ke repositori metrik yang telah Anda buat di Langkah 1. Untuk informasi selengkapnya, lihat Kelola tugas ingesti data.

    Catatan

    Untuk memastikan respons cepat pada pelacakan target, pilih metrik dengan periode statistik minimum 60 detik.

Metrik yang diperlukan untuk solusi contoh

Buat repositori metrik bernama ess-metrics-repo-test dan tambahkan dua metrik pemantauan berikut:

  • Metrik Active Messages (ActiveMessages) untuk Message Service (MNS).

    image

  • Metrik Number of Running Instances (RunningInstanceCount) untuk Auto Scaling.

    image

2.2 Buat aturan penskalaan pelacakan target berdasarkan metrik Pemantauan Cloud Hibrida

Buat aturan penskalaan pelacakan target dalam grup penskalaan untuk melacak metrik Pemantauan Cloud Hibrida. Prosedurnya sebagai berikut:

Jika Anda belum membuat grup penskalaan, buat terlebih dahulu. Untuk informasi selengkapnya, lihat Buat grup penskalaan ECS dan Buat grup penskalaan ECI.
Penting

Aturan penskalaan pelacakan target mendukung penskalaan hingga nol instans. Sebelum membuat aturan penskalaan pelacakan target, atur Minimum Number of Instances dan Maximum Number of Instances untuk grup penskalaan. Pengaturan ini menentukan batas penskalaan dan membantu mencegah gangguan layanan atau pembengkakan anggaran.

  1. Navigasi ke halaman pembuatan aturan penskalaan untuk grup penskalaan.

    1. Masuk ke Auto Scaling console.

    2. Di panel navigasi sebelah kiri, klik Scaling Groups.

    3. Di bilah navigasi atas, pilih wilayah.

    4. Temukan grup penskalaan, lalu di kolom Actions, klik View Details.

    5. Klik tab Scaling Rules and Tasks di bagian atas halaman.

    6. Di tab Scaling Rules, klik Create Scaling Rule. Halaman Create Scaling Rule akan ditampilkan.

  2. Di halaman Create Scaling Rule, konfigurasikan parameter berikut.

    Item konfigurasi

    Deskripsi

    Rule Type

    Pilih Target Tracking Rule.

    Metric Type

    Pilih Hybrid Cloud Monitoring.

    Metric Repository

    Pilih repositori metrik yang telah Anda siapkan di Langkah 2.1.

    Metric Description

    Pilih metrik yang telah Anda siapkan di Langkah 2.1 dan resource yang akan dipantau.

    Metric Calculation Expression

    Masukkan ekspresi sesuai kebutuhan. Operator +-*/ dan tanda kurung () didukung.

    Penting
    • Ekspresi perhitungan metrik dapat berisi maksimal tiga metrik berbeda.

    • Hasil perhitungan metrik harus menyesuaikan secara proporsional terhadap jumlah instans dalam grup penskalaan. Hal ini memastikan bahwa instans ditambahkan (scale-out) ketika nilai metrik berada di atas nilai target, dan instans dihapus (scale-in) ketika nilai metrik berada di bawah nilai target.

    Target Value

    Nilai target untuk ekspresi perhitungan metrik. Aturan penskalaan pelacakan target menjaga hasil perhitungan metrik CloudMonitor tetap mendekati nilai target ini.

    Instance Warmup Period

    Unit: detik. Instans dalam status warmup ditambahkan ke grup penskalaan tetapi tidak melaporkan data pemantauan ke CloudMonitor. Saat Auto Scaling menghitung jumlah instans yang akan diskalakan secara dinamis, instans dalam status warmup tidak dihitung sebagai instans yang ada. Hal ini mencegah fluktuasi metrik.

    Scale-out Alert Threshold

    Setelah aturan penskalaan pelacakan target dibuat, tugas berbasis peristiwa akan dibuat secara otomatis. Parameter ini menentukan jumlah kali berturut-turut kondisi ambang batas harus terpenuhi agar tugas berbasis peristiwa scale-out yang dibuat otomatis memicu peringatan.

    Scale-in Alert Threshold

    Setelah aturan penskalaan pelacakan target dibuat, tugas berbasis peristiwa akan dibuat secara otomatis. Parameter ini menentukan jumlah kali berturut-turut kondisi ambang batas harus terpenuhi agar tugas berbasis peristiwa scale-in yang dibuat otomatis memicu peringatan.

    Disable Scale-in

    Menonaktifkan scale-in memengaruhi jumlah tugas berbasis peristiwa yang dibuat secara otomatis:

    • Jika Anda menonaktifkan scale-in, aturan penskalaan pelacakan target hanya membuat satu tugas berbasis peristiwa untuk scale-out. Oleh karena itu, tidak ada instans ECS atau instans ECI yang dihapus dari grup penskalaan.

    • Jika Anda mengizinkan scale-in, aturan penskalaan pelacakan target membuat dua tugas berbasis peristiwa: satu untuk scale-out dan satu untuk scale-in.

    Konfigurasi utama untuk solusi contoh

    Item Konfigurasi

    Contoh

    Metric Type

    Pilih Hybrid Cloud Monitoring.

    Metric Repository

    Pilih repositori metrik yang telah Anda siapkan di Langkah 2.1, yaitu ess-metrics-repo-test.

    Metric Description

    Metrik a:

    • Atur Metric ke AliyunEss_RunningInstanceCount.

    • Atur Monitored Resource ke grup penskalaan saat ini.

    Metrik b:

    • Atur Metric ke AliyunMnsnew_ActiveMessages.

    • Atur Monitored Resource ke antrian MNS yang ingin Anda pantau.

    Metric Calculation Expression

    Masukkan b/a. Ini merepresentasikan jumlah rata-rata pesan yang harus diproses setiap instans.

    Target Value

    Masukkan 3. Ini menunjukkan bahwa setiap instans diharapkan memiliki rata-rata 3 pesan dalam antrian.

  3. Setelah menyelesaikan konfigurasi, klik OK untuk membuat aturan penskalaan pelacakan target.

3. Pantau dan optimalkan solusi secara berkelanjutan

Setelah membuat aturan penskalaan pelacakan target, Anda harus terus memantau grup penskalaan untuk memastikan operasinya sesuai harapan. Anda dapat memeriksa nilai perhitungan metrik, aktivitas penskalaan, dan informasi pemantauan grup penskalaan untuk menentukan apakah grup penskalaan beroperasi sebagaimana mestinya.

Operasi terkait

  • Lihat aturan pelacakan target

    Di tab Scaling Rules and Tasks > Scaling Rules, temukan aturan penskalaan pelacakan target yang telah Anda buat. Anda dapat mengklik ID aturan penskalaan untuk melihat detail aturan penskalaan pelacakan target. Anda juga dapat mengklik tugas berbasis peristiwa terkait untuk melihat informasi pemantauannya.

  • Pantau nilai perhitungan metrik

    Setelah aturan penskalaan pelacakan target dibuat, dua tugas Event-triggered Task (Hybrid Cloud Monitoring) akan dibuat secara otomatis. Di tab Scaling Rules and Tasks > Event-triggered Tasks > Event-triggered Task (Hybrid Cloud Monitoring), temukan tugas berbasis peristiwa yang sesuai dan klik ID-nya untuk membuka halaman detail serta melihat nilai perhitungan metrik.

  • Lihat aktivitas penskalaan

    Di tab Scaling Activities, Anda dapat melihat log aktivitas penskalaan untuk grup penskalaan.

Panggil API untuk membuat aturan penskalaan pelacakan target berdasarkan Pemantauan Cloud Hibrida

Anda dapat memanggil operasi API CreateScalingRule untuk membuat aturan penskalaan pelacakan target berdasarkan Pemantauan Cloud Hibrida. Parameter inti dan contohnya disediakan di bawah ini.

Deskripsi parameter inti

Nama Parameter

Tipe

Deskripsi

Cara mengatur

RegionId

String

ID wilayah tempat grup penskalaan berada.

Atur ke wilayah grup penskalaan target.

ScalingGroupId

string

ID grup penskalaan.

Atur ke ID grup penskalaan yang ingin Anda ubah.

ScalingRuleName

string

Nama aturan penskalaan.

Nama harus terdiri dari 2 hingga 64 karakter, dimulai dengan angka, huruf, atau karakter Tionghoa, serta dapat berisi angka, garis bawah (_), tanda hubung (-), dan titik (.).

Nama setiap aturan penskalaan harus unik dalam Akun Alibaba Cloud yang sama, wilayah yang sama, dan grup penskalaan yang sama.

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

ScalingRuleType

string

Tipe aturan penskalaan.

Untuk membuat aturan penskalaan pelacakan target, atur ke TargetTrackingScalingRule.

DisableScaleIn

boolean

Menentukan apakah scale-in dinonaktifkan. Parameter ini hanya berlaku untuk aturan penskalaan pelacakan target.

  • true: dinonaktifkan.

  • false: tidak dinonaktifkan.

Atur parameter ini sesuai kebutuhan.

TargetValue

integer

Nilai target.

TargetValue dapat memiliki hingga tiga tempat desimal dan harus lebih besar dari 0.

EstimatedInstanceWarmup

integer

Periode warmup instans. Instans ECS dalam status warmup ditambahkan ke grup penskalaan tetapi tidak melaporkan data pemantauan ke CloudMonitor.

Saat Auto Scaling menghitung jumlah instans ECS yang akan diskalakan secara dinamis, instans dalam status warmup tidak dihitung sebagai instans yang ada.

Nilai valid: 0 hingga 86400. Satuan: detik.

Nilai default: 300.

ScaleOutEvaluationCount

integer

Setelah aturan penskalaan pelacakan target dibuat, tugas berbasis peristiwa akan dibuat secara otomatis. Parameter ini menentukan jumlah kali berturut-turut kondisi ambang batas harus terpenuhi agar tugas berbasis peristiwa scale-out yang sesuai memicu peringatan.

Nilai default: 3.

Atur parameter ini sesuai kebutuhan.

ScaleInEvaluationCount

integer

Setelah aturan penskalaan pelacakan target dibuat, tugas berbasis peristiwa akan dibuat secara otomatis. Parameter ini menentukan jumlah kali berturut-turut kondisi ambang batas harus terpenuhi agar tugas berbasis peristiwa scale-in yang sesuai memicu peringatan.

Nilai default: 15.

Atur parameter ini sesuai kebutuhan.

MetricType

string

Tipe metrik.

Untuk membuat aturan penskalaan pelacakan target berdasarkan metrik Pemantauan Cloud Hibrida, atur ke hybrid. Ini menunjukkan bahwa Pemantauan Cloud Hibrida digunakan untuk metrik.

HybridMonitorNamespace

string

ID repositori metrik Pemantauan Cloud Hibrida.

Untuk mengelola repositori metrik, lihat Kelola repositori metrik.

Atur parameter ini sesuai kebutuhan.

HybridMetrics

array<object>

Pengaturan metrik Pemantauan Cloud Hibrida.

Array metrik Pemantauan Cloud Hibrida.

Sub-properti HybridMetrics

Id

string

ID referensi metrik dalam ekspresi perhitungan metrik.

Ini mirip dengan deklarasi variabel yang direferensikan saat Anda menetapkan rumus.

Anda dapat mengatur ke a, b, c, dan seterusnya.

MetricName

string

Nama metrik dalam repositori metrik Pemantauan Cloud Hibrida.

Atur parameter ini sesuai kebutuhan.

Statistic

string

Metode statistik untuk metrik.

Atur parameter ini sesuai kebutuhan. Nilai valid:

  • Average: rata-rata semua titik data dalam interval yang ditentukan.

  • Minimum: nilai minimum semua titik data dalam interval yang ditentukan.

  • Maximum: nilai maksimum semua titik data dalam interval yang ditentukan.

Expression

string

Ekspresi perhitungan metrik untuk beberapa metrik Pemantauan Cloud Hibrida. Hasil ekspresi digunakan untuk memicu aktivitas penskalaan.

Ekspresi harus mengikuti spesifikasi Reverse Polish Notation (RPN) dan hanya mendukung operator + - * /.

Atur parameter ini sesuai kebutuhan.

Dimensions

object

Dimensi metrik. Digunakan untuk menentukan resource yang akan dipantau.

Sub-properti Dimensions

DimensionKey

string

Kunci dimensi metrik.

Atur parameter ini sesuai kebutuhan.

DimensionValue

string

Nilai dimensi metrik.

Atur parameter ini sesuai kebutuhan.

Contoh pemanggilan API

Contoh ini menunjukkan cara memanggil API untuk mengimplementasikan solusi contoh dari Langkah 1.

Untuk mengimplementasikan solusi ini, Anda dapat mengatur parameter berikut.

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

Penjelasan cuplikan JSON inti:

  • Deklarasikan variabel a. Nilai variabel ini adalah nilai metrik AliyunEss_RunningInstanceCount dari repositori metrik ess-metrics-repo-test. ID grup penskalaan ditentukan sebagai asg-bp1******.

    Makna: Jumlah instans yang sedang berjalan dalam grup penskalaan dengan 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******",
  • Deklarasikan variabel b lainnya. Nilai variabel ini adalah nilai AliyunMnsnew_ActiveMessages dari repositori metrik ess-metrics-repo-test. Dimensi metrik ditentukan sebagai region=cn-hangzhou, userId=******, dan queue=test.

    Makna: Jumlah pesan aktif dalam antrian bernama test di wilayah China (Hangzhou) di bawah akun dengan ID pengguna ******.
    "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",
  • Atur rumus perhitungan metrik menjadi b/a.

    Makna: Ini mengimplementasikan rumus .
    "HybridMetrics.3.Id": "Expression",
    "HybridMetrics.3.Expression": "b/a"
  • Atur nilai target untuk hasil rumus.

    Makna: Nilai target untuk hasil rumus adalah 3.
    "TargetValue": 3