Menerapkan rekomendasi jenis mesin ke MIG


Compute Engine memberikan rekomendasi jenis mesin untuk grup instance terkelola (MIG) guna membantu Anda meningkatkan performa workload dan efisiensi biaya. Gunakan rekomendasi ini untuk menentukan apakah Anda harus mengubah ukuran jenis mesin instance untuk menambah atau menghapus vCPU dan resource memori.

Untuk mempelajari lebih lanjut jenis mesin yang tersedia untuk instance VM, baca dokumentasi jenis mesin.

Rekomendasi jenis mesin juga dikenal sebagai rekomendasi penyesuaian ukuran.

Sebelum memulai

  • Baca dokumentasi Konsol Google Cloud.
  • Jika Anda belum melakukannya, siapkan autentikasi. Authentication adalah proses yang digunakan untuk memverifikasi identitas Anda agar dapat mengakses layanan dan API Google Cloud. Untuk menjalankan kode atau sampel dari lingkungan pengembangan lokal, Anda dapat mengautentikasi ke Compute Engine sebagai berikut.

    Pilih tab untuk melihat bagaimana Anda berencana menggunakan contoh di halaman ini:

    Konsol

    Saat menggunakan Konsol Google Cloud untuk mengakses API dan layanan Google Cloud, Anda tidak perlu menyiapkan autentikasi.

    gcloud

    1. Instal Google Cloud CLI, lalu initialize dengan menjalankan perintah berikut:

      gcloud init
    2. Menetapkan region dan zona default.

    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 initialize dengan menjalankan perintah berikut:

      gcloud init

Pembatasan

Rekomendasi tersedia untuk grup instance terkelola yang berada dalam satu zona dan tidak melakukan penskalaan otomatis atau load balancing.

Harga

Rekomendasi jenis mesin tersedia tanpa biaya. Jika Anda menerapkan rekomendasi untuk mengubah ukuran jenis mesin instance, Anda akan dikenai biaya untuk jenis mesin yang dipilih.

Kasus penggunaan

Anda dapat memanfaatkan rekomendasi jenis mesin jika memiliki kondisi workload berikut:

  • Workload dengan peningkatan dan penurunan traffic berkala, seperti workload yang rentan terhadap traffic musiman.
  • Workload yang kurang dimanfaatkan dalam CPU dan RAM karena dibatasi oleh batasan lain, seperti throughput baca/tulis.
  • Workload yang menjalankan software yang memerlukan lisensi software individual dan yang tidak dapat menambahkan instance lainnya; dalam hal ini, Anda dapat mengandalkan rekomendasi jenis mesin untuk menskalakan jenis mesin Anda sambil menjaga jumlah instance VM tetap konstan.
  • Workload yang tidak dapat beradaptasi secara dinamis dengan jumlah instance yang terus berubah, misalnya workload yang tidak cocok untuk penskalaan otomatis.

Anda mungkin tidak ingin menggunakan rekomendasi jenis mesin karena salah satu alasan berikut:

  • Workload Anda mengalami lonjakan CPU yang sangat singkat. Karena rekomendasi jenis mesin didasarkan pada pemakaian CPU rata-rata selama interval 60 detik, rekomendasi mungkin tidak dibuat cukup cepat untuk menangkap lonjakan yang lebih singkat. Aplikasi dengan lonjakan penggunaan yang singkat mungkin perlu berjalan pada jenis mesin yang lebih besar dari yang direkomendasikan, atau Anda dapat mengaktifkan penskalaan otomatis untuk mengakomodasi lonjakan ini.
  • Lonjakan beban Anda terjadi lebih jarang dari sekali dalam 8 hari (misalnya, bulanan). Lonjakan yang jarang terjadi diabaikan oleh algoritma penyesuaian ukuran, yang hanya melihat histori selama 8 hari terakhir.
  • Setiap instance di MIG Anda menangani workload yang sangat berbeda. Dalam situasi seperti ini, rekomendasi akan dioptimalkan untuk instance VM dengan beban tertinggi, yang akan memperbesar sebagian besar instance VM dalam grup.
  • MIG Anda memiliki VM yang kurang dimanfaatkan karena tidak menayangkan beban live dan dimaksudkan untuk menyediakan kapasitas failover yang siap ditayangkan.
  • MIG Anda memiliki VM yang terlalu besar karena salah satu alasan berikut:
    • Pemberian lisensi software Anda memerlukan ukuran mesin minimum.
    • Anda harus memenuhi persyaratan IOPS penyimpanan atau jaringan yang hanya tersedia dengan jenis mesin minimum.

Cara kerja rekomendasi jenis mesin

Compute Engine memantau pemanfaatan CPU dan memori dari virtual machine yang sedang berjalan dan membuat rekomendasi menggunakan data selama 8 hari terakhir. Guna merekomendasikan jenis mesin tunggal terbaik untuk semua instance dalam grup instance terkelola, Compute Engine membuat rekomendasi jenis mesin standar untuk setiap instance dan, setelah melakukan penyesuaian untuk pencilan, memilih jenis mesin yang tidak mengurangi ukuran instance VM tunggal apa pun. Setiap instance yang tidak berjalan, seperti instance VM yang dihentikan atau dimulai ulang, tidak disertakan dalam penghitungan.

Compute Engine mungkin membuat rekomendasi yang mirip dengan berikut ini:

  • Jika penggunaan CPU grup Anda rendah, Compute Engine merekomendasikan jenis mesin dengan CPU virtual yang lebih sedikit.
  • Jika grup instance Anda paling sering menggunakan CPU yang tinggi, Compute Engine merekomendasikan jenis mesin dengan CPU virtual yang lebih banyak.
  • Jika grup instance Anda belum menggunakan sebagian besar memorinya, Compute Engine merekomendasikan jenis mesin dengan memori lebih sedikit.
  • Jika grup instance Anda sering kali menggunakan sebagian besar memorinya. Compute Engine merekomendasikan jenis mesin dengan lebih banyak memori.

Compute Engine dapat memberikan rekomendasi untuk menggunakan jenis mesin standar atau kustom. Perlu diperhatikan bahwa ada beberapa batasan dalam jumlah memori dan vCPU yang tersedia untuk mesin. Secara khusus, meningkatkan satu resource mungkin memerlukan peningkatan resource lainnya pada saat yang sama untuk mengikuti spesifikasi jenis mesin yang valid. Selain itu, Compute Engine hanya merekomendasikan jenis mesin yang tersedia di zona tempat instance berjalan.

Untuk mengetahui informasi selengkapnya, lihat Spesifikasi jenis mesin kustom.

Jika workload untuk grup instance terkelola sangat berbeda di setiap instance, beberapa instance mungkin terlalu besar sehingga instance yang sepenuhnya digunakan memiliki cukup resource sesuai dengan rekomendasi. Misalnya, Compute Engine mungkin membuat rekomendasi berikut untuk mendukung workload instance 4 meskipun instance 1, 2, 3, dan 5 mungkin terlalu besar dan kurang dimanfaatkan:

Rekomendasi yang dibuat untuk grup instance terkelola
Contoh oversizing karena workload yang berbeda di berbagai instance terkelola

Karena alasan ini, rekomendasi untuk grup instance terkelola berfungsi optimal jika instance memiliki workload yang didistribusikan secara wajar.

Untuk estimasi perbedaan biaya, biaya grup instance didasarkan pada penggunaan minggu sebelumnya (sebelum diskon penggunaan berkelanjutan) dan diekstrapolasi ke 30 hari. Biaya ini kemudian dibandingkan dengan biaya bulanan jenis mesin yang direkomendasikan (sebelum diskon untuk penggunaan berkelanjutan). Untuk harga dan detail yang akurat, baca dokumentasi harga.

Lihat rekomendasi jenis mesin

Compute Engine menyediakan rekomendasi melalui Konsol Google Cloud. Anda dapat melihat rekomendasi jenis mesin melalui Pemberi Rekomendasi menggunakan gcloud CLI atau Istirahat.

Konsol

  1. Di konsol Google Cloud, buka halaman Instance groups.

    Buka halaman Instance groups

  2. Pilih project Anda lalu klik Continue.
  3. Lihat kolom Rekomendasi untuk meninjau rekomendasi untuk setiap grup instance terkelola. Anda juga dapat mengurutkan kolom berdasarkan jumlah perkiraan penghematan. Jika tidak ada rekomendasi di samping grup instance, Compute Engine tidak memiliki rekomendasi untuk dibuat.

    Kolom Rekomendasi.

  4. Jika grup instance Anda memiliki dua template instance, Compute Engine akan memberikan rekomendasi untuk setiap template instance. Klik rekomendasi guna melihat rekomendasi untuk template instance masing-masing.

    Rekomendasi untuk beberapa template

gcloud

Gunakan perintah gcloud recommender recommendations list dan tentukan rekomendasi penyesuaian ukuran grup instance terkelola VM.

gcloud recommender recommendations list \
      --recommender=google.compute.instanceGroupManager.MachineTypeRecommender \
      --project [PROJECT_ID] \
      --location [ZONE] \
      --format=yaml

Contoh:

gcloud recommender recommendations list \
    --recommender=google.compute.instanceGroupManager.MachineTypeRecommender \
    --project my-project \
    --location us-central1-a \
    --format=yaml

Responsnya menyertakan kolom berikut untuk setiap rekomendasi:


---
content:
  ...
  operationGroups:
  - operations:
    - action: test
      path: /properties/machineType
      resource: //compute.googleapis.com/projects/my-project/global/instanceTemplates/my-old-template
      resourceType: compute.googleapis.com/InstanceTemplate
      value: n1-standard-4
    - action: copy
      path: /
      resource: //compute.googleapis.com/projects/my-project/global/instanceTemplates/$new-it-name
      resourceType: compute.googleapis.com/InstanceTemplate
      sourcePath: /
      sourceResource: //compute.googleapis.com/projects/my-project/global/instanceTemplates/my-old-template
    - action: replace
      path: /name
      resource: //compute.googleapis.com/projects/my-project/global/instanceTemplates/$new-it-name
      resourceType: compute.googleapis.com/InstanceTemplate
      value: $new-it-name
    - action: replace
      path: /properties/machineType
      resource: //compute.googleapis.com/projects/my-project/global/instanceTemplates/$new-it-name
      resourceType: compute.googleapis.com/InstanceTemplate
      value: custom-2-5632
  - operations:
    - action: replace
      path: /versions/*/name
      pathValueMatchers:
        versions/*/instanceTemplate:
          matchesPattern: .*global/instanceTemplates/my-old-template
      resource: //compute.googleapis.com/projects/my-project/zones/us-central1-a/instanceGroupManagers/example-group
      resourceType: compute.googleapis.com/InstanceGroupManager
      value: global/instanceTemplates/$new-it-name
...
description: Save cost by changing machine type from n1-standard-4 to custom-2-5120.
...
name: projects/823742397239/locations/us-central1-a/recommenders/google.compute.instanceGroupManager.MachineTypeRecommender/recommendations/c50a1c41-7e65-417d-a32e-45248a2cb318
...

Untuk informasi selengkapnya, lihat dokumen Pemberi rekomendasi.

REST

Gunakan Recommender API dengan ID pemberi rekomendasi jenis mesin MIG.

PROJECT_ID=my-project
LOCATION=us-central1-c
RECOMMENDER_ID=google.compute.instanceGroupManager.MachineTypeRecommender

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  https://recommender.googleapis.com/v1/projects/$PROJECT_ID/locations/$LOCATION/recommenders/$RECOMMENDER_ID/recommendations

Responsnya menyertakan kolom berikut untuk setiap rekomendasi:

  • name Nama rekomendasi
  • description Penjelasan rekomendasi yang dapat dibaca manusia.
  • operationGroups Grup operasi yang dapat Anda lakukan secara berurutan untuk menerapkan rekomendasi.

Untuk informasi selengkapnya, lihat dokumen Pemberi rekomendasi.

Saat Anda membuat grup instance terkelola baru, rekomendasi untuk grup baru akan muncul 24 jam setelah grup dibuat.

Setelah itu, rekomendasi akan diperbarui secara berkala sepanjang hari.

Terapkan rekomendasi ke grup instance

Jika ingin menerapkan rekomendasi yang dibuat oleh Compute Engine, Anda dapat mengubah ukuran instance terkelola langsung dari konsol. Atau, Anda dapat melakukan sendiri operasi pengubahan ukuran secara manual. Recommender API menampilkan serangkaian operasi pengubahan ukuran; lihat Grup operasi untuk mengetahui informasi selengkapnya.

Saat Anda menerapkan rekomendasi ke grup instance terkelola, Anda melakukan operasi berikut:

  1. Meng-clone template instance yang digunakan oleh grup instance terkelola.
  2. Memodifikasi template instance yang di-clone berdasarkan rekomendasi dan setiap perubahan yang ingin Anda buat.
  3. Menggunakan updater grup instance terkelola untuk menerapkan template baru. Jika grup instance memiliki dua template instance:

    1. Anda hanya dapat menerapkan rekomendasi untuk satu template instance dalam satu waktu.
    2. Grup instance terkelola dapat mempertahankan maksimal dua template instance sekaligus, sehingga Anda tidak dapat menerapkan rekomendasi sambil tetap mempertahankan dua template instance lainnya. Namun, Anda dapat menerapkan rekomendasi jika grup instance hanya memiliki satu template instance.

Untuk mengubah ukuran instance terkelola langsung dari konsol:

  1. Di konsol Google Cloud, buka halaman Instance groups.

    Buka halaman Instance groups

  2. Klik teks rekomendasi untuk grup instance yang ingin Anda perbarui.

    Memilih kolom rekomendasi.

  3. Pop-up akan muncul dengan detail selengkapnya dan pilihan untuk Cancel, Dismiss, atau Continue terkait rekomendasinya. Untuk meninjau dan menerapkan rekomendasi, klik Continue.

  4. Di halaman Review recommendation, rekomendasi dijelaskan secara mendetail. Jika Anda melanjutkan dengan rekomendasi, Compute Engine akan memperbarui semua instance dalam grup instance dengan template lama ke template baru.

  5. (Lanjutan) Untuk menyesuaikan cara template baru diluncurkan ke instance Anda, klik Customize deployment. Layar Konfigurasi deployment akan muncul.

    1. Jika Anda ingin secara aktif menghapus dan membuat instance menggunakan template instance baru, pilih Automatic. Jika Anda hanya ingin menerapkan update saat instance dibuat dengan cara lain, seperti mengubah ukuran atau saat instance baru ditambahkan ke grup, pilih Selective.
    2. Jika Anda memilih update otomatis, pilih apakah Anda ingin Mempertahankan nama instance saat mengganti instance.
      • Jika Anda memilih untuk mempertahankan nama instance, di bagian Temporary additional instances, pilih berapa banyak instance tambahan sementara yang akan dibuat di atas ukuran target grup instance terkelola. Makin banyak instance yang Anda izinkan, makin cepat update yang akan ditanggung oleh instance tambahan. Defaultnya adalah 1 instance tambahan.
    3. Di bagian Maximum unavailable instances, pilih berapa banyak instance yang dapat offline pada satu waktu selama update ini berlangsung. Jumlah ini juga mencakup instance yang tidak tersedia karena alasan lain. Misalnya, jika grup instance sedang dalam proses pengubahan ukuran, instance yang sedang dibuat mungkin tidak tersedia; kejadian ini akan diperhitungkan dalam jumlah ini. Defaultnya adalah 1 instance yang tidak tersedia pada satu waktu.
    4. Opsional: Luaskan Show advanced options. Di bagian Minimum wait time, pilih jumlah detik untuk menunggu sebelum menandai instance baru sebagai diperbarui. Waktu dimulai setelah health check berhasil. Gunakan fitur ini untuk mengontrol kecepatan penerapan template instance.
  6. Untuk menerapkan perubahan, klik Save.

  7. Jika Anda sudah siap untuk men-deploy perubahan, klik Deploy.

Menolak Rekomendasi

Setelah selesai menggunakan rekomendasi, Anda dapat menutupnya dari konsol. Dalam konsol, menolak akan menghapus rekomendasi dari perkiraan total penghematan dan juga meminimalkan tampilan rekomendasi dengan mengubahnya menjadi abu-abu.

Menolak rekomendasi melalui konsol tidak akan memengaruhi daftar rekomendasi yang ditampilkan oleh Recommender API. Untuk mengelola status rekomendasi yang ditampilkan oleh Recommender API, lihat Menggunakan API.

Untuk menolak satu rekomendasi dari konsol:

  1. Di konsol Google Cloud, buka halaman Instance groups.

    Buka halaman Instance groups

  2. Klik teks rekomendasi yang ingin Anda tolak. Pop-up akan muncul dengan detail selengkapnya dan tombol Dismiss.

  3. Klik Dismiss.

Untuk memulihkan rekomendasi di konsol:

  1. Di halaman Instance groups, klik teks rekomendasi berwarna abu-abu yang ingin Anda pulihkan.

    Rekomendasi ditolak.

  2. Pop-up akan muncul dengan detail selengkapnya dan tombol Restore.

  3. Klik Pulihkan.

Gunakan agen pemantauan untuk mendapatkan rekomendasi yang lebih tepat

Cloud Monitoring menawarkan agen pemantauan yang mengumpulkan metrik disk, CPU, jaringan, dan proses tambahan dari instance VM Anda. Anda dapat menginstal agen pemantauan pada instance VM agar dapat mengakses resource sistem dan layanan aplikasi untuk mengumpulkan data ini.

Jika agen Monitoring diinstal dan berjalan di instance VM, metrik CPU dan memori yang dikumpulkan oleh agen tersebut akan otomatis digunakan untuk menghitung rekomendasi jenis mesin. Metrik agen yang disediakan oleh agen Monitoring memberikan insight yang lebih baik tentang penggunaan resource instance daripada metrik Compute Engine default. Dengan demikian, mesin pemberi saran dapat memperkirakan persyaratan resource dengan lebih baik dan membuat rekomendasi yang lebih akurat.

Untuk menginstal agen, lihat bagian Menginstal agen Cloud Monitoring.

Langkah berikutnya