Dokumen ini menjelaskan cara membuat grup instance terkelola (MIG) berskala otomatis yang otomatis menambahkan dan menghapus VM berdasarkan pemakaian CPU rata-rata di seluruh grup. Misalnya, jika pemakaian CPU grup rendah, grup akan otomatis menghapus VM untuk menghemat biaya.
Anda dapat otomatis menskalakan MIG berdasarkan berbagai jenis sinyal penskalaan otomatis. Untuk mengetahui informasi selengkapnya, lihat ringkasan autoscaler.
Anda juga dapat membaca skenario dasar lainnya untuk membuat MIG.
Sebelum memulai
- Buat template instance, yang diperlukan untuk membuat grup instance terkelola.
-
Siapkan autentikasi jika Anda belum melakukannya.
Autentikasi memverifikasi identitas Anda untuk mengakses Cloud de Confiance by S3NS layanan dan API. Untuk menjalankan
kode atau contoh dari lingkungan pengembangan lokal, Anda dapat melakukan autentikasi ke
Compute Engine dengan memilih salah satu opsi berikut:
Pilih tab untuk melihat bagaimana Anda berencana menggunakan contoh di halaman ini:
Konsol
Saat menggunakan Cloud de Confiance konsol untuk mengakses Cloud de Confiance by S3NS layanan dan API, Anda tidak perlu menyiapkan autentikasi.
gcloud
-
Instal Google Cloud CLI, lalu login ke gcloud CLI dengan identitas gabungan Anda. Setelah login, inisialisasi Google Cloud CLI dengan menjalankan perintah berikut:
gcloud init
-
- Tetapkan region dan zona default.
-
Instal Google Cloud CLI.
-
Konfigurasi gcloud CLI agar menggunakan identitas gabungan Anda.
Untuk mengetahui informasi selengkapnya, lihat Login ke gcloud CLI dengan identitas gabungan Anda.
-
Buat kredensial autentikasi lokal untuk akun pengguna Anda:
gcloud auth application-default login
Jika error autentikasi ditampilkan, dan Anda menggunakan penyedia identitas (IdP) eksternal, pastikan Anda telah login ke gcloud CLI dengan identitas gabungan Anda.
Terraform
Untuk menggunakan contoh Terraform di halaman ini dalam lingkungan pengembangan lokal, instal dan lakukan inisialisasi gcloud CLI, lalu siapkan Kredensial Default Aplikasi dengan kredensial pengguna Anda.
Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
REST
Untuk menggunakan contoh REST API di halaman ini dalam lingkungan pengembangan lokal, gunakan kredensial yang Anda berikan ke gcloud CLI.
Instal Google Cloud CLI, lalu login ke gcloud CLI dengan identitas gabungan Anda.
Untuk mengetahui informasi selengkapnya, lihat Melakukan autentikasi untuk menggunakan REST dalam dokumentasi autentikasi. Cloud de Confiance
Batasan
Untuk melihat daftar lengkap batasan MIG, yang bervariasi berdasarkan konfigurasi yang Anda gunakan, lihat Batasan MIG.
Membuat MIG dan mengaktifkan penskalaan otomatis
Gunakan Cloud de Confiance console, gcloud CLI, Terraform, atau REST.
Konsol
-
Di konsol, buka halaman Grup instance.
Langkah-langkah selanjutnya akan muncul di Cloud de Confiance konsol.
-
Jika Anda memiliki grup instance, pilih grup tersebut dan klik Edit. Jika Anda tidak memiliki grup instance, klik
Create instance group . - Untuk grup instance baru, tetapkan nama, lalu pilih template instance untuk grup instance tersebut atau buat yang baru.
- Jika tidak ada konfigurasi penskalaan otomatis, di bagian Autoscaling, klik Configure penskalaan otomatis.
-
Di bagian
Autoscaling mode , pilih On: add and remove instances to the group untuk mengaktifkan penskalaan otomatis. - Tentukan jumlah minimum dan maksimum instance yang Anda inginkan untuk dibuat oleh autoscaler dalam grup ini.
-
Di bagian Autoscaling metrics, jika metrik CPU utilization yang ada belum ada, tambahkan satu:
-
Klik
Add metric . -
Di bagian
Metric type , pilih CPU utilization. -
Masukkan Target CPU utilization yang diinginkan. Nilai ini diperlakukan sebagai
persentase. Misalnya, untuk pemakaian CPU 75%, masukkan
75. -
Di bagian Predictive autoscaling, pilih
Nonaktif . Untuk mempelajari lebih lanjut penskalaan otomatis prediktif, dan mengetahui kesesuaian penskalaan dengan workload Anda, lihat Penskalaan berdasarkan prediksi. - Klik Done.
-
Klik
- Anda dapat menggunakan Periode inisialisasi untuk menyetel periode inisialisasi, yang akan memberi tahu autoscaler berapa lama 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.
- Untuk membuat MIG, klik
Create .
gcloud
Sebelum dapat mengaktifkan penskalaan otomatis, Anda harus membuat MIG. Ikuti petunjuk untuk membuat MIG dengan VM yang dibatasi pada satu zona atau membuat MIG dengan VM yang tersebar di beberapa zona dalam satu region singkat ini.
Kemudian gunakan sub-perintah
set-autoscaling
untuk mengaktifkan penskalaan otomatis untuk grup. Misalnya, perintah berikut akan membuat autoscaler yang memiliki penggunaan CPU target sebesar 60%. Selain parameter --target-cpu-utilization, parameter --max-num-replicas juga diperlukan saat membuat autoscaler.
Secara opsional, Anda dapat menetapkan --min-num-replicas yang menunjukkan jumlah minimum VM yang Anda inginkan dalam grup. Jika Anda tidak menetapkan minimum, secara default, MIG akan menetapkan nilai ini ke 2.
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.
gcloud compute instance-groups managed set-autoscaling example-managed-instance-group \ --max-num-replicas 20 \ --target-cpu-utilization 0.60 \ --cool-down-period 90
Jika mau, Anda dapat mengaktifkan penskalaan otomatis prediktif untuk meningkatkan skala sebelum beban yang diprediksi. Untuk mempelajari apakah penskalaan otomatis prediktif cocok untuk beban kerja Anda, lihat Penskalaan berdasarkan prediksi.
Anda dapat memverifikasi bahwa penskalaan otomatis berhasil diaktifkan menggunakan
instance-groups managed describe perintah,
yang mendeskripsikan MIG yang sesuai dan memberikan informasi tentang
fitur penskalaan otomatis apa pun untuk grup tersebut:
gcloud compute instance-groups managed describe example-managed-instance-group
Terraform
Sebelum dapat mengaktifkan penskalaan otomatis, Anda harus membuat MIG. Ikuti petunjuk untuk membuat MIG dengan VM yang dibatasi pada satu zona atau membuat MIG dengan VM yang tersebar di beberapa zona dalam satu region.
Untuk mengonfigurasi penskalaan otomatis di MIG, Anda dapat menggunakan google_compute_autoscaler
resource.
Contoh berikut mengonfigurasi penskalaan otomatis berdasarkan pemakaian CPU di MIG zona.
Untuk mempelajari cara menerapkan atau menghapus konfigurasi Terraform, lihat Perintah dasar Terraform.
REST
Sebelum dapat mengaktifkan penskalaan otomatis, Anda harus membuat MIG dengan VM yang dibatasi untuk satu zona atau membuat MIG dengan VM yang tersebar di beberapa zona dalam satu region.
Jika Anda memiliki MIG zona, buat permintaan POST ke metode autoscalers.insert. Jika Anda memiliki MIG regional, gunakan
metode regionAutoscalers.insert.
Contoh:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/autoscalers/
Isi permintaan Anda harus berisi kolom name, target, dan autoscalingPolicy. Kolom autoscalingPolicy harus menentukan nilai cpuUtilization target dan nilai maxNumReplicas Anda.
Secara opsional, Anda dapat menetapkan minNumReplicas yang menunjukkan jumlah minimum VM yang Anda inginkan dalam grup. Jika Anda tidak menetapkan minimum, secara default, MIG akan menetapkan nilai ini ke 2.
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.
{
"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
}
}
Jika mau, Anda dapat mengaktifkan penskalaan otomatis prediktif untuk meningkatkan skala sebelum beban yang diprediksi. Untuk mempelajari apakah penskalaan otomatis prediktif cocok untuk beban kerja Anda, lihat Penskalaan berdasarkan prediksi.
Untuk informasi selengkapnya tentang cara mengaktifkan penskalaan otomatis berdasarkan pemakaian CPU, lihat Penskalaan berdasarkan pemakaian CPU.
Langkah berikutnya
- Pelajari lebih lanjut penskalaan otomatis dan berbagai jenis sinyal penskalaan yang dapat Anda tambahkan ke kebijakan penskalaan otomatis.
- Baca cara Mengelola autoscaler.
- Siapkan autohealing berbasis aplikasi, yang secara berkala memverifikasi bahwa aplikasi Anda merespons seperti yang diharapkan pada setiap VM MIG dan otomatis membuat ulang VM yang tidak responsif.
- Pelajari cara menerapkan konfigurasi baru ke semua atau subset VM di MIG dengan menetapkan dan menerapkan template instance, konfigurasi semua instance, atau konfigurasi per instance.
- Pelajari cara menambahkan frontend load balancer HTTP(S) eksternal ke grup instance. Untuk informasi tentang jenis load balancer lainnya, lihat Ringkasan load balancing.