Menggunakan instance minimum

Pelajari cara mengaktifkan instance nonaktif untuk layanan Anda dengan mengonfigurasi instance minimum setelan instance.

Secara default, penyaluran Knative penskalaan hingga jumlah instance berdasarkan jumlah permintaan masuk. Namun, jika layanan Anda memerlukan pengurangan latensi dan Anda ingin membatasi jumlah cold start, Anda dapat mengubah perilaku {i>default<i} ini dengan menentukan jumlah minimum instance container agar tetap berjalan dan siap melayani permintaan.

Instance yang tetap berjalan dengan cara ini menimbulkan biaya penagihan.

Revisi dan instance minimum

Instance minimum dimulai hanya jika revisi dapat ditangani. Revisi dapat ditangani jika salah satu hal berikut terpenuhi:

  • Aplikasi menerima persentase traffic.
  • Sudah 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 setelan default ini menggunakan konsol Google Cloud, atau Google Cloud CLI saat Anda men-deploy service atau memperbarui layanan yang ada dan men-deploy revisi:

Konsol

  1. Buka penyaluran Knative di Konsol Google Cloud:

    Buka penayangan Knative

  2. Klik Buat Layanan jika Anda mengonfigurasi layanan baru yang akan di-deploy. Jika Anda mengonfigurasi layanan yang ada, klik layanan, lalu klik Edit & Deploy Revisi Baru.

  3. Di bagian Setelan lanjutan, klik Penampung.

  4. Di kolom berlabel Jumlah minimum instance, tentukan jumlah instance container yang diinginkan agar tetap aktif dan siap menerima permintaan.

  5. Klik Berikutnya untuk melanjutkan ke bagian berikutnya.

  6. Di bagian Konfigurasi cara layanan ini dipicu, memilih konektivitas yang ingin Anda gunakan untuk memanggil layanan.

  7. Klik Create untuk men-deploy image ke inferensi Knative, lalu tunggu hingga deployment selesai.

Command line

  • Untuk layanan yang ada, tetapkan jumlah minimum instance container dengan menjalankan perintah gcloud run services update dengan --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 container dengan menjalankan perintah gcloud run deploy dengan --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 tetap aktif, sehingga siap untuk menerima permintaan. Tentukan default untuk menghapus semua setelan instance minimum.

YAML

Anda dapat mendownload konfigurasi layanan yang ada ke YAML dengan perintah gcloud run services describe menggunakan Tanda --format=export. Anda kemudian dapat memodifikasi file YAML itu dan men-deploy perubahan tersebut dengan perintah gcloud run services replace. Anda harus memastikan bahwa Anda hanya mengubah atribut yang ditentukan.

  1. Download konfigurasi layanan Anda menjadi file bernama service.yaml pada ruang kerja lokal:

    gcloud run services describe SERVICE --format export > service.yaml

    Ganti SERVICE dengan nama Anda Layanan penyaluran Knative.

  2. Di file lokal Anda, perbarui autoscaling.knative.dev/minScale: :

    spec:
     template:
       metadata:
         annotations:
           autoscaling.knative.dev/minScale: 'MIN-INSTANCE' 

    Ganti:

    • MIN-VALUEcode&gt; dengan jumlah instance container tetap aktif, sehingga siap untuk menerima permintaan. Tentukan default untuk menghapus semua setelan instance minimum.
  3. Ganti layanan dengan konfigurasi barunya menggunakan perintah berikut:

    gcloud run services replace service.yaml