Anda dapat menghentikan, memulai, dan memulai ulang VM untuk mendukung siklus proses aplikasi Anda. Misalnya, Anda mungkin ingin mengubah jumlah unit pemrosesan terpusat virtual (vCPU) yang ditetapkan atau jumlah memori yang dialokasikan ke VM. Anda harus menghentikan VM sebelum mengedit konfigurasi. Setelah selesai, Anda harus mengubah status daya untuk menerapkan perubahan. Halaman ini memberikan petunjuk untuk menghentikan, memulai, dan memulai ulang VM Anda dalam proses tersebut.
Sebelum memulai
Untuk menggunakan perintah antarmuka command line (CLI) gdcloud
, pastikan Anda telah mendownload, menginstal,
dan mengonfigurasi CLI gdcloud
.
Semua perintah untuk Distributed Cloud 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:
Login dan buat file kubeconfig untuk server Management API jika Anda belum memilikinya.
Gunakan jalur ke file kubeconfig server Management API untuk menggantikan
MANAGEMENT_API_SERVER
dalam petunjuk ini.
Jika Anda ingin meminimalkan waktu mulai VM, ikuti petunjuk di bagian Meminimalkan waktu mulai VM sebelum Anda memulai VM.
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
).
Menghentikan VM
Saat Anda menghentikan virtual machine (VM), hypervisor akan membatalkan alokasi semua resource yang terkait dengan instance. VM dimatikan.
Hentikan VM yang dalam status berjalan menggunakan konsol GDC atau kubectl
.
Konsol
Di menu navigasi, klik Virtual Machines > Instances.
Dalam daftar VM, centang kotak untuk VM yang sedang berjalan yang ingin Anda hentikan.
Klik Stop.
Pada dialog konfirmasi, klik Berhenti.
gdcloud
Untuk menghentikan VM:
gdcloud compute instances stop VM_NAME --project PROJECT
- Ganti
VM_NAME
dengan nama VM. - Ganti
PROJECT
dengan nama project GDC tempat VM berada.
kubectl
Jalankan perintah berikut:
kubectl --kubeconfig MANAGEMENT_API_SERVER_KUBECONFIG \ edit virtualmachines.virtualmachine.gdc.goog VM_NAME \ -n PROJECT
Cari kolom
runningState
dispec
VM dan ubah nilai kolom menjadiStopped
. JikarunningState
tidak ada dispec
, tambahkanrunningState
kespec
dan tetapkan nilai keStopped
.spec: runningState: Stopped
Verifikasi status VM:
kubectl --kubeconfig MANAGEMENT_API_SERVER_KUBECONFIG \ get virtualmachines.virtualmachine.gdc.goog VM_NAME \ -n PROJECT
Gunakan definisi ini untuk variabel sebelumnya.
Variabel Definisi MANAGEMENT_API_SERVER_KUBECONFIG
File kubeconfig server Management API. VM_NAME
Nama VM. PROJECT
Nama project VM.
Mulai VM
Mulai VM dari status dihentikan menggunakan konsol atau kubectl
.
Konsol
Di menu navigasi, klik Virtual Machines > Instances.
Dalam daftar VM, centang kotak untuk VM yang dihentikan yang ingin Anda mulai.
Klik Mulai.
Pada dialog konfirmasi, klik Mulai.
gdcloud
Untuk memulai VM:
gdcloud compute instances start VM_NAME --project PROJECT
- Ganti
VM_NAME
dengan nama VM. - Ganti
PROJECT
dengan nama project GDC tempat VM berada.
kubectl
Jalankan perintah berikut:
kubectl --kubeconfig MANAGEMENT_API_SERVER_KUBECONFIG \ edit virtualmachines.virtualmachine.gdc.goog VM_NAME \ -n PROJECT
Cari kolom
runningState
dispec
VM dan ubah nilai kolom menjadiRunning
.spec: runningState: Running
Verifikasi status VM:
kubectl --kubeconfig MANAGEMENT_API_SERVER_KUBECONFIG \ get virtualmachines.virtualmachine.gdc.goog VM_NAME \ -n PROJECT
Gunakan definisi ini untuk variabel dalam kode contoh.
Variabel Definisi MANAGEMENT_API_SERVER_KUBECONFIG
File kubeconfig server Management API. MANAGEMENT_API_SERVER_NAME
Nama server Management API. NAMESPACE
Namespace VM. VM_NAME
Nama VM. PROJECT
Nama project VM.
Memulai ulang VM
Saat Anda memulai ulang VM, mesin akan direset ke status awalnya dan isi memori mesin akan dihapus.
Mulai ulang VM yang dalam status berjalan menggunakan konsol atau kubectl
.
Konsol
Di menu navigasi, klik Virtual Machines > Instances.
Dalam daftar VM, centang kotak untuk VM yang sedang berjalan yang ingin Anda mulai ulang.
Klik Reset.
Pada dialog konfirmasi, klik Reset.
gdcloud
Untuk mereset VM:
gdcloud compute instances reset VM_NAME --project PROJECT
- Ganti
VM_NAME
dengan nama VM. - Ganti
PROJECT
dengan nama project GDC tempat VM berada.
kubectl
Dapatkan data sertifikat dan kunci klien, serta server Management API. Gunakan nilai ini dalam langkah-langkah berikut:
kubectl --kubeconfig MANAGEMENT_API_SERVER_KUBECONFIG config view --raw -o \ jsonpath='{.users[?(@.name =="MANAGEMENT_API_SERVER_NAME-admin")].user.client-certificate-data}' | \ base64 -d > cert kubectl --kubeconfig MANAGEMENT_API_SERVER_KUBECONFIG config view --raw -o \ jsonpath='{.users[?(@.name == "MANAGEMENT_API_SERVER_NAME-admin")].user.client-key-data}' | \ base64 -d > key export APISERVER=`kubectl --kubeconfig MANAGEMENT_API_SERVER_KUBECONFIG \ config view --raw -o \ jsonpath='{.clusters[?(@.name == "MANAGEMENT_API_SERVER_NAME")].cluster.server}'`
Buat permintaan API untuk memulai ulang VM menggunakan perintah
wget
dan tentukan sertifikat dan kunci dari langkah sebelumnya:wget --method=PUT -O- --no-check-certificate --certificate cert --private-key key --content-on-error=on $APISERVER/apis/virtualmachineoperations.gdc.goog/v1/namespaces/PROJECT/virtualmachines/VM_NAME/restart
Verifikasi status VM:
kubectl --kubeconfig MANAGEMENT_API_SERVER_KUBECONFIG \ get virtualmachines.virtualmachine.gdc.goog VM_NAME -n PROJECT
Gunakan definisi ini untuk variabel dalam kode contoh.
Variabel Definisi MANAGEMENT_API_SERVER_KUBECONFIG
File kubeconfig server Management API. MANAGEMENT_API_SERVER_NAME
Nama server Management API. NAMESPACE
Namespace VM. VM_NAME
Nama VM. PROJECT
Nama project VM.