Memecahkan masalah pemakaian pemesanan


Halaman ini menunjukkan cara menyelesaikan masalah terkait penggunaan reservasi resource zona Compute Engine.

Kesulitan melacak pemakaian pemesanan

Masalah: Meskipun Anda dapat melihat detail pemesanan atau memantau pemakaian pemesanan untuk melihat berapa banyak VM yang dipesan yang digunakan dan memantau perubahan jumlah ini dari waktu ke waktu, Anda tidak dapat langsung melihat VM mana yang memakai pemesanan.

Penyelesaian: Jika Anda berhasil membuat VM yang menargetkan pemesanan tertentu, VM akan memakai pemesanan yang ditentukan dalam properti afinitas (reservationAffinity) dari VM. Jika tidak, pembuatan VM akan gagal karena properti tidak cocok atau resource yang dipesan tidak tersedia.

Anda juga dapat membuat VM yang menargetkan pemesanan tertentu untuk menguji apakah VM telah dikonfigurasi dengan benar untuk otomatis memakai pemesanan yang cocok, lalu membuat VM yang akan memakai pemesanan yang cocok.

Masalah untuk VM yang tidak memakai pemesanan

Jika VM tidak dapat memakai pemesanan, mungkin karena satu atau beberapa masalah berikut:

  • Properti VM tidak cocok dengan properti pemesanan.
  • Afinitas pemesanan VM salah.
  • Pemesanan telah digunakan sepenuhnya oleh VM lain yang cocok.
  • Kuota untuk resource terlampaui

Bagian ini menjelaskan cara mengidentifikasi setiap masalah tersebut, cara mengatasinya, dan cara memverifikasi pemakaian pemesanan.

Properti VM tidak sesuai

Masalah: VM tidak dapat memakai pemesanan dengan properti VM yang berbeda.

Untuk mengidentifikasi masalah ini, pilih salah satu metode berikut:

  • Lihat detail pemesanan dan VM, serta verifikasi secara manual bahwa properti VM-nya cocok:

    1. Lihat detail pemesanan yang Anda inginkan untuk dipakai oleh VM menggunakan perintah gcloud compute reservations describe:

      gcloud compute reservations describe RESERVATION_NAME --zone=ZONE
      

      Ganti kode berikut:

      • RESERVATION_NAME adalah nama pemesanan.
      • ZONE adalah zona tempat pemesanan berada.

      Pertahankan output ini.

    2. Lihat detail VM yang ingin Anda pakai dengan perintah gcloud compute instances describe pemesanan.

      gcloud compute instances describe VM_NAME
      

      dengan VM_NAME adalah nama VM.

      Pertahankan output ini.

    3. Dengan menggunakan output deskripsi VM dan deskripsi pemesanan, pastikan properti berikut cocok:

      • project
        • Jika pemesanan dibagikan ke beberapa project (jika pemesanan memiliki properti shareType yang ditetapkan ke SPECIFIC_PROJECTS), project VM dapat cocok dengan project tempat pemesanan berada atau cocok dengan project mana pun yang tercantum di bagian shareSettings.
      • zone
      • machineType
      • guestAccelerators.acceleratorType
      • guestAccelerators.acceleratorCount
      • minCpuPlatform
        • VM dan pemesanan Anda harus memiliki konfigurasi minCpuPlatform yang sama persis. Jika Anda menentukan nilai minCpuPlatform untuk salah satu properti, keduanya harus memiliki nilai yang sama untuk properti tersebut. Jika tidak, pemesanan dan VM harus menghapus properti. Misalnya, menetapkan minCpuPlatform ke "Intel Broadwell" saat membuat VM tidak akan cocok dengan nilai minCpuPlatform dari "Automatic" dalam pemesanan.
      • localSsds.interface
        • Pemesanan dan VM harus memiliki jumlah SSD lokal yang sama dengan properti localSsds.interface yang cocok untuk setiap SSD lokal.
      • resourcePolicies*

      *Hanya jika pemesanan menentukan kebijakan penempatan rapat.

  • Buat VM yang menargetkan pemesanan tertentu, yang menampilkan error jika properti tidak cocok. Untuk mendapatkan petunjuk, lihat Memverifikasi pemakaian pemesanan.

Penyelesaian: Perbarui properti VM yang tidak cocok dengan melakukan salah satu langkah berikut:

Untuk memeriksa apakah VM kini memakai pemesanan, lihat Memverifikasi pemakaian pemesanan.

Jika properti VM dan pemesanan cocok, tetapi VM tidak menggunakan pemesanan, lanjutkan ke bagian berikutnya.

VM melewatkan kebijakan penempatan

Masalah: VM mencoba memakai pemesanan tanpa menentukan kebijakan penempatan rapat pemesanan.

Penyelesaian: Jika pemesanan satu project menentukan kebijakan penempatan rapat, VM harus sama persis dengan kebijakan penempatan rapat yang sama untuk memakai pemesanan. Jika tidak, VM tidak dapat memakai pemesanan.

Untuk memastikan bahwa VM memakai pemesanan yang menentukan kebijakan penempatan rapat, coba salah satu hal berikut:

VM menentukan kebijakan penempatan rapat yang berbeda

Masalah: VM mencoba memakai pemesanan, tetapi kebijakan penempatan rapat yang ditentukan di VM dan di pemesanan tidak cocok.

Penyelesaian: Jika pemesanan satu project menentukan kebijakan penempatan rapat, VM harus sama persis dengan kebijakan penempatan rapat yang sama untuk memakai pemesanan. Jika tidak, VM tidak dapat memakai pemesanan.

Untuk mengatasi masalah ini, coba salah satu langkah berikut:

  • Jika Anda membuat pemesanan satu project dengan menentukan properti secara langsung, terapkan kebijakan penempatan rapat pemesanan saat membuat VM baru.

  • Jika Anda membuat pemesanan satu project dengan menentukan template instance, gunakan template yang sama untuk membuat VM. Tindakan ini akan otomatis menerapkan kebijakan penempatan rapat yang sama seperti yang ditentukan dalam pemesanan untuk setiap VM baru yang Anda buat.

Afinitas pemesanan VM salah

Masalah: Afinitas pemesanan VM salah dikonfigurasi. Afinitas pemesanan VM mengontrol pemesanan yang dapat dipakai VM. Untuk memeriksa afinitas pemesanan VM Anda, lakukan hal berikut:

  1. Lihat detail pemesanan yang Anda inginkan untuk dipakai VM dengan perintah gcloud compute reservations describe.

      gcloud compute reservations describe RESERVATION_NAME --zone=ZONE

    Ganti kode berikut:

    • RESERVATION_NAME adalah nama pemesanan.
    • ZONE adalah zona tempat pemesanan berada.

    Pada output, temukan nilai kolom specificReservationRequired, true atau false.

  2. Lihat detail VM menggunakan perintah gcloud compute instances describe.

       gcloud compute instances describe VM_NAME

    dengan VM_NAME adalah nama VM.

    Dalam output, temukan kolom reservationAffinity, yang terlihat mirip dengan berikut ini:

    ...
       reservationAffinity:
         consumeReservationType: RESERVATION_AFFINITY
         key: compute.googleapis.com/reservation-name
         values:
         - RESERVATION_NAME
       ...

Penyelesaian: Perbarui properti reservationAffinity VM agar kompatibel dengan kolom specificReservationRequired pemesanan menggunakan salah satu konfigurasi yang diterima berikut ini:

  1. Jika kolom specificReservationRequired pemesanan adalah true, properti reservationAffinity VM harus cocok dengan hal berikut:

    ...
      reservationAffinity:
        consumeReservationType: SPECIFIC_RESERVATION
        key: compute.googleapis.com/reservation-name
        values:
        - RESERVATION_NAME
      ...

    dengan RESERVATION_NAME sebagai nama reservasi.

  2. Jika kolom specificReservationRequired pemesanan adalah false, properti reservationAffinity VM harus cocok dengan hal berikut:

    ...
      reservationAffinity:
        consumeReservationType: ANY_RESERVATION
      ...

Anda harus memulai ulang VM untuk melakukan update. Setelah update, untuk memeriksa apakah VM memakai pemesanan, lihat Memverifikasi pemakaian pemesanan.

Jika afinitas pemesanan VM dikonfigurasi dengan benar tetapi VM tidak memakai pemesanan apa pun, lanjutkan ke bagian berikutnya.

Pemesanan telah dipakai sepenuhnya

Masalah: Jumlah VM yang saat ini digunakan untuk pemesanan ini cocok dengan jumlah total VM yang dipesan dalam pemesanan.

Untuk mengidentifikasi masalah ini, lihat detail reservasi dan verifikasi bahwa jumlah VM yang digunakan untuk reservasi ini kurang dari jumlah total VM yang dicadangkan oleh reservasi.

Penyelesaian: Anda dapat meningkatkan jumlah VM yang tersedia untuk dipakai untuk pemesanan dengan melakukan salah satu tindakan berikut:

Untuk memeriksa apakah VM kini memakai pemesanan, lihat Memverifikasi pemakaian pemesanan.

Jika pemesanan tidak dipakai sepenuhnya, tetapi VM tidak memakai pemesanan, Anda dapat memecahkan masalah lebih lanjut dengan membuat VM yang menargetkan pemesanan tertentu, yang menampilkan error jika pemakaian gagal. Untuk mengetahui informasi selengkapnya, lanjutkan ke bagian berikutnya.

Jumlah VM tidak dipulihkan setelah menghentikan atau menghapus VM

Masalah: Jika Anda menghentikan, menangguhkan, atau menghapus VM yang menggunakan reservasi, operasi harus selesai sebelum VM tidak lagi diperhitungkan dalam reservasi, dan resource yang digunakan sebelumnya akan tersedia kembali untuk digunakan.

Resolusi: Tunggu beberapa menit sampai operasi penghentian, penangguhan, atau penghapusan pada VM selesai. Kemudian, untuk memastikan bahwa VM yang dihentikan, ditangguhkan, atau dihapus tidak lagi diperhitungkan dalam reservasi, periksa jumlah total VM yang digunakan dalam reservasi dengan menggunakan salah satu metode berikut:

  • Direkomendasikan: Pantau reservasi dan cari perubahan pada pengukuran reservasi.

  • Lihat detail reservasi dan periksa apakah nilai kolom inUseCount menurun. Jika nilainya tidak menurun, satu atau beberapa VM mulai menggunakan reservasi saat operasi penghentian, penangguhan, atau penghapusan selesai.

VM secara tidak sengaja memakai pemesanan

Masalah: Saat Anda membuat pemesanan yang dipakai secara otomatis (default), VM mungkin memakai pemesanan ini secara tidak sengaja.

Penyelesaian: Anda dapat membantu mengontrol VM yang memakai pemesanan dengan melakukan hal berikut:

Kuota sumber daya terlampaui

Masalah: Reservasi bersama tidak digunakan karena kuota telah terlampaui untuk resource tertentu.

Reservasi bersama memiliki persyaratan tambahan terkait kuota. Project pemilik harus memiliki kuota yang cukup untuk dua kali resource yang dicadangkan agar project konsumen dapat menggunakan resource yang dicadangkan.

Penyelesaian: Meminta kuota tambahan untuk resource yang akan digunakan.