Pelajari cara mengaktifkan instance tidak ada aktivitas untuk layanan Anda dengan mengonfigurasi setelan instance minimum.
Secara default, penayangan Knative melakukan penskalaan hingga jumlah instance berdasarkan jumlah permintaan yang masuk. Namun, jika layanan Anda memerlukan latensi yang lebih rendah dan Anda ingin membatasi jumlah cold start, perilaku default ini dapat diubah dengan menentukan jumlah minimum instance container yang harus tetap berjalan dan siap untuk melayani permintaan.
Instance yang terus berjalan dengan cara ini akan dikenai biaya penagihan.
Revisi dan instance minimum
Instance minimum dimulai hanya jika revisi dapat ditangani. Revisi dapat ditangani jika salah satu hal berikut terpenuhi:
- Program ini menerima persentase traffic.
- URL tersebut diberi tag revisi.
Menetapkan dan mengupdate instance minimum
Setiap perubahan konfigurasi akan menghasilkan suatu revisi baru. Revisi berikutnya juga akan otomatis mendapatkan setelan konfigurasi ini, kecuali jika Anda melakukan pembaruan eksplisit untuk mengubahnya.
Secara default, instance container telah min-instances
menonaktifkan, dengan setelan
di 0
. Anda dapat mengubah perilaku default ini menggunakan konsol Google Cloud,
atau Google Cloud CLI saat men-deploy layanan baru atau memperbarui layanan yang ada dan
men-deploy revisi:
Konsol
Buka penayangan Knative di konsol Google Cloud:
Klik Buat Layanan jika Anda mengonfigurasi layanan baru yang akan di-deploy. Jika Anda mengonfigurasi layanan yang sudah ada, klik layanan tersebut, lalu klik Edit & Deploy New Revision.
Di bagian Setelan lanjutan, klik Penampung.
Di kolom berlabel Jumlah minimum instance, tentukan jumlah instance container yang diinginkan agar tetap aktif dan siap menerima permintaan.
Klik Berikutnya untuk melanjutkan ke bagian berikutnya.
Di bagian Configure how this service is triggered, pilih konektivitas yang ingin Anda gunakan untuk memanggil layanan.
Klik Create untuk men-deploy image ke layanan Knative dan tunggu deployment selesai.
Command line
Untuk layanan yang ada, tetapkan jumlah minimum instance penampung dengan menjalankan perintah
gcloud run services update
dengan parameter--min-instances
:gcloud run services update SERVICE --min-instances MIN-VALUE
Ganti:
- SERVICE dengan nama layanan Anda.
- MIN-VALUE dengan jumlah instance container yang diinginkan yang akan tetap aktif, siap untuk menerima permintaan. Tentukan
default
untuk menghapus semua setelan instance minimum.
Untuk layanan baru, tetapkan jumlah minimum instance penampung dengan menjalankan perintah
gcloud run deploy
dengan parameter--min-instances
:gcloud run deploy SERVICE --image=IMAGE_URL --min-instances MIN-VALUE
Ganti:
- SERVICE dengan nama layanan Anda.
- IMAGE_URL dengan referensi ke image container,
misalnya,
gcr.io/cloudrun/hello
. - MIN-VALUE dengan jumlah instance
container yang diinginkan agar tetap aktif, siap menerima permintaan. Tentukan
default
untuk menghapus semua setelan instance minimum.
YAML
Anda dapat mendownload konfigurasi layanan yang ada ke dalam
file YAML dengan perintah gcloud run services describe
menggunakan
tanda --format=export
.
Kemudian, Anda dapat mengubah file YAML tersebut dan men-deploy
perubahan tersebut dengan perintah gcloud run services replace
.
Anda harus memastikan bahwa Anda hanya mengubah atribut yang ditentukan.
Download konfigurasi layanan Anda ke file bernama
service.yaml
di ruang kerja lokal:gcloud run services describe SERVICE --format export > service.yaml
Ganti SERVICE dengan nama layanan penayangan Knative Anda.
Dalam file lokal, perbarui atribut
autoscaling.knative.dev/minScale:
:spec: template: metadata: annotations: autoscaling.knative.dev/minScale: 'MIN-INSTANCE'
Ganti:
- MIN-VALUEcode> dengan jumlah instance penampung yang diinginkan yang akan tetap aktif, siap menerima permintaan. Tentukan
default
untuk menghapus semua setelan instance minimum.
- MIN-VALUEcode> dengan jumlah instance penampung yang diinginkan yang akan tetap aktif, siap menerima permintaan. Tentukan
Ganti layanan dengan konfigurasi barunya menggunakan perintah berikut:
gcloud run services replace service.yaml