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 dalam cara berikut.
| Jenis penskalaan | Metode | Otomatisasi | Instance utama | Instance kumpulan baca |
|---|---|---|---|---|
| Kategori | 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 Anda. 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 konsol, buka halaman Clusters. Google Cloud
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 perbarui.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 memperbarui 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 konsol, buka halaman Clusters. Google Cloud
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-cool-down-period-seconds=COOLDOWN_PERIOD \
--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.COOLDOWN_PERIOD: jumlah waktu dalam detik yang ditunggu oleh AlloyDB sebelum memperhitungkan penggunaan resource instance kumpulan baca ke dalam algoritma penskalaan otomatis. Nilai default-nya adalah300detik. Untuk mengetahui informasi selengkapnya, lihat Penskalaan otomatis.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.--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-cool-down-period-seconds=COOLDOWN_PERIOD \
--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.COOLDOWN_PERIOD: jumlah waktu dalam detik yang ditunggu oleh AlloyDB sebelum memperhitungkan penggunaan resource instance kumpulan baca ke dalam algoritma penskalaan otomatis. Nilai default-nya adalah300detik. Untuk mengetahui informasi selengkapnya, lihat Penskalaan otomatis.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 digunakan autoscaler untuk menskalakan instance kumpulan baca saat jadwal aktif.DESCRIPTION: deskripsi teks opsional untuk jadwal.CPU_COUNT: Jumlah vCPU N2 yang Anda inginkan untuk instance.--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-cool-down-period-seconds=COOLDOWN_PERIOD \
--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}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 memperbarui 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 memperbarui kebijakan yang ada, gunakan perintah gcloud beta alloydb instances update. Misalnya, untuk memperbarui target penggunaan CPU, jalankan:
gcloud beta alloydb instances update INSTANCE_ID \
--region=REGION_ID \
--cluster=CLUSTER_ID \
--project=PROJECT_ID \
--enable-autoscaler \
--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, 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 memperbarui 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 \
--enable-autoscaler \
--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 diperbarui. Jika nama yang diberikan cocok dengan jadwal yang ada, perintah akan memperbarui setelan jadwal tersebut. Jika nama tersebut tidak ada, perintah akan membuat jadwal baru dengan nama ini.
Cara kebijakan penskalaan otomatis dievaluasi
Jika 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 penskalaan hingga empat node, sedangkan kebijakan berbasis jadwal merekomendasikan tiga node. Autoscaler menskalakan instance ke empat node.
Penskalaan otomatis
Selain menskalakan otomatis instance kumpulan baca, AlloyDB juga menskalakan otomatis instance Anda saat Anda tidak memerlukan banyak node baca untuk mendukung alur kerja. Saat penskalaan otomatis terjadi, AlloyDB akan menskalakan jumlah node Anda ke nilai yang Anda tetapkan untuk kolom --read-pool-node-count.
Untuk menentukan kapan instance kumpulan baca Anda harus diskalakan, AlloyDB akan menunggu hingga jadwal penskalaan otomatis Anda tidak aktif atau penggunaan CPU Anda kurang dari target penggunaan Anda untuk jangka waktu yang lebih lama dari dua opsi berikut:
- 10 menit
- Jumlah waktu dalam detik yang ditetapkan oleh kolom
--autoscaler-cool-down-period-seconds.
Misalnya, jika Anda menetapkan --autoscaler-cool-down-period-seconds ke 660 detik saat membuat instance kumpulan baca, AlloyDB akan menunggu jadwal penskalaan otomatis Anda tidak aktif atau penggunaan CPU Anda kurang dari target penggunaan Anda selama 11 menit sebelum menskalakan otomatis instance Anda.
Untuk mengetahui informasi selengkapnya tentang penskalaan otomatis, lihat Memahami keputusan autoscaler.
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 diskalakan otomatis oleh autoscaler dalam instance.
Konsol
DI konsol, buka halaman Clusters. Google Cloud
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 perbarui.REGION_ID: region tempat instance ditempatkan.CLUSTER_ID: ID cluster tempat instance ditempatkan.PROJECT_ID: ID project tempat cluster ditempatkan.