Bentuk penskalaan otomatis yang paling sederhana adalah menskalakan grup instance terkelola (MIG) berdasarkan penggunaan CPU instance-nya.
Anda juga dapat menskalakan MIG secara otomatis berdasarkan kapasitas penyaluran load balancing, Metrik pemantauan, atau jadwal.
Sebelum memulai
- Tinjau batasan autoscaler.
- Baca dasar-dasar autoscaler.
-
Jika Anda belum melakukannya, siapkan autentikasi.
Autentikasi adalah
proses verifikasi identitas Anda untuk mengakses layanan dan API Google Cloud.
Untuk menjalankan kode atau contoh dari lingkungan pengembangan lokal, Anda dapat mengautentikasi ke Compute Engine dengan memilih salah satu opsi berikut:
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
Di konsol, buka halaman Grup instance.
Jika Anda memiliki grup instance, pilih grup tersebut dan klik Edit. Jika Anda tidak memiliki grup instance, klik Buat grup instance.
Jika tidak terdapat konfigurasi penskalaan otomatis, klik Konfigurasikan penskalaan otomatis di bagian Penskalaan Otomatis.
Di bagian Mode penskalaan otomatis, pilih Aktif: tambahkan dan hapus instance ke grup untuk mengaktifkan penskalaan otomatis.
Tentukan jumlah minimum dan maksimum instance yang Anda inginkan untuk dibuat oleh autoscaler dalam grup ini.
Di bagian Autoscaling signals, jika metrik CPU utilization yang ada belum ada, tambahkan:
- Klik Tambahkan sinyal.
- Di drop-down Signal type, pilih CPU utilization.
- Masukkan Target CPU utilization yang diinginkan. Nilai ini
diperlakukan sebagai persentase. Misalnya, untuk penggunaan CPU sebesar 75%, masukkan
75
. - Di bagian Penskalaan otomatis prediktif, pilih Nonaktif. Untuk mempelajari lebih lanjut penskalaan otomatis prediktif, dan apakah penskalaan tersebut cocok dengan workload Anda, lihat Penskalaan berdasarkan prediksi.
- Klik Done.
Anda dapat menggunakan Periode inisialisasi untuk memberi tahu autoscaler waktu yang diperlukan aplikasi untuk diinisialisasi. Menentukan periode inisialisasi yang akurat akan meningkatkan keputusan autoscaler. Misalnya, saat penskalaan otomatis, autoscaler mengabaikan data dari VM yang masih melakukan inisialisasi karena VM tersebut mungkin belum mewakili penggunaan normal aplikasi Anda. Periode inisialisasi default adalah 60 detik.
Klik Simpan.
- Pelajari cara mengaktifkan penskalaan otomatis prediktif.
- Pelajari cara mengelola autoscaler.
- Pelajari cara autoscaler membuat keputusan.
- Pelajari cara menggunakan beberapa sinyal penskalaan otomatis untuk menskalakan grup Anda.
REST
Untuk menggunakan contoh REST API di halaman ini dalam lingkungan pengembangan lokal, gunakan kredensial yang Anda berikan ke gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Untuk informasi selengkapnya, lihat Melakukan autentikasi untuk menggunakan REST dalam dokumentasi autentikasi Google Cloud.
Penskalaan berdasarkan penggunaan CPU
Anda dapat melakukan penskalaan otomatis berdasarkan penggunaan CPU rata-rata dari grup instance terkelola (MIG). Kebijakan ini akan memberi tahu autoscaler untuk mengumpulkan penggunaan CPU instance dalam grup dan menentukan apakah perlu untuk melakukan penskalaan. Anda menetapkan target penggunaan CPU yang harus dipertahankan oleh autoscaler dan autoscaler akan berupaya mempertahankan tingkat penggunaan tersebut.
Autoscaler memperlakukan tingkat penggunaan CPU target sebagai pecahan dari penggunaan rata-rata semua vCPU dari waktu ke waktu dalam grup instance. Jika penggunaan rata-rata total vCPU Anda melebihi target penggunaan, autoscaler akan menambahkan lebih banyak instance VM. Jika penggunaan rata-rata total vCPU Anda kurang dari target penggunaan, autoscaler akan menghapus instance. Misalnya, menetapkan target penggunaan sebesar 0,75 akan memberi tahu autoscaler untuk mempertahankan penggunaan rata-rata sebesar 75% di antara semua vCPU dalam grup instance.
Anda juga dapat melakukan penskalaan berdasarkan perkiraan penggunaan CPU. Untuk mengetahui informasi selengkapnya, dan untuk melihat apakah solusi ini cocok dengan workload Anda, lihat Penskalaan berdasarkan prediksi.
Aktifkan penskalaan otomatis berdasarkan penggunaan CPU
Konsol
gcloud
Gunakan sub-perintah
set-autoscaling
untuk mengaktifkan penskalaan otomatis untuk grup instance terkelola. Misalnya, perintah berikut akan membuat autoscaler yang memiliki target penggunaan CPU sebesar 60%. Bersama dengan parameter--target-cpu-utilization
, parameter--max-num-replicas
juga diperlukan saat membuat autoscaler:gcloud compute instance-groups managed set-autoscaling example-managed-instance-group \ --max-num-replicas 20 \ --target-cpu-utilization 0.60 \ --cool-down-period 90
Anda dapat menggunakan flag
--cool-down-period
untuk menetapkan periode inisialisasi, yang akan memberi tahu autoscaler waktu yang diperlukan aplikasi untuk diinisialisasi. Menentukan periode inisialisasi yang akurat akan meningkatkan keputusan autoscaler. Misalnya, saat penskalaan otomatis, autoscaler mengabaikan data dari VM yang masih melakukan inisialisasi karena VM tersebut mungkin belum mewakili penggunaan normal aplikasi Anda. Periode inisialisasi default adalah 60 detik.Secara opsional, Anda dapat mengaktifkan penskalaan otomatis prediktif untuk meningkatkan skala sebelum beban yang diprediksi. Untuk mempelajari apakah penskalaan otomatis prediktif cocok untuk workload Anda, lihat Penskalaan berdasarkan prediksi.
Anda dapat memverifikasi bahwa penskalaan otomatis berhasil diaktifkan menggunakan sub-perintah
instance-groups managed describe
, yang mendeskripsikan grup instance terkelola yang sesuai dan memberikan informasi tentang setiap fitur penskalaan otomatis untuk grup instance tersebut:gcloud compute instance-groups managed describe example-managed-instance-group
Untuk mengetahui daftar perintah dan flag
gcloud
yang tersedia, baca referensigcloud
.REST
Untuk membuat autoscaler, gunakan metode
autoscalers.insert
untuk MIG zona atau metoderegionAutoscalers.insert
untuk MIG regional.Contoh berikut akan membuat autoscaler untuk MIG zona:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/autoscalers/
Isi permintaan Anda harus berisi kolom
name
,target
, danautoscalingPolicy
.autoscalingPolicy
harus menentukancpuUtilization
danmaxNumReplicas
.Anda dapat menggunakan kolom
coolDownPeriodSec
untuk menetapkan periode inisialisasi, yang akan memberi tahu autoscaler waktu yang diperlukan aplikasi untuk diinisialisasi. Menentukan periode inisialisasi yang akurat akan meningkatkan keputusan autoscaler. Misalnya, saat penskalaan otomatis, autoscaler mengabaikan data dari VM yang masih melakukan inisialisasi karena VM tersebut mungkin belum mewakili penggunaan normal aplikasi Anda. Periode inisialisasi default adalah 60 detik.Secara opsional, Anda dapat mengaktifkan penskalaan otomatis prediktif untuk meningkatkan skala sebelum beban yang diprediksi. Untuk mempelajari apakah penskalaan otomatis prediktif cocok untuk workload Anda, lihat Penskalaan berdasarkan prediksi.
{ "name": "example-autoscaler", "target": "https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-f/instanceGroupManagers/example-managed-instance-group", "autoscalingPolicy": { "maxNumReplicas": 10, "cpuUtilization": { "utilizationTarget": 0.6 }, "coolDownPeriodSec": 90 } }
Untuk mengetahui informasi selengkapnya tentang cara mengaktifkan penskalaan otomatis berdasarkan penggunaan CPU, selesaikan tutorial, Menggunakan penskalaan otomatis untuk aplikasi yang sangat skalabel.
Cara autoscaler menangani penggunaan CPU yang berat
Selama periode penggunaan CPU yang berat, jika penggunaan mendekati 100%, autoscaler akan memperkirakan bahwa grup mungkin sudah kelebihan beban. Dalam kasus ini, autoscaler meningkatkan jumlah virtual machine maksimum sebesar 50%.
Langkah berikutnya
Kecuali dinyatakan lain, konten di halaman ini dilisensikan berdasarkan Lisensi Creative Commons Attribution 4.0, sedangkan contoh kode dilisensikan berdasarkan Lisensi Apache 2.0. Untuk mengetahui informasi selengkapnya, lihat Kebijakan Situs Google Developers. Java adalah merek dagang terdaftar dari Oracle dan/atau afiliasinya.
Terakhir diperbarui pada 2024-12-22 UTC.
-