Anda dapat menskalakan instance AlloyDB untuk menyesuaikan kapasitas dan performa cluster guna memenuhi perubahan permintaan workload. Penskalaan membantu mengelola biaya dan memfasilitasi penanganan lonjakan traffic.
Anda dapat menskalakan instance AlloyDB dengan beberapa cara seperti yang dirangkum berikut.
| Jenis penskalaan | Metode | Otomatisasi | Instance utama | Instance kumpulan baca |
|---|---|---|---|---|
| Vertikal | Mengubah jenis mesin | Manual | Didukung | Didukung |
| Horizontal | Mengubah jumlah node | Manual dan otomatis | Tidak didukung | Didukung |
Sebelum memulai
- Project yang Anda gunakan harus diaktifkan untuk mengakses AlloyDB. Google Cloud
- Anda harus memiliki salah satu peran IAM berikut di Google Cloud project yang Anda gunakan:
roles/alloydb.admin(peran IAM bawaan Admin AlloyDB)roles/owner(peran IAM dasar Pemilik)roles/editor(peran IAM dasar Editor)
Jika Anda tidak memiliki salah satu peran ini, hubungi Administrator Organisasi Anda untuk meminta akses.
Penskalaan manual
Bagian ini menjelaskan metode manual untuk menskalakan instance AlloyDB. Misalnya, Anda dapat menskalakan instance secara vertikal dengan mengubah jenis mesinnya dan menskalakan instance kumpulan baca secara horizontal dengan mengubah jumlah node-nya.
Menskalakan jenis mesin instance
Anda dapat menskalakan instance utama dan kumpulan baca secara vertikal dengan mengubah jenis mesin instance, yang akan mengubah vCPU dan RAM-nya.
Konsol
Di Google Cloud konsol, buka halaman Clusters.
Klik cluster di kolom Resource Name.
Di halaman Overview, buka bagian Instances in your cluster, lalu klik Edit primary atau Edit read pool.
Pilih salah satu seri mesin berikut:
- C4A (seri mesin berbasis Google Axion)
- N2 (seri mesin berbasis x86). Ini adalah seri mesin default.
- C4 (seri mesin berbasis x86)
- Z3 (seri mesin berbasis Intel Xeon)
Pilih jenis mesin.
- C4A mendukung 1, 2, 4, 8, 16, 32, 48, 64, dan 72 vCPU.
- N2 mendukung 2, 4, 8, 16, 32, 64, 96, dan 128 vCPU.
- C4 mendukung 4, 8, 16, 24, 32, 48, 96, 144, 192, dan 288 vCPU.
- Z3 mendukung 8, 14, 16, 22, 32, 44, dan 88 vCPU.
Untuk mengetahui informasi selengkapnya tentang penggunaan seri mesin berbasis Axion C4A, termasuk jenis mesin 1 vCPU, lihat Pertimbangan saat menggunakan seri mesin berbasis Axion C4A.
Klik Update instance atau Update read pool.
gcloud
Untuk menggunakan gcloud CLI, Anda dapat menginstal dan melakukan inisialisasi Google Cloud CLI, atau Anda dapat menggunakan Cloud Shell.
Gunakan gcloud alloydb instances update
perintah untuk mengubah jenis mesin instance utama.
gcloud alloydb instances update INSTANCE_ID \
--cpu-count=CPU_COUNT \
--machine-type=MACHINE_TYPE \
--region=REGION_ID \
--cluster=CLUSTER_ID \
--project=PROJECT_IDGanti kode berikut:
INSTANCE_ID: ID instance yang Anda update.CPU_COUNT: Jumlah vCPU N2 yang Anda inginkan untuk instance. N2 adalah default. Nilai yang valid mencakup berikut ini:2: 2 vCPU, RAM 16 GB4: 4 vCPU, RAM 32 GB8: 8 vCPU, RAM 64 GB16: 16 vCPU, RAM 128 GB32: 32 vCPU, RAM 256 GB64: 64 vCPU, RAM 512 GB96: 96 vCPU, RAM 768 GB128: 128 vCPU, RAM 864 GB
MACHINE_TYPE: Opsional. Pilih dari daftar jenis mesin yang didukung sepertin2-highmem-4,c4-highmem-4-lssd, atauc4a-highmem-4-lssd. Untuk mengetahui informasi selengkapnya, lihat Memilih jenis mesin AlloyDB.Jika Anda menggunakan
MACHINE_TYPEdanCPU_COUNTbersama-sama, nilai dalamCPU_COUNTdanMACHINE_TYPEharus cocok, jika tidak, Anda akan mendapatkan error.REGION_ID: Region tempat instance ditempatkan.CLUSTER_ID: ID cluster tempat instance ditempatkan.PROJECT_ID: ID project tempat cluster ditempatkan.
Jika perintah menampilkan pesan error yang menyertakan frasa invalid cluster state MAINTENANCE, berarti cluster sedang menjalani pemeliharaan rutin. Hal ini untuk sementara tidak mengizinkan konfigurasi ulang instance.
Jalankan perintah lagi setelah cluster kembali ke status READY.
Untuk memeriksa status cluster, lihat Melihat detail cluster.
Mempercepat update jenis mesin
Untuk mengupdate jenis mesin lebih cepat, gunakan opsi FORCE_APPLY
dengan perintah gcloud beta alloydb instances update.
gcloud beta alloydb instances update INSTANCE_ID \
--cpu-count=CPU_COUNT \
--machine-type=MACHINE_TYPE \
--region=REGION_ID \
--cluster=CLUSTER_ID \
--project=PROJECT_ID \
--update-mode=FORCE_APPLYInstance mengalami periode nonaktif selama sekitar satu menit.
Jenis mesin instance berubah setelah 10 hingga 15 menit.
Menskalakan jumlah node instance kumpulan baca
AlloyDB memungkinkan Anda menskalakan jumlah node dalam instance kumpulan baca tanpa periode nonaktif di tingkat instance. Saat Anda meningkatkan jumlah node, koneksi klien tidak akan terpengaruh.
Saat Anda mengurangi jumlah node, klien yang terhubung ke node yang sedang dimatikan dapat terhubung kembali ke node lain menggunakan endpoint instance.
Konsol
Di Google Cloud konsol, buka halaman Clusters.
Klik cluster di kolom Resource Name.
Di halaman Overview, buka bagian Instances in your cluster, lalu klik Edit read pool.
Di kolom Node count, masukkan jumlah node.
Klik Update read pool.
gcloud
Untuk menggunakan gcloud CLI, Anda dapat menginstal dan melakukan inisialisasi Google Cloud CLI, atau Anda dapat menggunakan Cloud Shell.
Gunakan perintah gcloud alloydb instances update untuk mengubah jumlah node dalam instance kumpulan baca.
gcloud alloydb instances update INSTANCE_ID \
--read-pool-node-count=NODE_COUNT \
--region=REGION_ID \
--cluster=CLUSTER_ID \
--project=PROJECT_ID \INSTANCE_ID: ID instance kumpulan baca.NODE_COUNT: jumlah node dalam instance kumpulan baca. Tentukan angka1hingga20, inklusif. Perhatikan bahwa Anda tidak dapat memiliki lebih dari 20 node di semua instance kumpulan baca dalam cluster.REGION_ID: region tempat instance berada.CLUSTER_ID: ID cluster tempat instance berada.PROJECT_ID: ID project tempat cluster berada.
Jika perintah menampilkan pesan error yang menyertakan frasa invalid cluster state MAINTENANCE, berarti cluster sedang menjalani pemeliharaan rutin. Hal ini untuk sementara tidak mengizinkan konfigurasi ulang instance.
Jalankan perintah lagi setelah cluster kembali ke status READY. Untuk
memeriksa status cluster, lihat Melihat detail cluster.
Menskalakan otomatis instance kumpulan baca
Penskalaan otomatis kumpulan baca AlloyDB memungkinkan Anda mengubah jumlah node baca secara otomatis dan adaptif berdasarkan penggunaan resource real-time. Hal ini membantu Anda menangani perubahan penggunaan dan mengurangi pengeluaran.
Anda dapat mengonfigurasi penskalaan otomatis menggunakan kebijakan berikut:
- Berbasis penggunaan CPU: menskalakan jumlah node berdasarkan target penggunaan CPU.
- Berbasis jadwal: menskalakan jumlah node ke jumlah minimum selama jangka waktu yang ditentukan.
Anda dapat menggunakan kebijakan ini bersama-sama. Jika beberapa kebijakan aktif, autoscaler akan memilih kebijakan yang merekomendasikan jumlah node tertinggi.
Batasan
Autoscaler kumpulan baca memiliki batasan berikut:
- Distribusi beban untuk koneksi yang berjalan lama: untuk menetapkan distribusi traffic yang merata dan menggunakan sepenuhnya kapasitas tambahan dari penskalaan otomatis, sebaiknya buat koneksi klien baru. Autoscaler tidak menghentikan koneksi yang berjalan lama saat menambahkan node baru, sehingga traffic dari koneksi tersebut tidak dirutekan ke node yang baru ditambahkan.
- Pemanasan cache untuk node baru: saat autoscaler menambahkan node baru, mungkin perlu waktu beberapa menit agar node tersebut memanaskan cache-nya dan mencapai performa kueri puncak.
Mengaktifkan penskalaan otomatis pada instance kumpulan baca baru
Anda dapat mengaktifkan dan mengonfigurasi penskalaan otomatis saat membuat instance kumpulan baca menggunakan kebijakan berbasis CPU, kebijakan berbasis jadwal, atau keduanya.
Membuat instance kumpulan baca dengan kebijakan berbasis CPU
Untuk membuat instance kumpulan baca dengan kebijakan penskalaan otomatis berdasarkan target penggunaan CPU, jalankan perintah berikut:
gcloud beta alloydb instances create INSTANCE_ID \
--instance-type=READ_POOL \
--read-pool-node-count=NODE_COUNT \
--region=REGION_ID \
--cluster=CLUSTER_ID \
--project=PROJECT_ID \
--enable-autoscaler \
--autoscaler-max-node-count=MAX_NODE_COUNT \
--autoscaler-target-cpu-usage=TARGET_CPU_USAGE \
{--cpu-count=CPU_COUNT | --machine-type=MACHINE_TYPE}Ganti kode berikut:
INSTANCE_ID: ID instance kumpulan baca.READ_POOL: menentukan jenis instance.NODE_COUNT: jumlah minimum node yang dapat dibuat oleh autoscaler di instance kumpulan baca. Tentukan angka1hingga20, inklusif. Anda tidak dapat memiliki lebih dari 20 node di semua instance kumpulan baca dalam cluster.REGION_ID:region tempat instance ditempatkan.CLUSTER_ID: ID cluster tempat instance ditempatkan.PROJECT_ID: ID project tempat cluster ditempatkan.MAX_NODE_COUNT: jumlah maksimum node yang dapat dibuat oleh autoscaler di instance kumpulan baca. Jumlah total node di semua instance kumpulan baca dalam satu cluster tidak boleh melebihi 20.TARGET_CPU_USAGE: target penggunaan CPU untuk instance kumpulan baca Anda, yang dinyatakan sebagai nilai desimal antara 0,0 dan 1,0. Misalnya, 0,7 untuk 70%.CPU_COUNT: Jumlah vCPU N2 yang Anda inginkan untuk instance. Salah satu dari--cpu-countatau--machine-typeharus ditentukan.MACHINE_TYPE: pilih dari daftar jenis mesin yang didukung sepertin2-highmem-4,c4-highmem-4-lssd, atauc4a-highmem-4-lssd. Untuk mengetahui informasi selengkapnya, lihat Memilih jenis mesin AlloyDB.
Membuat instance kumpulan baca dengan kebijakan berbasis jadwal
Untuk membuat instance kumpulan baca dengan kebijakan penskalaan otomatis berbasis jadwal yang menentukan jumlah minimum node untuk jangka waktu tertentu, jalankan perintah berikut:
gcloud beta alloydb instances create INSTANCE_ID \
--instance-type=READ_POOL \
--read-pool-node-count=NODE_COUNT \
--region=REGION_ID \
--cluster=CLUSTER_ID \
--project=PROJECT_ID \
--enable-autoscaler \
--autoscaler-max-node-count=MAX_NODE_COUNT \
--autoscaler-set-schedule=SCHEDULE_NAME \
--autoscaler-schedule-cron-exp=CRON_EXPRESSION \
--autoscaler-schedule-duration-seconds=DURATION_SECONDS \
--autoscaler-schedule-time-zone=TIME_ZONE \
--autoscaler-schedule-min-node-count=MIN_NODE_COUNT \
--autoscaler-schedule-description="DESCRIPTION"
{--cpu-count=CPU_COUNT | --machine-type=MACHINE_TYPE}Ganti kode berikut:
MAX_NODE_COUNT: jumlah maksimum node yang dapat dibuat oleh autoscaler di instance kumpulan baca. Jumlah total node di semua instance kumpulan baca dalam satu cluster tidak boleh melebihi 20.SCHEDULE_NAME: nama unik untuk jadwal penskalaan.CRON_EXPRESSION: jadwal dalam format cron yang menentukan waktu mulai peristiwa penskalaan.DURATION_SECONDS: durasi dalam detik jadwal tetap aktif setelah dimulai. Setelah periode ini, instance akan diperkecil skalanya ke jumlah node yang ditentukan oleh kebijakan lain atau konfigurasi aslinya.TIME_ZONE: zona waktu opsional untuk jadwal. Misalnya,America/Los_Angeles.MIN_NODE_COUNT: jumlah minimum node yang akan diskalakan oleh autoscaler ke instance kumpulan baca saat jadwal aktif.DESCRIPTION: deskripsi teks opsional untuk jadwal.CPU_COUNT: Jumlah vCPU N2 yang Anda inginkan untuk instance. Salah satu dari--cpu-countatau--machine-typeharus ditentukan.MACHINE_TYPE: pilih dari daftar jenis mesin yang didukung sepertin2-highmem-4,c4-highmem-4-lssd, atauc4a-highmem-4-lssd. Untuk mengetahui informasi selengkapnya, lihat Memilih jenis mesin AlloyDB.
Membuat instance kumpulan baca dengan kebijakan berbasis CPU dan jadwal
Untuk membuat instance kumpulan baca dengan kebijakan penskalaan otomatis berbasis CPU dan jadwal, jalankan perintah berikut:
gcloud beta alloydb instances create INSTANCE_ID \
--instance-type=READ_POOL \
--read-pool-node-count=NODE_COUNT \
--region=REGION_ID \
--cluster=CLUSTER_ID \
--project=PROJECT_ID \
--enable-autoscaler \
--autoscaler-max-node-count=MAX_NODE_COUNT \
--autoscaler-target-cpu-usage=TARGET_CPU_USAGE \
--autoscaler-set-schedule=SCHEDULE_NAME \
--autoscaler-schedule-cron-exp=CRON_EXPRESSION \
--autoscaler-schedule-duration-seconds=DURATION_SECONDS \
--autoscaler-schedule-time-zone=TIME_ZONE \
--autoscaler-schedule-min-node-count=MIN_NODE_COUNT \
--autoscaler-schedule-description="DESCRIPTION"
{--cpu-count=CPU_COUNT | --machine-type=MACHINE_TYPE}Ganti TARGET_CPU_USAGE dengan target penggunaan CPU untuk instance kumpulan baca Anda, yang dinyatakan sebagai nilai desimal antara 0,0 dan 1,0.
Untuk mengetahui deskripsi placeholder yang digunakan dalam perintah ini, lihat Membuat instance kumpulan baca dengan kebijakan berbasis CPU dan Membuat instance kumpulan baca dengan kebijakan berbasis jadwal.
Mengaktifkan atau mengupdate penskalaan otomatis pada instance kumpulan baca yang ada
Anda dapat mengaktifkan, menonaktifkan, atau mengubah setelan penskalaan otomatis pada instance kumpulan baca yang ada.
Untuk mengaktifkan penskalaan otomatis untuk pertama kalinya pada instance yang ada, atau untuk mengupdate kebijakan yang ada, gunakan perintah gcloud beta alloydb instances update. Misalnya, untuk mengupdate target penggunaan CPU, jalankan:
gcloud beta alloydb instances update INSTANCE_ID \
--region=REGION_ID \
--cluster=CLUSTER_ID \
--project=PROJECT_ID \
--autoscaler-target-cpu-usage=NEW_TARGET_CPU_USAGEGanti NEW_TARGET_CPU_USAGE dengan target penggunaan CPU baru yang ingin Anda tetapkan untuk instance kumpulan baca Anda, yang dinyatakan sebagai nilai desimal antara 0,0 dan 1,0.
Untuk menambahkan jadwal kedua ke konfigurasi yang ada, jalankan perintah update dengan nama jadwal baru. Jika nama jadwal sudah ada, perintah akan mengupdate jadwal yang ada. Jika tidak, perintah akan membuat jadwal baru.
gcloud beta alloydb instances update INSTANCE_ID \
--region=REGION_ID \
--cluster=CLUSTER_ID \
--project=PROJECT_ID \
--autoscaler-set-schedule=NEW_SCHEDULE_NAME \
--autoscaler-schedule-cron-exp=CRON_EXPRESSION \
--autoscaler-schedule-duration-seconds=DURATION_SECONDS \
--autoscaler-schedule-min-node-count=MIN_NODE_COUNTGanti NEW_SCHEDULE_NAME dengan nama unik untuk jadwal penskalaan baru atau yang diupdate. Jika nama yang diberikan cocok dengan jadwal yang ada, perintah akan mengupdate setelan jadwal tersebut. Jika nama tersebut tidak ada, perintah akan membuat jadwal baru dengan nama ini.
Cara kebijakan penskalaan otomatis dievaluasi
Saat beberapa kebijakan penskalaan otomatis aktif, autoscaler akan mengevaluasi setiap kebijakan dan memilih kebijakan yang merekomendasikan jumlah node tertinggi.
Misalnya, pertimbangkan konfigurasi dengan dua kebijakan:
- Kebijakan berbasis CPU dengan target penggunaan 60%.
- Kebijakan berbasis jadwal yang memerlukan minimal tiga node pada hari kerja antara pukul 08.00 dan 17.00.
Jika hari kerja pada siang hari dan penggunaan CPU adalah 80%, kebijakan berbasis CPU mungkin merekomendasikan peningkatan skala hingga empat node, sedangkan kebijakan berbasis jadwal merekomendasikan tiga node. Autoscaler akan menskalakan instance ke empat node.
Menonaktifkan penskalaan otomatis
Untuk menonaktifkan penskalaan otomatis, gunakan flag no-enable-autoscaler. Tindakan ini akan mereset kumpulan baca ke jumlah node aslinya sebelum penskalaan otomatis diaktifkan.
gcloud beta alloydb instances update INSTANCE_ID \
--region=REGION_ID \
--cluster=CLUSTER_ID \
--project=PROJECT_ID \
--no-enable-autoscalerMelihat jumlah node yang diskalakan otomatis
Anda dapat melihat jumlah node yang telah diskalakan oleh autoscaler dalam instance.
Konsol
Di Google Cloud konsol, buka halaman Clusters.
Klik cluster di kolom Resource Name.
Di menu Navigasi, klik System insights.
Pilih instance dari daftar drop-down Instance.
Lihat jumlah node di bagian Active node count.
gcloud
Untuk menggunakan gcloud CLI, Anda dapat menginstal dan melakukan inisialisasi Google Cloud CLI, atau Anda dapat menggunakan Cloud Shell.
Gunakan gcloud alloydb instances describe
perintah untuk melihat daftar node dalam instance.
gcloud alloydb instances describe INSTANCE_ID \
--region=REGION_ID \
--cluster=CLUSTER_ID \
--project=PROJECT_ID \
--view=FULL \
--format="yaml(nodes)"Ganti kode berikut:
INSTANCE_ID: ID instance yang Anda update.REGION_ID: region tempat instance ditempatkan.CLUSTER_ID: ID cluster tempat instance ditempatkan.PROJECT_ID: ID project tempat cluster ditempatkan.