Mengelola siklus proses instance VM

Instance VM dapat bertransisi melalui banyak status selama siklus prosesnya. Saat Anda membuat VM, perangkat air gap Google Distributed Cloud (GDC) akan menyediakan resource untuk memulai VM. Selanjutnya, VM beralih ke status mulai, di mana VM bersiap untuk booting pertama. Selama dan setelah proses memulai, VM dianggap berjalan. Selama masa aktifnya, VM yang berjalan dapat dihentikan dan dimulai ulang, atau ditangguhkan dan dilanjutkan berulang kali.

Definisi status VM

Negara bagian/Provinsi Definisi
Pending VM diterima oleh sistem dan menunggu alokasi.
Provisioning Resource yang terkait dengan VM, seperti VirtualMachineDisk, sedang disediakan dan disiapkan.
Starting VM sedang disiapkan untuk dijalankan.
Running VM sedang berjalan.
Stopping VM sedang dalam proses berhenti.
Stopped VM dihentikan dan tidak diharapkan untuk dimulai.
Paused VM dijeda dan dalam status dibekukan, yang dipertahankan. VM tidak dapat diakses.
Terminating VM dan resource terkaitnya sedang menjalani proses penghapusan.
ErrorConfiguration VM mengalami error konfigurasi. Status konfigurasi yang tidak valid dapat disebabkan oleh hal berikut:
MachineTypeNotFound - Jenis VM yang dirujuk VM tidak ditemukan atau sedang dihapus.
MachineDiskMisconfig - Disk VM salah dikonfigurasi.
InterfaceCreationFailed - Pembuatan antarmuka jaringan gagal.
CrashLoopBackOff VM saat ini berada dalam loop error dan sedang menunggu untuk dicoba lagi.
PendingIPAllocation VM sedang menunggu sistem menetapkan alamat IP untuknya.
Unknown Status VM tidak dapat diperoleh, biasanya karena error dalam berkomunikasi dengan host tempat VM berjalan.
ErrorUnschedulable Terjadi error saat menjadwalkan VM, misalnya, karena permintaan resource atau batasan penjadwalan yang tidak dapat dipenuhi atau didukung.
DiskError VM mengalami error pada satu atau beberapa disk terpasang.
WaitingForDisk VM sedang menunggu satu atau beberapa VirtualMachineDisk terlampir siap.
CrashLoopBackoff VM terus mengalami error karena beberapa alasan.

Sebelum memulai

Untuk menggunakan perintah antarmuka command line (CLI) gdcloud, pastikan Anda telah mendownload, menginstal, dan mengonfigurasi CLI gdcloud. Semua perintah untuk appliance air-gapped GDC menggunakan CLI gdcloud atau kubectl, dan memerlukan lingkungan sistem operasi (OS).

Mendapatkan jalur file kubeconfig

Untuk menjalankan perintah terhadap server Management API, pastikan Anda memiliki resource berikut:

  1. Temukan nama server Management API, atau tanyakan kepada Administrator Platform (PA) Anda nama servernya.

  2. Login dan buat file kubeconfig untuk server Management API jika Anda belum memilikinya.

  3. Gunakan jalur untuk menggantikan MANAGEMENT_API_SERVER{"</var>"}} dalam petunjuk ini.

Meminta izin dan akses

Untuk melakukan tugas yang tercantum di halaman ini, Anda harus memiliki peran Project VirtualMachine Admin. Ikuti langkah-langkah untuk memverifikasi atau meminta Admin IAM Project memberi Anda peran Project VirtualMachine Admin (project-vm-admin) di namespace project tempat VM berada.

Untuk operasi VM menggunakan konsol GDC atau gdcloud CLI, minta Admin IAM Project Anda untuk memberi Anda peran Project VirtualMachine Admin dan peran Project Viewer (project-viewer).

Memeriksa status VM

Setiap VM melaporkan statusnya sebagai bagian dari properti VM. Periksa status VM karena salah satu alasan berikut:

  • Jika ada masalah dengan VM.
  • Untuk mengonfirmasi bahwa VM berjalan setelah dimulai.
  • Untuk memverifikasi bahwa VM berada dalam status Paused atau Stopped.

Mencantumkan VM untuk memeriksa status

Prosedur berikut menunjukkan cara membuat daftar VM, melihat statusnya, dan mendapatkan informasi status tambahan.

  1. Mencantumkan semua VM dan melihat status masing-masing:

    kubectl --kubeconfig MANAGEMENT_API_SERVER \
        get virtualmachines.virtualmachine.gdc.goog -n PROJECT
    

    Ganti variabel dalam contoh kode dengan nilai Anda sendiri sesuai dengan tabel berikut.

    VariabelDefinisi
    MANAGEMENT_API_SERVER File kubeconfig server Management API.
    PROJECT Project GDC tempat VM berada.

    Contoh output:

    NAME          STATUS                    AGE
    vm-1          Running                    1d
    vm-2          Stopped                    8d
    vm-3          ErrorConfiguration         1d
    
  2. Mendapatkan detail tambahan tentang status VM tertentu:

    kubectl  --kubeconfig MANAGEMENT_API_SERVER \
        get virtualmachines.virtualmachine.gdc.goog VM_NAME -n PROJECT -o \
        jsonpath='{"State:"}{.status.state}{"\n"}{"Reason:"}{.status.reason}{"\n"}{"Message:"}{.status.message}{"\n"}'
    

    Ganti kode berikut:

    • MANAGEMENT_API_SERVER dengan file kubeconfig untuk server Management API yang Anda peroleh dari perintah gdcloud auth login.
    • VM_NAME dengan nama VM baru.
    • PROJECT dengan project GDC tempat VM berada.

    Contoh output yang menampilkan nilai Reason dan Message:

    State: ErrorConfiguration
    Reason: MachineDiskNotFound
    Message: VirtualMachineDisk disk-1 in namespace project-1 does not exist.
    

    Anda juga mungkin mendapatkan kolom kosong untuk Reason dan Message. Hal ini menunjukkan bahwa tidak ada yang dapat dilaporkan oleh sistem terkait pengguna tersebut.

    Contoh output dengan Reason dan Message kosong:

    State: Running
    Reason:
    Message:
    

Menghentikan atau memulai ulang VM

Selama siklus proses VM, Anda mungkin perlu menghentikan dan memulai ulang VM, atau menghapus VM untuk merespons perubahan status atau mengelola VM secara umum. Lihat halaman ini untuk menghentikan, mereset, atau menghapus VM: